EN JP CN

2010 年版 CWE-SANS 最も危険なソフトウェアエラートップ 25 とKlocwork チェッカーのマッピング

2010 年版 CWE-SANS 最も危険なソフトウェアエラートップ 25 とKlocwork チェッカーのマッピング
ランクCWE ID説明Klocwork 指摘コード
1 79 Web ページ生成時の入力の不適切な中立化 ('クロスサイトスクリプティング')Java:

SV.XSS.DB

SV.XSS.REF

2 89 SQL コマンドで使用される特殊要素の不適切な中立化 ('SQL インジェクション')Java:

SV.SQL

SV.SQL.DBSOURCE

SV.DATA.DB

C#:

CS.SQL.INJECT.LOCAL

3 120 入力サイズのチェックをしないバッファコピー ('古典的バッファオーバーフロー')C/C++

ABV.GENERAL

ABV.MEMBER

NNTS.TAINTED

SV.STRBO.UNBOUND_COPY

SV.STRBO.UNBOUND_SPRINTF

SV.UNBOUND_STRING_INPUT.CIN

SV.UNBOUND_STRING_INPUT.FUNC

4 352 クロスサイトリクエストフォージェリ (CSRF)各アプリケーションには部外者が影響を与えることができる要求を決定する独自の暗黙的セキュリティポリシーがあるため、静的解析で CSRF の指摘を識別するのは非常に困難です。
5 285 不適切なアクセス制御 (権限)静的解析を使用して権限の指摘を検出することはできますが、そのような解析では構成ファイルをスキャンする必要があり、これはKlocwork の解析の範囲外になります。一般的に、静的解析ツールではカスタムの権限スキームを検出する実行可能なチェッカーを生成するのは困難です。
6 807 セキュリティ決定での信頼できない入力に対する依存C/C++:

SV.TAINTED.SECURITY_DECISION

Java:

SV.EMAIL

SV.LDAP

SV.TAINT

7 22 制限されたディレクトリへのパス名の不適切な規制 ('パストラバーサル')C/C++:

SV.DLLPRELOAD.NONABSOLUTE.DLL

SV.DLLPRELOAD.NONABSOLUTE.EXE

SV.DLLPRELOAD.SEARCHPATH

SV.TAINTED.PATH_TRAVERSAL

Java:

SV.PATH

SV.PATH.INJ

8 434 危険な型のファイルの無制限なアップロード静的に検証できません。通常、PHP または ASP.NET コードに関連付けられています。
9 78 OS コマンド中で使用される特殊要素の不適切な中立化 ('OS コマンド インジェクション')C/C++:

SV.CODE_INJECTION.SHELL_EXEC

NNTS.TAINTED

SV.TAINTED.INJECTION

Java:

SV.EXEC 

SV.EXEC.DIR 

SV.EXEC.ENV 

SV.EXEC.LOCAL  

10 311 機密データの暗号化の欠落静的に検証できません。手動の検査が必要です。
11 798 ハードコードされた資格情報の使用C/C++:

HCC

HCC.PWD

HCC.USER

Java:

SV.PASSWD.HC

12 805 不正確な長さの値でのバッファアクセスKlocwork ではこのような場合を 120 で検知します。
13 98 PHP プログラムのステートメントの include/require 文のファイル名の不適切な制御 ('PHP ファイルインクルード')PHP コードに関するものであり、Klocwork では対象としません。
14 129 配列インデックスの不適切な検証C/C++:

SV.TAINTED.ALLOC_SIZE

ABV.TAINTED

SV.TAINTED.CALL.INDEX_ACCESS

SV.TAINTED.INDEX_ACCESS

Java:

SV.DOS.ARRINDEX

15 754 通常ではない条件または例外条件の不適切なチェックC/C++:

SV.RVT.RETVAL_NOTTESTED

16 209 エラーメッセージによる情報の開示静的に検証できません。通常、PHP コードに関連付けられています。
17 190 整数オーバーフローまたはラップアラウンドC/C++:

ABV.TAINTED

SV.TAINTED.ALLOC_SIZE

SV.TAINTED.CALL.INDEX_ACCESS

SV.TAINTED.INDEX_ACCESS

Java:

SV.INT_OVF

18 131 不正確なバッファサイズ計算C/C++:

INCORRECT.ALLOC_SIZE

19 306 重要な機能に対する認証の欠落静的解析を使用して権限の指摘を検出することはできますが、そのような解析では構成ファイルをスキャンする必要があり、これはKlocwork の解析の範囲外になります。一般的に、静的解析ツールではカスタムの権限スキームを検出する実行可能なチェッカーを生成するのは困難です。
20 494 整合性チェックを行わないコードのダウンロード静的に検証できません。手動の検査が必要です。
21 732 重要なリソースへの不正確なパーミッション割り当てC#:

CS.NPS

C/C++:

SV.USAGERULES.PERMISSIONS などのチェッカーではある程度の範囲をカバーしますが、通常は操作に関する緩いパーミッションやカスタムのパーミッションモデルにより、静的解析ツールから非常に多くの警告が生成されます。

22 770 制限またはスロットリングなしのリソース割り当て静的に検証できません。手動の検査が必要です。
23 601 信頼できないサイトへの URL リダイレクト ('オープンリダイレクト')手動で検査を行い、入力が URL の先頭部分に影響を与えないかどうかを確認する必要があります。
24 327 破られたまたは危険な暗号化アルゴリズムの使用C/C++:

SV.WEAK_CRYPTO.WEAK_HASH

RCA

Java:

SV.WEAK.CRYPT

C#:

CS.RCA

25 362 競合状態C/C++:

SV.TOCTOU.FILE_ACCESS