Booby-trapping PDF files: A new how-to

Built-in insecurity

Updated A security researcher has demonstrated a mechanism that exploits PDF files without taking advantage of any particular vulnerabilities.

Didier Stevens' proof of concept exploit relies on running an executable embedded in a PDF file - something that ought to be blocked - by launching a command that ultimately runs an executable.

In the case of Adobe Reader, such attempted launches generate a pop-up dialog box asking users if they want to proceed. However, this is not necessarily a major hurdle because Stevens was also able to manipulate the text displayed by the pop-up in a way that might easily fool most users.

"With Adobe Reader, the only thing preventing execution is a warning," Stevens explains. "Disabling JavaScript will not prevent this, and patching Adobe Reader isn’t possible (I’m not exploiting a vulnerability, just being creative with the PDF language specs)."

"I shared my PoC with Adobe’s PSIRT. Maybe they will come up with a solution to prevent this, should they consider that the protection offered by the warning dialog is not sufficient," he added.

The approach is not limited to an attack on Adobe Reader, already one of applications most frequently targeted by malware authors and hackers, and it might work on FoxIT Reader (after some tweaking) to even greater effect because attacks might be carried out without requiring user interaction.

"Foxit Reader is probably worse than Adobe Reader, because no warning gets displayed to prevent the launch action," Stevens explains. "My PoC PDF requires some changes for Foxit Reader, because ultimately, the executable doesn’t run. But that’s probably due to some variation in the PDF language supported by Foxit Reader."

In a statement, FoxIT acknowledged this insecure bahaviour bug and promised a fix by early next week.

Foxit takes every security concern seriously and we focus our engineering resources at determining the cause of the problem and coming up with a complete and safe solution. Upon hearing of a possible security concern, our development team went to work and a resolution was determined in less than 24 hours and an updated version of the Foxit Reader will be made public in the next 72 hours.

We want our 100,000,000 plus Foxit Reader user base to be assured that Foxit dedication to providing the best alternative PDF reader is our primary goal.

Stevens is withholding his proof of concept exploit code but has produced an advisory, containing video clips, illustrating the PDF peril he has pinpointed here.

Mikko Hypponen, chief research officer at net security firm F-Secure, spurred on by this research, took a closer look at specifications for the PDF file format to see what kind of content was allowed. He discovered you can embed movies and songs, JavaScript, and forms that upload data a user inputs to a web server within PDFs. And there's no forgetting the function within PDF specs to launch executables.

"With specs like these, it's no wonder it takes ages for Adobe Reader to boot up and load all the plugins," Hypponen writes. "It's no wonder there are regular security problems with PDF readers in general."

F-Secure, which has long advocated that users might do well to try alternative PDF viewers not so frequently affected by security glitches as Adobe Reader, has now begun advocating the use of browser plugins like gPDF in order to open PDFs remotely in viewers like Google Docs. ®

Sponsored: 10 ways wire data helps conquer IT complexity