【活用ガイド】

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

最終更新日 2011/04/21