SRC-2016-0041 : Foxit Reader FlateDecode Use-After-Free Remote Code Execution Vulnerability
This vulnerability allows remote attackers to execute arbitrary code on vulnerable installations of Foxit Reader. User interaction is required to exploit this vulnerability in that the target must visit a malicious page or open a malicious file.
The specific flaw exists within FlateDecode. A specially crafted PDF with a specific FlateDecode stream can force a dangling pointer to be reused after it has been freed. An attacker could leverage this vulnerability to reach a switch statement and execute arbitrary code under the context of the current process.
Foxit has issued an update to correct this vulnerability. More details can be found at:
- 2016-09-29 – Vulnerability reported to vendor
- 2016-09-30 – Vulnerability confirmed by the vendor
- 2016-10-18 – Coordinated public release of advisory
Proof of Concept:
This vulnerability was discovered by Steven Seeley of Source Incite