ページの本文へ

Hitachi

HIRT-PUB18002:共通脆弱性タイプ一覧 (CWE: Common Weakness Enumeration)

更新日: 2019年08月19日

共通脆弱性タイプ一覧 (CWE) は、脆弱性の種類を一意に識別するために、脆弱性タイプの一覧を体系化する仕様です。HIRT-PUB18002では、代表的な CWE について紹介したいと思います。

1. 概要

CWEでは、脆弱性の種類を一意に判別するために識別子(ID)を付与すると共に、4つの区分に分けて管理しています。

表 1:CWEの区分

区分概要
Viewある観点で脆弱性をグループ化したものCWE-1000
Category共通の特性を持つ脆弱性をグループ化したものCWE-310
Weakness個々の脆弱性Class抽象的な脆弱性CWE-362
Base特定のリソース、技術、コンテキストに依存しない脆弱性CWE-567
Variant特定なリソースや技術、コンテキストに依存する脆弱性CWE-488
Compound Element複数の要因からなる脆弱性Composite複数の問題の組み合わせにより発生する脆弱性CWE-352
Chainある問題が原因で別の問題が連鎖して発生する脆弱性CWE-680


2. 共通脆弱性タイプ一覧

View、Category、Weakness と Compound Element の 3 区分に分けて代表的な CWE を一覧してみましょう。

2.1 View

  • CWE-635 NVDにおける脆弱性分類 (2008年〜2016年)
    [View] Weaknesses Originally Used by NVD from 2008 to 2016
  • CWE-658 C言語で作成したソフトウェアに関連する脆弱性
    [View] Weaknesses in Software Written in C
  • CWE-660 Java言語で作成したソフトウェアに関連する脆弱性
    [View] Weaknesses in Software Written in Java
  • CWE-699 開発者視点
    [View] Development Concepts
  • CWE-1000 研究調査視点
    [View] Research Concepts


2.2 Category

  • CWE-255 証明書・パスワード管理
    [Category] Credentials Management
  • CWE-264 適切でない許可、権限、アクセス制御
    [Category] Permissions, Privileges, and Access Controls
  • CWE-275 適切でない許可
    [Category] Permission Issues
  • CWE-310 暗号に関連する問題
    [Category] Cryptographic Issues
  • CWE-320 鍵管理のエラー
    [Category] Key Management Errors
  • CWE-355 ユーザインターフェースに関連する問題
    [Category] User Interface Security Issues
  • CWE-399 リソース管理エラー
    [Category] Resource Management Errors


2.3 Weakness と Compound Element

  • CWE-20 適切でない入力確認
    [Class] Improper Input Validation
  • CWE-22 ディレクトリトラバーサル問題
    [Class] Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')
  • CWE-73 ファイル名やパス名の外部制御
    [Class] External Control of File Name or Path
  • CWE-74 インジェクション問題
    [Class] Improper Neutralization of Special Elements in Output Used by a Downstream Component ('Injection')
  • CWE-77 コマンドインジェクション問題
    [Class] Improper Neutralization of Special Elements used in a Command ('Command Injection')
  • CWE-78 OS コマンドインジェクション問題
    [Base] Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection')
  • CWE-79 クロスサイトスクリプティング問題
    [Base] Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')
  • CWE-89 SQL インジェクション問題
    [Base] Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')
  • CWE-94 コードインジェクション問題
    [Class] Improper Control of Generation of Code ('Code Injection')
  • CWE-99 リソース識別子の適切でない管理 (リソースインジェクション問題)
    [Base] Improper Control of Resource Identifiers ('Resource Injection')
  • CWE-118 範囲エラー
    [Class] Incorrect Access of Indexable Resource ('Range Error')
  • CWE-119 メモリバッファ境界での適切でない操作制限
    [Class] Improper Restriction of Operations within the Bounds of a Memory Buffer
  • CWE-120 バッファオーバーフロー
    [Base] Buffer Copy without Checking Size of Input ('Classic Buffer Overflow')
  • CWE-121 スタックオーバーフロー
    [Variant] Stack-based Buffer Overflow
  • CWE-122 ヒープオーバーフロー
    [Variant] Heap-based Buffer Overflow
  • CWE-125 領域外のメモリ参照
    [Base] Out-of-bounds Read
  • CWE-131 バッファサイズの算出誤り
    [Base] Incorrect Calculation of Buffer Size
  • CWE-134 書式文字列の問題
    [Base] Use of Externally-Controlled Format String
  • CWE-190 整数オーバーフロー
    [Base] Integer Overflow or Wraparound
  • CWE-193 境界条件の判定
    [Base] Off-by-one Error
  • CWE-200 情報漏洩
    [Class] Information Exposure
  • CWE-209 エラーメッセージからの情報漏洩
    [Base] Information Exposure Through an Error Message
  • CWE-231 特別な値の適切でない取扱い
    [Variant] Improper Handling of Extra Values
  • CWE-248 例外を捕捉できない問題
    [Base] Uncaught Exception
  • CWE-250 必要以上に高い権限でのプログラム実行
    [Class] Execution with Unnecessary Privileges
  • CWE-256 パスワードなどのアカウント情報が平文のまま格納されている問題
    [Variant] Plaintext Storage of a Password
  • CWE-258 設定ファイル内に空のパスワード
    [Variant] Empty Password in Configuration File
  • CWE-259 パスワードがハードコーディングされている問題
    [Base] Use of Hard-coded Password
  • CWE-260 パスワードが設定ファイルに格納されている問題
    [Variant] Password in Configuration File
  • CWE-269 適切でない権限の管理
    [Class] Improper Privilege Management
  • CWE-276 適切でないデフォルトアクセス許可
    [Variant] Incorrect Default Permissions
  • CWE-280 権限管理不備
    [Base] Improper Handling of Insufficient Permissions or Privileges
  • CWE-283 オーナーシップの未検証
    [Base] Unverified Ownership
  • CWE-284 適切でないアクセス制御
    [Class] Improper Access Control
  • CWE-285 適切でない認可
    [Class] Improper Authorization
  • CWE-286 適切でないユーザ管理
    [Class] Incorrect User Management
  • CWE-287 適切でない認証
    [Class] Improper Authentication
  • CWE-288 代替経路やチャネルによる認証機構の迂回
    [Base] Authentication Bypass Using an Alternate Path or Channel
  • CWE-294 キャプチャリプレイ攻撃による認証機構の迂回
    [Base] Authentication Bypass by Capture-replay
  • CWE-295 適切でない証明書の確認
    [Base] Improper Certificate Validation
  • CWE-300 中間者攻撃問題
    [Class] Channel Accessible by Non-Endpoint ('Man-in-the-Middle')
  • CWE-303 認証アルゴリズムの実装上の問題
    [Base] Incorrect Implementation of Authentication Algorithm
  • CWE-306 重要な機能に対する認証の欠如
    [Variant] Missing Authentication for Critical Function
  • CWE-307 ブルートフォース攻撃により認証機能の迂回を許してしまう問題
    [Base] Improper Restriction of Excessive Authentication Attempts
  • CWE-311 重要な情報を暗号化していない問題
    [Base] Missing Encryption of Sensitive Data
  • CWE-312 重要な情報が平文のまま格納されている問題
    [Base] Cleartext Storage of Sensitive Information
  • CWE-319 重要な情報を平文のまま転送している問題
    [Base] Cleartext Transmission of Sensitive Information
  • CWE-321 暗号化に使用する鍵がハードコーディングされている問題
    [Base] Use of Hard-coded Cryptographic Key
  • CWE-323 暗号化処理における Nonce、鍵ペアの再利用
    [Base] Reusing a Nonce, Key Pair in Encryption
  • CWE-326 強度を持った暗号化方式で保護していない問題
    [Class] Inadequate Encryption Strength
  • CWE-327 不完全または危険な暗号アルゴリズムの使用
    [Base] Use of a Broken or Risky Cryptographic Algorithm
  • CWE-330 不十分なランダム値の使用
    [Class] Use of Insufficiently Random Values
  • CWE-332 十分でない擬似乱数生成器のエントロピー
    [Variant] Insufficient Entropy in PRNG
  • CWE-334 幅の狭い乱数値
    [Base] Small Space of Random Values
  • CWE-341 観測から予測可能
    [Base] Predictable from Observable State
  • CWE-344 可変値とすべきコンテキストでの固定値の使用
    [Base] Use of Invariant Value in Dynamically Changing Context
  • CWE-345 十分ではないデータ真正性の確認
    [Class] Insufficient Verification of Data Authenticity
  • CWE-346 同一生成元ポリシー違反
    [Base] Origin Validation Error
  • CWE-352 クロスサイトリクエストフォージェリ問題
    [Composite] Cross-Site Request Forgery (CSRF)
  • CWE-354 適切でない完全性検証
    [Base] Improper Validation of Integrity Check Value
  • CWE-362 競合
    [Class] Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition')
  • CWE-367 確認してから実行するまでの時間差の問題
    [Base] Time-of-check Time-of-use (TOCTOU) Race Condition
  • CWE-369 ゼロ除算
    [Base] Divide By Zero
  • CWE-384 セッションの固定化
    [Composite] Session Fixation
  • CWE-400 適切でないリソース消費制限
    [Base] Uncontrolled Resource Consumption ('Resource Exhaustion')
  • CWE-404 適切でないリソース終了、解放
    [Base] Improper Resource Shutdown or Release
  • CWE-415 メモリの 2 重解放
    [Variant] Double Free
  • CWE-416 メモリの解放後使用
    [Base] Use After Free
  • CWE-426 信頼性のない検索パス
    [Composite] Untrusted Search Path
  • CWE-427 制御されていない検索パス問題
    [Base] Uncontrolled Search Path Element
  • CWE-428 引用符で囲まれていないプログラムパス
    [Base] Unquoted Search Path or Element
  • CWE-434 適切でないアップロートファイル制限
    [Base] Unrestricted Upload of File with Dangerous Type
  • CWE-440 予想される動作違反
    [Base] Expected Behavior Violation
  • CWE-441 識別不能な混在したアクセス
    [Class] Unintended Proxy or Intermediary ('Confused Deputy')
  • CWE-476 NULL ポインタ参照
    [Base] NULL Pointer Dereference
  • CWE-488 他のセッションへのデータの漏洩
    [Variant] Exposure of Data Element to Wrong Session
  • CWE-489 デバックコードの残存
    [Base] Leftover Debug Code
  • CWE-502 信頼できないデータのデシリアライゼーション
    [Variant] Deserialization of Untrusted Data
  • CWE-521 脆弱なパスワードポリシー
    [Base] Weak Password Requirements
  • CWE-522 十分でない資格情報保護
    [Base] Insufficiently Protected Credentials
  • CWE-530 許可されていない制御領域へのバックアップファイルの漏洩
    [Variant] Exposure of Backup File to an Unauthorized Control Sphere
  • CWE-532 ログファイルからの情報漏洩
    [Variant] Information Exposure Through Log Files
  • CWE-567 マルチスレッドにおける共有データへの非同期アクセス
    [Base] Unsynchronized Access to Shared Data in a Multithreaded Context
  • CWE-573 適切ではない呼び出し後の仕様
    [Class] Improper Following of Specification by Caller
  • CWE-598 GETリクエストのクエリ文字列からの情報漏洩
    [Variant] Information Exposure Through Query Strings in GET Request
  • CWE-601 オープンリダイレクト問題
    [Variant] URL Redirection to Untrusted Site ('Open Redirect')
  • CWE-610 別領域リソースに対する外部からの制御可能な参照
    [Class] Externally Controlled Reference to a Resource in Another Sphere
  • CWE-611 外部に置かれたファイルを呼び出す XXE (Xml eXternal Entity) 問題
    [Variant] Improper Restriction of XML External Entity Reference ('XXE')
  • CWE-657 セキュリティ設計原則の違反
    [Class] Violation of Secure Design Principles
  • CWE-664 ライフタイム期間中の適切でないリソース制御
    [Class] Improper Control of a Resource Through its Lifetime
  • CWE-666 ライフタイム期間中の正しくないリソース操作
    [Base] Operation on Resource in Wrong Phase of Lifetime
  • CWE-668 他の領域へのリソースの漏洩
    [Class] Exposure of Resource to Wrong Sphere
  • CWE-669 領域間での誤ったリソース移動
    [Class] Incorrect Resource Transfer Between Spheres
  • CWE-671 セキュリティに関する管理機能の欠落
    [Class] Lack of Administrator Control over Security
  • CWE-672 有効期限後または解放後のリソース使用
    [Base] Operation on a Resource after Expiration or Release
  • CWE-675 リソースへの重複操作
    [Class] Duplicate Operations on Resource
  • CWE-680 整数オーバーフローの発生によるバッファオーバーフロー
    [Chain] Integer Overflow to Buffer Overflow
  • CWE-682 正しくない計算
    [Class] Incorrect Calculation
  • CWE-691 十分でない制御フローの管理
    [Class] Insufficient Control Flow Management
  • CWE-693 保護メカニズムの不具合
    [Class] Protection Mechanism Failure
  • CWE-703 適切でない例外条件の確認や処理
    [Class] Improper Check or Handling of Exceptional Conditions
  • CWE-704 正しくない型変換やキャスト
    [Class] Incorrect Type Conversion or Cast
  • CWE-706 誤って解決された名前や参照の使用
    [Class] Use of Incorrectly-Resolved Name or Reference
  • CWE-707 適切でないメッセージやデータ構造の適用
    [Class] Improper Enforcement of Message or Data Structure
  • CWE-710 適切でないコーディング基準の遵守
    [Class] Improper Adherence to Coding Standards
  • CWE-749 危険なメソッドや機能の公開
    [Base] Exposed Dangerous Method or Function
  • CWE-754 適切でない異常や例外条件の確認
    [Class] Improper Check for Unusual or Exceptional Conditions
  • CWE-755 適切でない例外条件の処理
    [Class] Improper Handling of Exceptional Conditions
  • CWE-776 適切でない再帰的なエンティティ参照制限 (XML Entity Expansion) 問題
    [Variant] Improper Restriction of Recursive Entity References in DTDs ('XML Entity Expansion')
  • CWE-787 領域外メモリへの書き出し
    [Base] Out-of-bounds Write
  • CWE-788 バッファ終端位置以降へのメモリアクセス
    [Base] Access of Memory Location After End of Buffer
  • CWE-789 メモリ割当ての未制御
    [Variant] Uncontrolled Memory Allocation
  • CWE-798 資格情報がハードコーディングされている問題
    [Base] Use of Hard-coded Credentials
  • CWE-799 適切でない相互作用に対する頻度制御
    [Class] Improper Control of Interaction Frequency
  • CWE-822 信頼できないポインタの参照
    [Base] Untrusted Pointer Dereference
  • CWE-824 初期化されていないポインタへのアクセス
    [Base] Access of Uninitialized Pointer
  • CWE-825 有効ではないポインタの相互参照
    [Base] Expired Pointer Dereference
  • CWE-843 型の取り違え
    [Base] Access of Resource Using Incompatible Type ('Type Confusion')
  • CWE-862 認可の欠落
    [Class] Missing Authorization
  • CWE-916 強度を持ったパスワードハッシュで保護していない問題
    [Base] Use of Password Hash With Insufficient Computational Effort
  • CWE-918 サーバサイドリクエストフォージェリ問題
    [Base] Server-Side Request Forgery (SSRF)
  • CWE-920 適切でない電力消費制限
    [Base] Improper Restriction of Power Consumption
  • CWE-922 重要な情報がセキュアに格納されていない問題
    [Class] Insecure Storage of Sensitive Information
  • CWE-923 エンドポイントに対する適切でない通信チャネルの制限
    [Class] Improper Restriction of Communication Channel to Intended Endpoints
  • CWE-943 適切でないデータクエリロジックにおける無害化
    [Class] Improper Neutralization of Special Elements in Data Query Logic


3. 参考情報

3.1 関連情報

4. 更新履歴

2019年08月19日
  • 共通脆弱性タイプ一覧、関連情報を更新しました。
2018年11月26日
  • このページを新規作成および公開しました。

担当:寺田、大西