Tuesday, January 23, 2024

Shadow Attacks … The Smallest Attack Vector Ever

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.

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!!!
 
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.

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.

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 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.
 

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.
trailer
<<
/Size 23
/Prev 18735
/Root 13 0 R
]>>
Honest trailer
trailer
<<
/Size 23
/Prev 19192
/Root 13 0 R
]>>
Malicious trailer
 
 



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.
 
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.
 

Authors of this post

Vladislav Mladenov

Simon Rohlmann

Christian Mainka

Continue reading
  1. Hacking Tools Mac
  2. Ethical Hacker Tools
  3. Growth Hacker Tools
  4. Hacking Tools Name
  5. Hack Tools Download
  6. Hacker Tools List
  7. Pentest Tools Find Subdomains
  8. Hacking Tools For Kali Linux
  9. Hacking Tools Free Download
  10. Hack Tools
  11. World No 1 Hacker Software
  12. Kik Hack Tools
  13. Hacking Tools For Mac
  14. Hack Tools Mac
  15. Pentest Tools Free
  16. Pentest Tools Nmap
  17. Pentest Tools Download
  18. Pentest Tools Open Source
  19. Install Pentest Tools Ubuntu
  20. Pentest Tools Tcp Port Scanner
  21. How To Make Hacking Tools
  22. Pentest Tools Subdomain
  23. Pentest Tools For Windows
  24. Computer Hacker
  25. Hacking Apps
  26. Hack Tools Pc
  27. Pentest Tools Framework
  28. Hacker Tools For Ios
  29. Hack Tool Apk No Root
  30. Best Hacking Tools 2019
  31. Pentest Tools Find Subdomains
  32. Pentest Tools Website Vulnerability
  33. Hacking Apps
  34. Pentest Tools Find Subdomains
  35. Pentest Tools Open Source
  36. Kik Hack Tools
  37. Hacker
  38. Pentest Tools Kali Linux
  39. Hack Tools Online
  40. Hacking Tools Online
  41. Pentest Tools For Mac
  42. Pentest Tools Apk
  43. New Hack Tools
  44. Pentest Tools Android
  45. Computer Hacker
  46. Hack Tool Apk No Root
  47. Pentest Tools Website Vulnerability
  48. Physical Pentest Tools
  49. Hacking Tools For Windows 7
  50. Hacker Tools For Windows
  51. Pentest Tools Url Fuzzer
  52. Easy Hack Tools
  53. What Are Hacking Tools
  54. Pentest Tools Website Vulnerability
  55. Nsa Hack Tools
  56. Hacker Security Tools
  57. Hack Tools Online
  58. Hacker Tools Github
  59. What Is Hacking Tools
  60. Hacking Tools Free Download
  61. Bluetooth Hacking Tools Kali
  62. Hack Tools For Games
  63. Pentest Tools Website Vulnerability
  64. Hacking Tools Windows 10
  65. Pentest Tools Framework
  66. Hak5 Tools
  67. Pentest Tools Framework
  68. Pentest Tools For Windows
  69. Hacking Tools Download
  70. Hacker Tools 2020
  71. Game Hacking
  72. Hacking App
  73. Github Hacking Tools
  74. Pentest Tools Free
  75. Pentest Tools For Ubuntu
  76. Nsa Hack Tools
  77. Hack Tools Download
  78. Hacking Tools Free Download
  79. Hacker Tools Mac
  80. Tools 4 Hack
  81. Hacking Tools Github
  82. Physical Pentest Tools
  83. Hacker Tools Github
  84. Hack Tools For Games
  85. Install Pentest Tools Ubuntu
  86. Free Pentest Tools For Windows
  87. Game Hacking
  88. Hack Tools Online
  89. Hacker Tools Linux
  90. Hacker Tools Windows
  91. Physical Pentest Tools
  92. Hack Tools For Mac
  93. Free Pentest Tools For Windows
  94. Hacker Tools For Pc
  95. Nsa Hacker Tools
  96. Hack Tools Online
  97. Hacker Tools Free Download
  98. Hacker Tools 2020
  99. Hacking Tools Usb
  100. Hacking Tools For Mac
  101. Pentest Tools For Android
  102. Hacking Tools And Software
  103. How To Install Pentest Tools In Ubuntu
  104. Easy Hack Tools
  105. Hack Tools Github
  106. Hack Tools For Ubuntu
  107. Pentest Tools For Ubuntu
  108. Pentest Tools Open Source
  109. Hacker Tools 2020
  110. Hacking Tools For Windows
  111. Pentest Tools Tcp Port Scanner
  112. Hacker Tools Apk
  113. Nsa Hack Tools Download
  114. Pentest Box Tools Download
  115. Hacker Tools For Pc
  116. Termux Hacking Tools 2019
  117. Hacking App
  118. Pentest Tools For Ubuntu
  119. Hacker Tools Apk Download
  120. Hacking Tools 2019
  121. What Are Hacking Tools
  122. Hacking Tools For Kali Linux

No comments:

Post a Comment