界: Input Validation and Representation
入力の検証や表現の問題は、メタキャラクター、代替エンコーディング、数値表現などによって引き起こされます。セキュリティの問題は、入力を信頼することに起因します。この問題に含まれるのは、「Buffer Overflow」、「Cross-Site Scripting」攻撃、「SQL Injection」などです。
Cross-Site Flashing
Abstract
このプログラムは、検証されていないユーザー入力を使用して、SWF ファイルをロードしています。これにより、任意のコンテンツが参照され、ターゲットの Flash アプリケーションによって実行される可能性があります。
Explanation
Flash API によって、既存の実行環境にリモート SWF ファイルがロードされる場合があります。クロスドメインポリシーによって信頼できるドメインのみから SWF ファイルをロードすることが許可されていても、クロスドメインポリシーを過剰に許可して定義している場合が多くあります。信頼できないユーザー入力を使用してロードする SWF ファイルを定義できるようにすると、任意のコンテンツが参照されターゲットアプリケーションよって実行される可能性があります。これは、Cross-Site Flashing 攻撃を引き起こす可能性があります。
次の場合に、Cross-Site Flashing の脆弱性が発生します。
1. 信頼されていないソースからデータがアプリケーションに入り込んだ場合。
2. このデータが使用されて、リモート SWF ファイルがロードされます。
例: 次のコードは、ロードされた SWF ファイルへのパラメーターの 1 つの値を URL として使用して、リモートの SWF ファイルをロードしています。
次の場合に、Cross-Site Flashing の脆弱性が発生します。
1. 信頼されていないソースからデータがアプリケーションに入り込んだ場合。
2. このデータが使用されて、リモート SWF ファイルがロードされます。
例: 次のコードは、ロードされた SWF ファイルへのパラメーターの 1 つの値を URL として使用して、リモートの SWF ファイルをロードしています。
...
var params:Object = LoaderInfo(this.root.loaderInfo).parameters;
var url:String = String(params["url"]);
var ldr:Loader = new Loader();
var urlReq:URLRequest = new URLRequest(url);
ldr.load(urlReq);
...
References
[1] Peleus Uhley Creating more secure SWF web applications
[2] Matt Wood and Prajakta Jagdale Auditing Adobe Flash through Static Analysis
[3] Standards Mapping - CIS Azure Kubernetes Service Benchmark 5.0
[4] Standards Mapping - CIS Microsoft Azure Foundations Benchmark partial
[5] Standards Mapping - CIS Amazon Elastic Kubernetes Service Benchmark 5.0
[6] Standards Mapping - CIS Amazon Web Services Foundations Benchmark 1
[7] Standards Mapping - CIS Google Kubernetes Engine Benchmark integrity
[8] Standards Mapping - Common Weakness Enumeration CWE ID 494, CWE ID 829
[9] Standards Mapping - DISA Control Correlation Identifier Version 2 CCI-001167
[10] Standards Mapping - General Data Protection Regulation (GDPR) Indirect Access to Sensitive Data
[11] Standards Mapping - NIST Special Publication 800-53 Revision 4 SC-18 Mobile Code (P2), SI-10 Information Input Validation (P1)
[12] Standards Mapping - NIST Special Publication 800-53 Revision 5 SC-18 Mobile Code, SI-10 Information Input Validation
[13] Standards Mapping - OWASP Top 10 2021 A08 Software and Data Integrity Failures
[14] Standards Mapping - OWASP Application Security Verification Standard 4.0 1.14.2 Configuration Architectural Requirements (L2 L3), 5.3.9 Output Encoding and Injection Prevention Requirements (L1 L2 L3), 10.3.2 Deployed Application Integrity Controls (L1 L2 L3), 12.3.3 File Execution Requirements (L1 L2 L3), 12.3.6 File Execution Requirements (L2 L3), 14.2.3 Dependency (L1 L2 L3), 14.2.4 Dependency (L2 L3)
[15] Standards Mapping - OWASP Mobile 2014 M7 Client Side Injection
[16] Standards Mapping - OWASP Mobile 2024 M4 Insufficient Input/Output Validation
[17] Standards Mapping - OWASP Mobile Application Security Verification Standard 2.0 MASVS-CODE-4
[18] Standards Mapping - Payment Card Industry Data Security Standard Version 1.1 Requirement 6.5.6
[19] Standards Mapping - Payment Card Industry Data Security Standard Version 1.2 Requirement 6.3.1.1, Requirement 6.5.2
[20] Standards Mapping - Payment Card Industry Data Security Standard Version 2.0 Requirement 6.5.1
[21] Standards Mapping - Payment Card Industry Data Security Standard Version 3.0 Requirement 6.5.1
[22] Standards Mapping - Payment Card Industry Data Security Standard Version 3.1 Requirement 6.5.1
[23] Standards Mapping - Payment Card Industry Data Security Standard Version 3.2 Requirement 6.5.1
[24] Standards Mapping - Payment Card Industry Data Security Standard Version 3.2.1 Requirement 6.5.1
[25] Standards Mapping - Payment Card Industry Data Security Standard Version 4.0 Requirement 6.2.4
[26] Standards Mapping - Payment Card Industry Software Security Framework 1.0 Control Objective 4.2 - Critical Asset Protection
[27] Standards Mapping - Payment Card Industry Software Security Framework 1.1 Control Objective 4.2 - Critical Asset Protection, Control Objective B.3.1 - Terminal Software Attack Mitigation, Control Objective B.3.1.1 - Terminal Software Attack Mitigation
[28] Standards Mapping - Payment Card Industry Software Security Framework 1.2 Control Objective 4.2 - Critical Asset Protection, Control Objective B.3.1 - Terminal Software Attack Mitigation, Control Objective B.3.1.1 - Terminal Software Attack Mitigation, Control Objective C.3.2 - Web Software Attack Mitigation
[29] Standards Mapping - SANS Top 25 2009 Risky Resource Management - CWE ID 494
[30] Standards Mapping - SANS Top 25 2010 Risky Resource Management - CWE ID 494
[31] Standards Mapping - SANS Top 25 2011 Risky Resource Management - CWE ID 494, Risky Resource Management - CWE ID 829
[32] Standards Mapping - Security Technical Implementation Guide Version 4.1 APSC-DV-003300 CAT II
[33] Standards Mapping - Security Technical Implementation Guide Version 4.2 APSC-DV-003300 CAT II
[34] Standards Mapping - Security Technical Implementation Guide Version 4.3 APSC-DV-003300 CAT II
[35] Standards Mapping - Security Technical Implementation Guide Version 4.4 APSC-DV-003300 CAT II
[36] Standards Mapping - Security Technical Implementation Guide Version 4.5 APSC-DV-003300 CAT II
[37] Standards Mapping - Security Technical Implementation Guide Version 4.6 APSC-DV-003300 CAT II
[38] Standards Mapping - Security Technical Implementation Guide Version 4.7 APSC-DV-003300 CAT II
[39] Standards Mapping - Security Technical Implementation Guide Version 4.8 APSC-DV-003300 CAT II
[40] Standards Mapping - Security Technical Implementation Guide Version 4.9 APSC-DV-003300 CAT II
[41] Standards Mapping - Security Technical Implementation Guide Version 4.10 APSC-DV-003300 CAT II
[42] Standards Mapping - Security Technical Implementation Guide Version 4.11 APSC-DV-003300 CAT II
[43] Standards Mapping - Security Technical Implementation Guide Version 5.1 APSC-DV-003300 CAT II
[44] Standards Mapping - Security Technical Implementation Guide Version 5.2 APSC-DV-003300 CAT II
[45] Standards Mapping - Security Technical Implementation Guide Version 5.3 APSC-DV-002530 CAT II, APSC-DV-003300 CAT II
[46] Standards Mapping - Web Application Security Consortium Version 2.00 Improper Input Handling (WASC-20)
desc.dataflow.actionscript.cross_site_flashing