効果的なセキュリティプログラムとチームは、事後的な対策を提供するだけでなく、「先制的な」ソフトウェアセキュリティを構築するために、社内の情報チームと積極的に協力する必要があります。情報システムとソフトウェアコードに対する効果的なセキュリティプログラムは、多くの場合、静的セキュリティスキャニングテストと動的セキュリティスキャニングテストという2種類の自動化されたセキュリティテストに依存しています。
静的スキャンは、一般に、コードの開発中に実行されます。このプロセスは、脅威モデリングと分析の助けを借りて、静的なコードをスキャンし、セキュリティの脆弱性を見つけます。動的スキャンは、動作環境における実際のコードのスキャンで、コードが動作している間に脆弱性を探します。また、第3のタイプのテストとして、主にホワイトハット分析によって、人間が介入する手動侵入テストがあります。本当に効果的なアプリケーションセキュリティプログラムは、すべてのセキュリティスキャニングテストを活用します。
効果的な自動コードスキャン戦略は、IT 開発チームとシームレスに連携する必要があります。真に効果的な自動セキュリティプログラムにとって重要な成功要因は、IT開発チームに要求される追加作業が最小限であることです。アプリケーションの開発サイクル外でのコードスキャンは、開発時間を奪い、歓迎されない追加作業とみなされます。
企業が安全なコード・スキャン・プログラムをうまく利用する際に直面する主な障害は次のとおりです:
ハンドスキャン
APIやウェブポータルを通じてコードを手動でアップロードする必要があるコードスキャンには、追加の開発時間と労力が必要です。スキャンを実行するために、特別なコンパイル手順や特定のソフトウェアバージョンが必要になることもあります。
手操作
開発サイクル外でのコードスキャンには、スキャンのスケジュールと再スキャンの期間を設定する必要があります。組織には、プロジェクトを管理し、リマインダーを設定し、設定された期日までにスキャンを完了するための専用リソースが必要です。
コード範囲
誰も知らないことをテストすることはできません。開発サイクルの外でテストするには、開発者がコードをアップロードする必要があり、静的コード・スキャンのために開発者が正しいコードをアップロードすることに依存します。すべてのライブラリとコードが正しくアップロードできることを検証することは、プログラムのセキュリティを維持するチームにとって不可能に近い作業です。
真に効果的なアプリケーションの静的コード・スキャンと動的コード・スキャンのプロジェクトには、4つの主要な要素があります:
1.ローカルスキャン
ソース・コントロール・システムにリンクされたローカル・スキャン・プロジェクトでは、開発者が時間をかけてコードを探し、特別にコンパイルし、アップロードする必要はなくなりました。それどころか、ソース・コントロール・ツリーでコードの正しい場所が選択され、すべてのサブファイルに対してルーチン・スキャンを実行することができます。また、ローカルのダイナミック・スキャン・ソリューションでは、テスト・ベンダーの外部ツールをスキャンしてテスト・サイトにアクセスするためのファイアウォール・ルールをセキュリティ専門家が変更する必要がないため、ダイナミック・スキャンが容易になります。
2.連続スキャン
ローカルシステムは、人の介入やコードのアップロードを必要としない継続的なスキャンを実行するように構成できます。ローカルシステムは、より頻繁にスキャンを実行するように構成することもできます。
3.開発サイクルとの緊密な統合
ソース管理システムや構築システムと高度に統合されたスキャニング・プロジェクトでは、コード・スキャニングが多くのソース管理システムや構築システムの機能をフルに活用することができます。例えば、開発者バージョンのプログラムがメインのコードベースに統合されている場合、上級開発チームは、特定のテストポータルを通過するように構築システムを設定することができます。コードに対するセキュリティスキャンテストは、性能テストや単体テストと同様に、テストエントリポイントとして機能するように設定することができます。
4.欠陥追跡システムとの緊密な統合
最新のソース管理および構築システムは、欠陥追跡システムとも緊密に統合されている必要があります。コードスキャニングプロジェクトが、現在の欠陥管理システムの欠陥を自動的に作成することができれば、それを保存し、チームの欠陥リポジトリにシームレスに統合することができます。
効果的な事前予防的セキュリティには、コードスキャンがアプリケーション開発プロセスにできるだけスムーズに影響することが必要です。セキュリティスキャニングが実行時の現在の開発プロセスに似ていればいるほど、開発チームが継続的にセキュリ ティスキャニングを導入することが容易になります。





