CWE/SANS TOP 25

セキュリティ事業部

CWE/SANS TOP 25

CWE/SANS TOP 25は、最も危険なプログラミングエラー上位25であり、CWE (Common Weakness Enumeration)を管理するMITRE社とセキュリティトレーニングの情報を扱う団体SANSによって選択されたものです。これらは、攻撃者に対してソフトウェアの完全な支配、データの盗難、ソフトウェアの実行停止を可能とさせる危険なものです。

このTop25リストは、ソフトウェアがリリースされる前にソフトウェア産業を苦しめる様々な種類の脆弱性を特定し、プログラマーへの教育や脆弱性を認知させることに役立ちます。ソフトウェアの顧客は、このリストを利用することで、より安全なソフトウェアを要求することができます。また、ソフトウェアセキュリティの研究者は、このリストを利用することで、既知のセキュリティ脆弱性の重要な点に焦点を当てることができます。さらに、ソフトウェア管理者やCIO (Cheif Information Officer)は、自組織のソフトウェアをよりセキュアにするための活動における進捗を管理するための指標として、このリストを利用することができます。

Top25は、以下の3種類のカテゴリに分類されます。また、Top25における順位([]内)、及び対応するCWE (Common Weakness Enumeration)についても示します。

コンポーネント間の安全でない通信
[1] SQLインジェクション (CWE-89)
[2] OSコマンドインジェクション (CWE-78)
[4] クロスサイトスクリプティング (CWE-79)
[9] 制限のない危険な種類のファイルのアップロード (CWE-434)
[12] クロスサイトリクエストフォージェリ (CWE-352)
[22] 信頼性のないサイトへのリダイレクト (CWE-601)

リソース管理における危険性
[3] 入力サイズをチェックしないバッファコピー (CWE-120)
[13] パストラバーサル (CWE-22)
[14] 完全性チェックの無いコードのダウンロード (CWE-494)
[16] 信頼できないソースからの機能登録 (CWE-829)
[18] 危険性のある関数の使用 (CWE-676)
[20] 誤ったバッファサイズの計算 (CWE-131)
[23] 制御されていない文字フォーマット (CWE-23)
[24] 整数値のオーバフロー又は巻き戻り (CWE-190)

防御における欠陥
[5] 重要な機能における認証不備 (CWE-306)
[6] 認可(Authorization)の不備 (CWE-862)
[7] コード内での認証情報の利用 (CWE-798)
[8] 機密データに対する暗号の未使用 (CWE-311)
[10] 信頼性の無い入力に基づくセキュリティ判断 (CWE-807)
[11] 不必要な権限による実行 (CWE-250)
[15] 誤った認可 (Authorization) (CWE-863)
[17] 重要なリソースに対する誤った権限付与 (CWE-732)
[19] 解読済み或いは危険性のある暗号アルゴリズムの利用 (CWE-19)
[21] 過渡な認証要求に対する不適切な制限 (CWE-307)
[25] 片方向ハッシュ関数の不適切な(ソルト⁽*¹⁾無し)利用 (CWE-759)
(*1) ソルト(salt):パスワードを暗号化する際に付与されるデータのこと。

 

参考HP:CWE/SANS TOP 25 Most Dangerous Software Errors