Several PDF viewers and online validation services contain vulnerabilities that can be exploited to make unauthorized changes to signed PDF documents without invalidating their digital signature.
The list of vulnerable applications includes popular software such as Adobe Reader, Foxit Reader, LibreOffice, Nitro Reader, PDF-XChange and Soda PDF. Flawed validation services include DocuSign, eTR Validation Service, DSS Demonstration WebApp,
Digital signing files, including PDF ones, allows to protect them against unauthorized modifications, this practice is very common among enterprises and government organizations.
The experts devised three PDF signature spoofing attack techniques, they demonstrated that almost any PDF viewer analyzed and online validation services are vulnerable to the attack methods.
The three attack methods were named Universal Signature Forgery (USF), Incremental Saving Attack (ISA), and Signature Wrapping Attack (SWA).
Adobe Reader 9 running on Linux is the only application that is not vulnerable to at least one type of attack.
The only service that was not vulnerable to at least one type of attack was DSS Demonstration WebApp 5.4 version.
The experts reported their findings to the German CERT-Bund that share them with impacted vendors. The good news is that all of the companies providing PDF viewing apps have released security patches to address the issue, while some online services have yet to address the bugs.
In the Universal Signature Forgery attack, an attacker can manipulate meta information in the signature, in this way the application used to open verify the signature is not able to access data needed for validation but continues to consider the signature as valid for some applications, such as Acrobat Reader DC and Reader XI.
The Incremental Saving Attack (ISA) attack leverages a legitimate feature in the PDF specification that allows files to be updated by appending changes, such as storing annotations or adding new pages to the document. The attack
The Signature Wrapping Attack attack forces the signature verification logic to analyze a portion of the document that is different from the original one. This is done by “relocating the originally signed content to a different position within the document and inserting new content at the allocated position.” The SWA a