In July 2020, we introduced a novel attack class called Shadow Attacks. In our recent research, we discovered a new variant of the attack which relies only on an Incremental Update containing a malicious trailer.
A proof-of-concept exploit working on Foxit (Version: 11.0.1.49938) can be downloaded here.
A proof-of-concept exploit working on Foxit (Version: 11.0.1.49938) can be downloaded here.
The story so far ...
Shadow attacks are attacks bypassing the integrity protection of digitally signed PDF documents. The attacks abuse two legitimate features in PDF documents which we briefly explain.
Hiding Content
In PDFs, there are multiple techniques to hide content that is not displayed when the document is opened. We, as attackers, usually hide malicious objects without referencing them in the xref section.
Incremental Updates
New content can be appended to a signed PDF document. This is quite dangerous though. The digital signature in PDFs protects a specific range of bytes. Any appended content does not break the signature verification since it is outside this range. As a result, any new Incremental Update does not violate the cryptographic verification of the digital signature.
But, Incremental Updates are quite dangerous since they may completely change the displayed content of the document. In 2019, we showed different techniques based on Incremental Updates – the Incremental Saving Attacks.
As a countermeasure, most vendors warn if additional content is added after signing the document. BUT … not always!!!
As a countermeasure, most vendors warn if additional content is added after signing the document. BUT … not always!!!
There are meaningful use cases where Incremental Updates in digitally signed documents are allowed. For instance, contracts should be signed by multiple parties and each new signature is applied via additional Incremental Update.
Also, PAdES defines Incremental Updates as part of the long-term validation of digitally signed PDFs.
In summary, Incremental Updates are painful from a security perspective. Currently, vendors are trying to estimate whether an Incremental Update is malicious or not by analyzing its content.
Also, PAdES defines Incremental Updates as part of the long-term validation of digitally signed PDFs.
In summary, Incremental Updates are painful from a security perspective. Currently, vendors are trying to estimate whether an Incremental Update is malicious or not by analyzing its content.
Shadow Attacks
Shadow attacks, in general, deceive the PDF applications that an Incremental Update is not malicious. This can be done by providing an Incremental Update with minimal content.
In 2020, we estimated that appending an xref section and a trailer is sufficient to bypass the detection mechanisms of popular applications such as Adobe Reader and Foxit Reader.
In 2020, we estimated that appending an xref section and a trailer is sufficient to bypass the detection mechanisms of popular applications such as Adobe Reader and Foxit Reader.
Trailer-based Shadow Attack
Three months ago, we tried to reduce the content of the malicious Incremental Update. Our idea was to use only a malicious trailer and still change the content of the entire document when it is opened. Let's see how this can be done.
The Signer's view on the document
If a signer gets the document depicted on the left side, he or she sees the content "Sign the document to get a reward".
The document contains a hidden content depicted as red text – the 4 0 obj containing the text "You are fired. Get out immediately" and an xref section pointing to that object. However, the trailer references another xref section, see (1) and (2). Thus, the red text is never shown.
From the signer's perspective, there is no possibility to detect the hidden content by opening and reviewing the document.
As a result, the signer, for example the company director, signs the document.
The document contains a hidden content depicted as red text – the 4 0 obj containing the text "You are fired. Get out immediately" and an xref section pointing to that object. However, the trailer references another xref section, see (1) and (2). Thus, the red text is never shown.
From the signer's perspective, there is no possibility to detect the hidden content by opening and reviewing the document.
As a result, the signer, for example the company director, signs the document.
The Victim's view on the document
We assume that the attacker receives the signed document and manipulates it.
The attacker appends only a trailer that points to the hidden malicious xref section (the red one). When the victim opens the document, the content "You are fired. Get out immediately" is shown.
However, the digital signature validation does not throw any warning since … well … what could go wrong if only a trailer is appended.
The attacker appends only a trailer that points to the hidden malicious xref section (the red one). When the victim opens the document, the content "You are fired. Get out immediately" is shown.
However, the digital signature validation does not throw any warning since … well … what could go wrong if only a trailer is appended.
Honest vs. Malicious Trailer
There are small differences between the honest and the malicious trailer– the byte position of the xref section. Now, the trailer points to the hidden xref section.
Impact and Exploit
We successfully applied the new attack on Foxit Reader (Version: 11.0.1.49938). We promptly reported the vulnerability and provided a Proof-of-Concept (PoC) exploit, known as CVE-2021-40326.
Foxit acknowledged the attack and published a security fix with the new version Foxit Reader 11.1.
Foxit acknowledged the attack and published a security fix with the new version Foxit Reader 11.1.
We are not aware of any further implementations vulnerable to this attack.
If you think that your application might be vulnerable to the attack, then just download the exploit and test on your own.
If you think that your application might be vulnerable to the attack, then just download the exploit and test on your own.
Authors of this post
Vladislav Mladenov
Simon Rohlmann
Christian Mainka
- Pentest Tools For Android
- Pentest Automation Tools
- Nsa Hacker Tools
- Hacking Tools Hardware
- How To Make Hacking Tools
- Blackhat Hacker Tools
- Hacking Tools Software
- Hacker Tools Online
- Physical Pentest Tools
- Hacking Tools 2020
- Nsa Hack Tools
- Hack Tools
- Usb Pentest Tools
- Hacker Tools Free
- Hacking Tools Usb
- How To Make Hacking Tools
- Nsa Hack Tools Download
- Hacking Tools Online
- Hacking Tools Pc
- Pentest Tools Alternative
- Nsa Hack Tools
- Pentest Tools Url Fuzzer
- Pentest Tools Nmap
- Pentest Tools Website Vulnerability
- Hackrf Tools
- Hacker Tools 2019
- Pentest Tools Apk
- Free Pentest Tools For Windows
- Hacker Tools Online
- Hacker Search Tools
- Computer Hacker
- Hacking Tools For Windows
- Hacking Tools Hardware
- Pentest Tools For Windows
- Pentest Tools Website Vulnerability
- Pentest Tools Subdomain
- Hack Tools For Games
- Hacker Tools Linux
- Hacking Tools 2020
- Hacking Tools Usb
- Best Hacking Tools 2020
- Hack Tools Download
- Hacking Tools Pc
- Hacking Tools
- Ethical Hacker Tools
- Pentest Tools For Windows
- Pentest Tools Kali Linux
- Pentest Tools For Mac
- Hack Tools Mac
- Hacker Tool Kit
- Computer Hacker
- Tools 4 Hack
- Hacker Tools For Windows
- Kik Hack Tools
- Hack Tool Apk No Root
- Free Pentest Tools For Windows
- Hack Website Online Tool
- Hacker Tools For Ios
- How To Hack
- How To Install Pentest Tools In Ubuntu
- Pentest Tools Download
- Pentest Tools Windows
- Hacking Tools
- Hacker
- Hacking Tools Pc
- Hacker Tools Github
- How To Make Hacking Tools
- Hacking Tools 2019
- Hacking Tools Name
- Hackrf Tools
- Install Pentest Tools Ubuntu
- Hacking App
- Hak5 Tools
- Hacking Tools For Beginners
- Hacking Tools Hardware
- Hack App
- Hacking Tools For Windows Free Download
- Pentest Tools Find Subdomains
- Android Hack Tools Github
- Hacking Tools Software
- Android Hack Tools Github
- Hacking Tools For Beginners
- Tools For Hacker
- Hacking Tools Free Download
- Kik Hack Tools
- Pentest Tools Port Scanner
- Pentest Automation Tools
- Hacker Tools Linux
- Best Hacking Tools 2019
- Hackers Toolbox
- How To Make Hacking Tools
- Hack Tools
- Hacking Tools Name
- Hacker Tools Free Download
- Pentest Recon Tools
- Hacking Apps
- Hacking App
- New Hack Tools
- Pentest Tools Tcp Port Scanner
- Tools 4 Hack
- Underground Hacker Sites
- World No 1 Hacker Software
- Hacking Tools For Pc
- Hacking Tools Mac
- Pentest Tools Android
- Hacking Apps
- Blackhat Hacker Tools
- Hacking Tools For Mac
- Hacking Tools Pc
- Hacker Tools Github
- Beginner Hacker Tools
- Wifi Hacker Tools For Windows
- Pentest Tools Online
- Wifi Hacker Tools For Windows
- Hack Tools Download
- Hacking Tools Github
- Hacking Tools Name
- Pentest Box Tools Download
- Pentest Tools Website Vulnerability
- Hacking Tools
- Hacker Tools Linux
- Hacker Hardware Tools
- Pentest Tools Linux
- Hacking Tools For Windows Free Download
- Hacking Tools For Windows 7
- Tools 4 Hack
- Hacker Tools Windows
- Hackers Toolbox
- Pentest Tools Android
- Hack App
- Github Hacking Tools
- Hacking Tools For Kali Linux
- Hacker Tools Hardware
- Pentest Tools Download
- Hacker Security Tools
- Pentest Tools Website
- Hacking App
- Hacking Tools Name
- Pentest Tools For Android
- Underground Hacker Sites
- Hack And Tools
- Easy Hack Tools
- Hack Tools Online
- Hacker Tools Online
- Pentest Tools Free
- Pentest Recon Tools
- Hacker Tools For Pc
- Hack Tool Apk No Root
- Hacker Tools For Windows
- Hack Tool Apk
- Hack App
- Hacker
- Hacking Tools Github
- Nsa Hack Tools Download
- Hacking Tools For Mac
- How To Install Pentest Tools In Ubuntu
- Pentest Tools Nmap
- Pentest Tools Open Source
- Hacker Search Tools
- Pentest Tools Apk
- Best Pentesting Tools 2018
- Hacking Tools
- Pentest Tools Website
- Hack Rom Tools
- Pentest Tools Linux
- Pentest Tools For Mac
- Best Hacking Tools 2020
- Pentest Recon Tools
- Hacker Tools Hardware
- Hack Tools For Pc
- Pentest Tools For Android
- Pentest Tools For Android
No hay comentarios:
Publicar un comentario