セキュアコーディング
セキュアコードチェック:静的解析
dotTESTでは、『フロー解析』と『コーディング規約チェック』の機能を使って、OWASP (Open Web Application Security Project)やPCI DSS(Payment Card Industry Data Security Standard)に掲載されている脆弱性を有するソースコードを検出します。また、Parasoft社が推奨する脆弱性チェックルールセットも搭載されています。
※ セキュリティコンプライアンスルールによる静的解析には「セキュリティコンプライアンスパック」のライセンス(有償)が必要です。
dotTESTがチェックするセキュリティ上の脆弱性
- OWASP Top 10(Open Web Application Security Project)ルールセット
安全なWebアプリケーションを実現するためにさまざまな情報を提供しているOWASP(Open Web Security Project)が発表した脆弱性トップ 10(https://owasp.org/www-project-top-ten/)をチェックするためのルールセットです。 OWASP Top 10ルールセットには、以下のような脆弱性を検出するルールが含まれています。
- クロス サイト スクリプティング (XSS)
- インジェクションの欠陥
- 悪意のあるファイルの実行
- 安全ではないアルゴリズムを暗号化に使用しない
- 情報の漏洩と不適切なエラー処理
- URLアクセスの制限の不備
- PCI DSS(Payment Card Industry Data Security Standard)ルールセット
PCI DSS(https://www.pcisecuritystandards.org/) は、クレジットカードデータを処理する上で確保されるべきセキュリティ要件に関する基準です。dotTESTでは、PCI DSSのセクション6に記載された要件を推進するルールを提供します。
- Security Assessment ルールセット
広範なセキュリティ攻撃に対するコードの脆弱性を査定するため、Parasoft社がdotTESTのコーディングルールやフロー解析ルールの中から選択したルールのセットです。セキュリティカテゴリのルールや最適化、ガベージコレクション、スレッドなどのカテゴリからセキュリティ上注意すべきルールが約 70個セットされています。
これら以外でも以下のようなセキュリティコンプライアンスに対応したルールセットが利用できます。
- CWE 4.13
- CWE Top 25 2022
- CWE Top 25 2023
- CWE Top 25 +On the Cusp 2022
- CWE Top 25 +On the Cusp 2023
- DISA-ASD-STIG
- HIPAA
- Microsoft Secure Coding Guidelines
- OWASP API Security Top 10-2019
- OWASP API Security Top 10-2023
- OWASP ASVS 4.0.3
- OWASP Top 10 2017
- OWASP Top 10 2021
- PCI DSS 3.2
- PCI DSS 4.0
- Security Assessment
- UL 2900
- VVSG 2.0
dotTESTのセキュリティチェック用テストコンフィギュレーション
コンプライアンスの順守/逸脱レポートをリアルタイムで参照
コンプライアンスパッケージを導入することにより、dotTESTによる静的解析の結果からOWASP Top 10 やOWASP API Security Top 10、CWE、CWE Top 25に則った順守サマリーレポートや逸脱のレポートをいつでも確認できるようになります。ガイドラインの順守状況の説明責任を果たすことが容易になるだけでなく、未順守箇所を早期に特定し必要な措置を講ずることにより、欠陥のあるソフトウェアに関連するビジネスリスクを排除することが可能になります。OWASP Top 10 2021用ダッシュボード
コーディング時のチェックにより、効率的なデバックが可能
dotTESTによる脆弱性の検証は、コーディング時から実施できるので、開発後期に実施する擬似的な攻撃によるテストで脆弱性が検出された場合に比べて、原因箇所を特定しやすいため、確実なデバッグと作業の効率化が期待できます。静的な検証により、網羅性の高い検証を実現
dotTESTによる脆弱性の検証は、ソースコード上に存在するさまざまな分岐の可能性を検査するので、通常の動的テストでカバーされない珍しい状況を処理するときに発生する問題を特定できるため、高い網羅率の検証が行なえます。また、バッチでも実施できるので、夜間や休日など開発作業にマシンを使用していない時間を利用して検証を自動実行させることも可能です。脆弱性を含むコードと処理フローをレポート
脆弱性を含むコードが発見された場合は、問題が発生した箇所とそれに至るまでの処理フローがレポートされます。処理フローから問題の原因となるコードや渡された値を確認することができます。テストケースやスタブは、不必要。テスト資産のないソースコードでも検証可能
テストケースを作成し、実際にアプリケーションを実行する必要はありません。コンパイル可能なソースコードがあれば、脆弱性を検証できます。過去に開発したプログラムを検証する場合でも、テストケースの準備をすることなく、脆弱性の検証が可能です。PICK UP
イベント・セミナー
ニュース・キャンペーン
C# VB.NET対応 静的解析・動的解析 テストツール dotTESTに
関するお問い合わせ
テクマトリックス株式会社
東京本社ソフトウェアエンジニアリング事業部
03-4405-7853
- メールでのお問い合わせ
- parasoft-info@techmatrix.co.jp