Office Document Security and Privacy

Office Document Security and Privacy

Office Document Security and Privacy Jens Müller, Fabian Ising, Christian Mainka, Vladislav Mladenov, Sebastian Schinzel, Jörg Schwenk Overview 1. OOXML/ODF Basics 2. Denial of Service 3. Invasion of Privacy 4. Information Disclosure 5. Data Manipulation 6. Code Execution 7. Evaluation 2 History: Office Wars • 1990: MS Office 1.0 • 2002: Star Office → OpenOffice.org • 2006: OOXML + ODF standardization • 2010: OpenOffice.org → LibreOffice 3 Two competing standards OOXML (ISO/IEC 29500) ODF (ISO/IEC 26300) Office Open XML Open Document Format 6500 pages 800 pages (some) MS proprietary formats re-use of SVG, MathML, XForms, … .docx, .xlsx, .pptx, … .odt, .ods, .odp, … XML-based, Zip container XML-based, Zip container 4 OOXML Directory Structure 5 OOXML Example 6 ODF Directory Structure 7 ODF Example 8 Attacker Model • Victim opens malicious office document • “Bad things” happen (attack-dependent) 9 Overview 1. OOXML/ODF Basics 2. Denial of Service Deflate Bomb 3. Invasion of Privacy 4. Information Disclosure 5. Data Manipulation 6. Code Execution 7. Evaluation 10 Deflate Bomb max. compression ratio: 1:1023 11 Overview 1. OOXML/ODF Basics 2. Denial of Service 3. Invasion of Privacy URL Invocation, Evitable Metadata 4. Information Disclosure 5. Data Manipulation 6. Code Execution 7. Evaluation 12 URL Invocation • Goal: “phone home” to attacker’s server once document is opened 13 URL Invocation CVE-2020-12802 14 URL Invocation 15 Evitable Metadata Source: news.bbc.co.uk 16 Evitable Metadata 17 Overview 1. OOXML/ODF Basics 2. Denial of Service 3. Invasion of Privacy 4. Information Disclosure Data Exfiltration, File Disclosure, Credential Theft 5. Data Manipulation 6. Code Execution 7. Evaluation 18 Data Exfiltration • Idea: victim obtains spreadsheet; user input values sent to attacker’s server 19 File Disclosure • Idea: include local files on disk 20 File Disclosure 21 File Disclosure 22 File Disclosure 23 Credential Theft • Goal: obtain user’s NTLM hash 24 Credential Theft • Offline cracking – NTLMv2: modern GPU requires 2,5h for eight chars – NTLMv1, LM: considered broken [Marlinspike2012] • Pass-the-hash or relay attacks – Compare [Ochoa2008, Hummel2009] – Depending on Windows security policy 25 Overview 1. OOXML/ODF Basics 2. Denial of Service 3. Invasion of Privacy 4. Information Disclosure 5. Data Manipulation File Write Access, Content Masking 6. Code Execution 7. Evaluation 20 File Write Access • Idea: XForms allow local file as target 27 File Write Access CVE-2020-12803 28 Content Masking: OOXML 29 Content Masking: ODF Parsed by MS Office Parsed by LibreOffice 30 Overview 1. OOXML/ODF Basics 2. Denial of Service 3. Invasion of Privacy 4. Information Disclosure 5. Data Manipulation 6. Code Execution Macros 7. Evaluation 24 Macros 32 Addition Findings CVE-2018-8161 (memory corruption) 33 One-Click RCE in LibreOffice • We can write XML to arbitrary files • LibreOffice config file itself is XML 34 One-Click RCE in LibreOffice CVE-2020-12803 35 Overview 1. OOXML/ODF Basics 2. Denial of Service 3. Invasion of Privacy 4. Information Disclosure 5. Data Manipulation 6. Code Execution 7. Evaluation 28 Evaluation 37 Countermeasures • Removing insecure features • User privacy by default • Limitation of resources • Elimination of ambiguities 38 Conclusion • OOXML and ODF are complex formats • Thorough analysis of dangerous features • One-click pure logic chain RCE in 2020 ;) Artifacts: https://github.com/RUB-NDS/Office-Security 39.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    39 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us