CWE-59
Weakness ID:59(Weakness Base)
Status: Draft
リンク解釈の問題
解説
解説要約
ファイル名に基づいてファイルにアクセスするソフトウェアにおいて、ファイル名が意図しないリソースを解決するリンクやショートカットを特定することを適切に防がないという脆弱性です。
別名
安全でない一時ファイル
リンク解釈における脆弱性の説明に関して「安全でない一時ファイル」と表現されることがあります。しかし、他の脆弱性においても、シンボリックリンクに全く関連しない、安全でない一時ファイルを作成することがあります。
脆弱性の発生時期
実装
該当するプラットフォーム
言語
全て
OS
Windows
UNIX
攻撃を受ける可能性
低い 〜 中
被害の緩和策
フェーズ: アーキテクチャおよび設計; 実装
ファイルへのアクセス権限を割り当てる場合は、最小特権の原則に従って下さい。ファイルへのアクセス拒否により、重要なファイルへのリンクの置き換えを防ぎます。信頼できる保護領域を備えるため、システムの適切な区分化を保証して下さい。
背景の詳細
ソフトリンクは UNIX の用語であり、windows ベースのプラットフォームにおける単純なショートカットと同意語です。
その他の補足
ソフトリンクとも呼ばれる windows の単純なショートカットは、「.LNK」ファイルが通常のファイルと同様にアップロード可能なため、リモートから悪用される可能性があります。
発生における他の脆弱性との依存関係
依存関係 | 詳細 |
---|---|
依存的 | 他の脆弱性が存在することにより発生 |
関係性
Nature | Type | ID | Name | View(s) this relationship pertains to |
---|---|---|---|---|
ChildOf | Category | 21 | Pathname Traversal and Equivalence Errors | Development Concepts (primary)699 |
ChildOf | Category | 632 | Weaknesses that Affect Files or Directories | Resource-specific Weaknesses (primary)631 |
ChildOf | Weakness Class | 706 | Use of Incorrectly-Resolved Name or Reference | Research Concepts (primary)1000 |
ChildOf | Category | 743 | CERT C Secure Coding Section 09 - Input Output (FIO) | Weaknesses Addressed by the CERT C Secure Coding Standard (primary)734 |
ChildOf | Category | 748 | CERT C Secure Coding Section 50 - POSIX (POS) | Weaknesses Addressed by the CERT C Secure Coding Standard734 |
ChildOf | Category | 808 | 2010 Top 25 - Weaknesses On the Cusp) | Weaknesses in the 2010 CWE/SANS Top 25 Most Dangerous Programming Errors (primary)800 |
ParentOf | Category | 60 | UNIX Path Link Problems | Development Concepts (primary)699 |
ParentOf | Compound Element: Composite | 61 | UNIX Symbolic Link (Symlink) Following | Research Concepts (primary)1000 |
ParentOf | Weakness Variant | 62 | UNIX Hard Link | Research Concepts (primary)1000 |
ParentOf | Category | 63 | Windows Path Link Problems | Development Concepts (primary)699 |
ParentOf | Weakness Variant | 64 | Windows Shortcut Following (.LNK) | Research Concepts (primary)1000 |
ParentOf | Weakness Variant | 65 | Windows Hard Link | Research Concepts (primary)1000 |
MemberOf | View | 635 | Weaknesses Used by NVD | Weaknesses Used by NVD (primary)635 |
CanFollow | Weakness Class | 73 | External Control of File Name or Path | Research Concepts1000 |
CanFollow | Weakness Base | 363 | Race Condition Enabling Link Following | Research Concepts1000 |
関係性の補足
リンク解釈の問題は複数の要素をもつ脆弱性(Multi-factor Vulnerabilities (MFV))です。この脆弱性には、ファイルおよびディレクトリのアクセス制御、ファイル名の予測可能性、競合状態、アトミックなファイルを作成する操作のメカニズムがないという設計上の制限など、複数の要素が存在します。
潜在的な要素としては、競合状態、パーミッション、予測可能性が挙げられます。
要調査事項 (CWE の見解)
UNIX のハードリンクおよび Windows のハード/ソフトリンクについては、研究中であり、未報告です。
影響を受けるシステムリソース
ファイル/ディレクトリ
機能分野
ファイル処理、一時ファイル
原因の性質
明確
他組織での分類
組織名または組織での分類 | ノード ID | CWEの分類との適合度 | 分類名 |
---|---|---|---|
PLOVER | Link Following | ||
CERT C Secure Coding | FIO02-C | Canonicalize path names originating from untrusted sources | |
CERT C Secure Coding | POS01-C | Check for the existence of links when dealing with files |
関連する攻撃パターン
CAPEC-ID | 攻撃パターン名 (CAPEC Version 1.5) |
---|---|
17 | Accessing, Modifying or Executing Executable Files |
35 | Leverage Executable Code in Nonexecutable Files |
76 | Manipulating Input to File System Calls |
132 | Symlink Attacks |
更新履歴
[2011年04月21日]
2010年10月12日時点のデータを元に更新
[2009年06月29日]
2009年02月02日時点の下記 URL を元に作成
http://cwe.mitre.org/data/definitions/59.html
登録日 2011/04/21
最終更新日 2023/04/04