Fickle PDFs: Exploiting Browser Rendering Discrepancies for Fraud
PortSwigger researcher Zakhar Fedotkin reveals a security vulnerability termed 'Fickle PDFs,' which exploits inconsistencies in how different web browsers and PDF viewers render interactive forms. By manipulating widget annotations and form field default values, attackers can create hybrid PDF documents that display different content depending on the software used to open them. For instance, an invoice might show a lower price in Safari or MacOS Preview, while displaying a significantly higher amount in Google Chrome, Firefox, or Google Drive. This discrepancy arises because browsers like Chrome prioritize form field defaults upon interaction, whereas others rely on widget annotations. The research demonstrates how this technique could facilitate fraud, such as tricking executives into approving lower amounts before accounting departments process higher ones. Additionally, AI tools like ChatGPT may misinterpret these files by ignoring annotations entirely. The article provides technical details and code using the Apache PDFBox library to generate such files, urging organizations to exercise caution when handling PDF invoices and granting AI access to email systems due to the ambiguous nature of PDF rendering standards.
Wire timeline
Fickle PDFs: Exploiting Browser Rendering Discrepancies for Fraud
PortSwigger researcher Zakhar Fedotkin reveals a security vulnerability termed 'Fickle PDFs,' which exploits inconsistencies in how different web browsers and PDF viewers render interactive forms. By manipulating widget annotations and form field default values, attackers can create hybrid PDF documents that display different content depending on the software used to open them. For instance, an invoice might show a lower price in Safari or MacOS Preview, while displaying a significantly higher amount in Google Chrome, Firefox, or Google Drive. This discrepancy arises because browsers like Chrome prioritize form field defaults upon interaction, whereas others rely on widget annotations. The research demonstrates how this technique could facilitate fraud, such as tricking executives into approving lower amounts before accounting departments process higher ones. Additionally, AI tools like ChatGPT may misinterpret these files by ignoring annotations entirely. The article provides technical details and code using the Apache PDFBox library to generate such files, urging organizations to exercise caution when handling PDF invoices and granting AI access to email systems due to the ambiguous nature of PDF rendering standards.
PortSwigger Research