スタンダード版 | エンタープライズ版 | |
---|---|---|
コード互換性アナライザ | ○ | ○ |
セキュリティコードアナライザ | × | ○ |
ColdFusionにはプログラムコードを分析する2つの機能があります。一つは「コード互換性アナライザ」。これは、以前のバージョンの ColdFusion から新しいバージョンの ColdFusion に移行する際、指定されたCFMLページを調べて重大な互換性の問題があればそれを報告します。例えばColdFusionのバージョンが上がり、新たに追加された関数と同じ名前の独自関数を作っていた場合、あるいは、新しいバージョンでは非推奨になった CFタグや関数、属性などを使っていた場合など、コードレベルで互換性に問題が起こりそうな項目をレポートします。
このウィザードで出力されるレポートは、プログラムコードのシンタックスレベルでのチェックとしては有用ですが、コードに潜むセキュリティリスクには対応することができません。特に、以前のバージョンから移行するプログラムの場合は、近年のセキュリティ脅威に対する備えが不足しているものなどがあります。また、新規に追加するプログラムコードであっても、社内開発したもの、外部委託したもの、コミュニティやフォーラムで配布されたもの(ユーザー定義関数やカスタムタグ、他)などさまざまです。いずれの場合も、Webアプリケーションの安全性を確保するための効果的なアプローチが必要ですが、これまではweb開発の熟練者による知識と経験に頼らざるを得ない部分となり、セキュリティに対する認識が薄い開発者によって運用中に深刻なセキュリティ問題を発生させる可能性もゼロではありませんでした。
ColdFusion 2023 エンタープライズ版では「セキュリティコードアナライザ」が使用可能です。このアナライザは ColdFusion Builder(vscode)やColdFusion Builder 2018などと統合され、ColdFusion 2023エンタープライズ版と接続する事により、ファイルに潜むセキュリティのチェックを行うことができます。開発者はColdFusionのプログラムコードを記述しながら、セキュリティの落とし穴および脆弱性を回避することができます。
検出可能なセキュリティ問題は、SQLインジェクションやXSS、CSRFやCFLocation, Cookiesを利用した検証、ファイルアップロード検証やパスのインジェクション、GetとPostなど、Webアプリケーションで発生する主要な問題に対して、コードレベルでチェックを行います。セキュリティコードアナライザを実行すると、該当のファイルやフォルダをチェックし、セキュリティの懸念が生じるコードに関して攻撃タイプや厳格度、回避の提案を含んだ警告を一覧で戻します。
さらに、セキュリティコードアナライザの実行結果のレポートを出力する機能も用意されています。定期的にレポートを出力し、以前のバージョンからの移行時のみならず、追加・修正されていくプログラムコードのチェックを定期的に行い、セキュリティ問題に対する備えを強化することができます。