EN JP CN

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

2011 年版 CWE-SANS 最も危険なソフトウェアエラートップ 25 とKlocwork チェッカーのマッピング
ランクCWE ID説明Klocwork 指摘コード
1 89 SQL コマンドで使用される特殊要素の不適切な中立化 ('SQL インジェクション')Java:

SV.SQL

SV.SQL.DBSOURCE

SV.DATA.DB

C#:

CS.SQL.INJECT.LOCAL

2 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 

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 79 Web ページ生成時の入力の不適切な中立化 ('クロスサイトスクリプティング')Java:

SV.XSS.DB

SV.XSS.REF

5 306 重要な機能に対する認証の欠落静的解析を使用して権限の指摘を検出することはできますが、そのような解析では構成ファイルをスキャンする必要があり、これはKlocwork の解析の範囲外になります。一般的に、静的解析ツールではカスタムの権限スキームを検出する実行可能なチェッカーを生成するのは困難です。
6 862 権限の欠落静的解析を使用して権限の指摘を検出することはできますが、そのような解析ではさらにコンテキストをスキャンする必要があり、これは Klocwork の解析の範囲外になります。一般的に、静的解析ツールではカスタムの権限スキームを検出する実行可能なチェッカーを生成するのは困難です。
7 798 ハードコードされた資格情報の使用C/C++:

HCC

HCC.PWD

HCC.USER

Java:

SV.PASSWD.HC

8 311 機密データの暗号化の欠落手動の検査が必要です。
9 434 危険な型のファイルの無制限なアップロード静的に検証できません。通常、PHP または ASP.NET コードに関連付けられています。
10 807 セキュリティ決定での信頼できない入力に対する依存C/C++:

SV.TAINTED.SECURITY_DECISION

Java:

SV.EMAIL

SV.LDAP

SV.TAINT

11 250 不必要な権限での実行C/C++:

SV.FIU.PROCESS_VARIANTS

SV.USAGERULES.PERMISSIONS

SV.USAGERULES.PROCESS_VARIANTS

12 352 クロスサイトリクエストフォージェリ (CSRF)各アプリケーションには部外者が影響を与えることができる要求を決定する独自の暗黙的セキュリティポリシーがあるため、静的解析で CSRF の指摘を識別するのは非常に困難です。
13 22 制限されたディレクトリへのパス名の不適切な規制 ('パストラバーサル')C/C++:

SV.DLLPRELOAD.NONABSOLUTE.DLL

SV.DLLPRELOAD.NONABSOLUTE.EXE

SV.DLLPRELOAD.SEARCHPATH

SV.TAINTED.PATH_TRAVERSAL

Java:

SV.PATH

SV.PATH.INJ

14 494 整合性チェックを行わないコードのダウンロード静的に検証できません。手動の検査が必要です。
15 863 不正確な権限静的解析を使用して権限の指摘を検出することはできますが、そのような解析ではさらにコンテキストをスキャンする必要があり、これは Klocwork の解析の範囲外になります。一般的に、静的解析ツールではカスタムの権限スキームを検出する実行可能なチェッカーを生成するのは困難です。
16 829 信頼できない制御範囲からの機能のインクルード

Java:

SV.SCRIPT 

SV.CLASSLOADER.INJ 

SV.CLASSDEF.INJ 

17 732 重要なリソースへの不正確なパーミッション割り当てC#:

CS.NPS

C/C++:

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

18 676 危険な可能性がある関数の使用C/C++:

SV.BANNED.RECOMMENDED.SCANF

Klocwork には "SDL Banned Function Calls" などの関数に対するサポートが組み込まれています。使用法については、Klocwork の担当者にお問い合わせください。
19 327 破られたまたは危険な暗号化アルゴリズムの使用C/C++:

SV.WEAK_CRYPTO.WEAK_HASH

RCA

Java:

SV.WEAK.CRYPT

C#:

CS.RCA

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

INCORRECT.ALLOC_SIZE

21 307 過度な認証試行の不適切な制限現在使用できるチェッカーはありません。
22 601 信頼できないサイトへの URL リダイレクト ('オープンリダイレクト')手動で検査を行い、入力が URL の先頭部分に影響を与えないかどうかを確認する必要があります。
23 134 制御されていない書式文字列C/C++:

SV.TAINTED.FMTSTR

SV.FMTSTR.GENERIC

24 190 整数オーバーフローまたはラップアラウンドC/C++:

ABV.TAINTED

SV.TAINTED.ALLOC_SIZE

SV.TAINTED.CALL.INDEX_ACCESS

SV.TAINTED.INDEX_ACCESS

Java:

SV.INT_OVF

25 759 ソルトなしの一方向性ハッシュの使用C/C++:

RCA.HASH.SALT.EMPTY

Java:

SV.HASH.NO_SALT