Forgot your password?
typodupeerror
Security IT

New Method Could Hide Malware In PDFs, No Further Exploits Needed 234

Trailrunner7 writes "A security researcher has managed to create a proof-of-concept PDF file that executes an embedded executable without exploiting any other security vulnerabilities. The PDF hack, when combined with clever social engineering techniques, could potentially allow code execution attacks if a user simply opens a rigged PDF file. With Adobe Reader, the only thing preventing execution is a warning. Disabling JavaScript will not prevent this."
This discussion has been archived. No new comments can be posted.

New Method Could Hide Malware In PDFs, No Further Exploits Needed

Comments Filter:
  • Sad (Score:2, Troll)

    by 2.7182 ( 819680 )
    If only some great pdf/security teacher would take these poor code monkeys who have no future and teach them how to fix this.
    • Re:Sad (Score:5, Insightful)

      by sopssa ( 1498795 ) * <sopssa@email.com> on Wednesday March 31, 2010 @02:56PM (#31691352) Journal

      But for once Adobe is actually more secure than the better alternative Foxit. Adobe PDF Reader at least warns and asks your permission to run the file, but Fox It does neither one but just happily runs it. That fact made me uninstall Foxit for now at least.

      • Re:Sad (Score:5, Informative)

        by amicusNYCL ( 1538833 ) on Wednesday March 31, 2010 @03:02PM (#31691456)

        That fact made me uninstall Foxit for now at least.

        You shouldn't have to wait long.

        http://forums.foxitsoftware.com/showthread.php?t=18029 [foxitsoftware.com]

        this issue has been confirmed, and a maintenance version will be released within this week.

      • Re:Sad (Score:4, Insightful)

        by c-reus ( 852386 ) on Wednesday March 31, 2010 @03:22PM (#31691758) Homepage

        Of course, the average user is known to thoroughly read the warnings and definitely will not click "OK, just get this thing out of my face" within half a second after the dialog box has finished rendering.

      • Re:Sad (Score:5, Informative)

        by Romancer ( 19668 ) <romancer@@@deathsdoor...com> on Wednesday March 31, 2010 @03:28PM (#31691826) Journal

        From the author:

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

        Not really a proof of concept since the proof doesn't actually run the code currently. Not that it couldn't but there's no proof that Foxit is less secure since it doesn't actually run the code.

        • Re:Sad (Score:4, Informative)

          by Spad ( 470073 ) <slashdot&spad,co,uk> on Wednesday March 31, 2010 @03:39PM (#31692000) Homepage

          http://blog.didierstevens.com/2010/03/31/escape-from-foxit-reader/ [didierstevens.com]

          He got it working in Foxit pretty quickly after the first post about the PoC.

          • Re:Sad (Score:5, Informative)

            by Pentium100 ( 1240090 ) on Wednesday March 31, 2010 @04:00PM (#31692366)

            Also the first comment there says how you can hex edit the .exe to disable this "feature".

            If you can live without the /Launch functionality (I can!), edit the executable:

            - search for “^@Launch^@” (^@ == null byte, file offset 7040965 in 3.13.1030) in Foxit Reader.exe,

            - change it to e.g. “L!unch” (no quotes),

            - save AS BINARY,

            done.

            Comment by Thomas — Wednesday 31 March 2010 @ 12:20

        • by bynary ( 827120 )
          ...I was thinking PoC meant Piece of Crap which I thought was redundant when referring to a PDF.
          • Huh, where I work, it stands for "products of conception". I was a little confused when reading the article.

          • Re: (Score:3, Funny)

            ...I was thinking PoC meant Piece of Crap which I thought was redundant when referring to a PDF.

            In my experience, the proper industry acronym is BFPoC, for Big Fat Piece of Crap, a term allegedly coined by one Artemus Clyde Frog.

          • Re: (Score:3, Insightful)

            by Grishnakh ( 216268 )

            PDF is (or was) a good format and standard; it lets you define documents so that they look the same on any platform, and can be printed on any printer and look identical.

            The only problem with it is that it was perfected for this purpose long ago, so Adobe kept adding more and more crap to it.

            This is one reason open-source is generally better: when an open-source project is done, the developers leave it that way (unless any bugs are found), and go find something else productive to work on. They don't try to

      • Re: (Score:3, Interesting)

        Comment removed based on user account deletion
        • Re:Sad (Score:4, Informative)

          by causality ( 777677 ) on Wednesday March 31, 2010 @05:21PM (#31693618)

          I'm behind the times. Isn't the PDF format a document format, that contains only document markup and layout info? When did it start being able to have embedded code?

          Ever since Adobe perfected the basic PDF functionality and needed to keep adding features. Whether they are frills or not, whether they depart from the purpose of PDF or not, Adobe has to do this to justify its marketing. They want their customers to have reasons to keep wanting the latest version. Feature creep, in other words.

  • With Foxit Reader (Score:5, Interesting)

    by wiredog ( 43288 ) on Wednesday March 31, 2010 @02:56PM (#31691346) Journal

    There's no warning at all. It just runs. [zdnet.com]

  • by Anonymous Coward on Wednesday March 31, 2010 @03:02PM (#31691450)
    Who the hell thought it was a good idea to have dynamic content in a document description language?

    Notice you never hear about exploits-of-the-week like this for LaTeX !
    • What dynamic content? This has nothing to do with JavaScript.

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

      • by plover ( 150551 ) *

        What dynamic content? This has nothing to do with JavaScript.

        Dynamic content != JavaScript.

        Dynamic content is a generic name for all manner of executable things, including not only PDFs and JavaScript, but also LaTeX, ActiveX, VBScript, etc. JavaScript is simply one of many different implementations of dynamic content.

        In this case it's a "/Launch" command in the PDF syntax that's being exploited.

      • PostScript, the basis of PDF, is a full, turing-complete programming language! This has nothing to do with JavaScript!

      • What JavaScript? This has to do with dynamic content.

        You've heard of PostScript, right?
    • by TheRaven64 ( 641858 ) on Wednesday March 31, 2010 @03:10PM (#31691562) Journal

      I can't decide if you're trying to be ironic, but there are no 'vulnerabilities' in LaTeX because the ability to interact with files and run arbitrary programs are part of the language. The reason LaTeX isn't often exploited is that it is very rare to run LaTeX programs from untrusted sources; you distribute the output from the program, not the program itself.

      On a slightly different topic, is there a competition going on in Adobe to see if the Flash or Acrobat teams can collect the most security advisories?

      • "... competition going on in Adobe to see if the Flash or Acrobat teams can collect the most security advisories?"

        There seems to be a social breakdown at Adobe. There are a lot of issues that aren't being managed well. For example, we bought Adobe Creative Suite 3 (before CS4 was released). The CD had an old version. To get the newest version it was necessary to download a 320 Megabyte file, on the same week that Adobe shipped the CD.

        The new Acrobat takes longer to make .PDF files than the older versi
    • Re: (Score:3, Informative)

      by Chyeld ( 713439 )

      PDF is the evolved form of PostScript - http://en.wikipedia.org/wiki/PostScript [wikipedia.org] and at the time PS came out, it wasn't that bad of an idea, especially since it enabled us to actually print IMAGES.

      Unfortunately, feature creep set in and instead of creating a language actually meant for publishing and sharing documents, Adobe just reimplemented PS in PDF and glossed over the fact that they were using an elephant gun to shoot mosquito. This is coming back around to bite them in their butt. But the actual origi

      • PS is a full programming language, as witnessed by those web servers and fractal generators that, I imagine, take ages to run on a printer. Thus PDF was originally created as a simpler page description language, but have you ever heard of PS exploits?
        • by Chyeld ( 713439 )

          Actually while I was a CS major one of our labs was half NeXTSTEP (http://en.wikipedia.org/wiki/NeXTSTEP) and was aware of graduate students who pranked each other on the lab computers using the fact that the computers used postscript as a display engine.

      • by pclminion ( 145572 ) on Wednesday March 31, 2010 @07:30PM (#31695088)

        PDF has some superficial syntactic similarities to PostScript. Beyond that, it is not at all like PostScript. The reason the content stream language of PDF is PostScript-like is because it made it easy to print PDF by simply blowing the content stream out as PostScript, accompanied by the appropriate ProcSets. Such usage is deprecated these days -- ProcSets are no longer required to be declared, and modern PDFs can't be printed by blowing the content stream directly to the printer any more.

        Even in the areas where PDF looks like PostScript, it's fundamentally different. There is no operand stack. There are no control flow operators. If you start trying to create a PDF under the impression that it's just like PostScript, you'll fail miserably.

    • Re: (Score:2, Insightful)

      by jirka ( 1164 )

      Why don't you compile the following document with "tex --shell-escape" as root

      \write18{rm -fR /}

    • Who the hell thought it was a good idea to have dynamic content in a document description language?
      Notice you never hear about exploits-of-the-week like this for LaTeX !

      That's a good question. Someone should be asking the people who put Javascript in Netscape the same thing! I mean, there's absolutely no use cases for having dynamic documents!

  • by Manip ( 656104 ) on Wednesday March 31, 2010 @03:07PM (#31691514)

    "This cannot be patch because it isn't a vulnerability." Uhh yes it can, and sure it is. There are millions of bugs that were entirely by design and the designs adapted to eliminate them. I will grant that they might have to break the PDF spec' to fix it but frankly it is the right thing to do for everyone concerned.

    • Re: (Score:3, Insightful)

      by Applekid ( 993327 )

      Exactly. To execute code, at some point, the reader is branching into data created or loaded by the pdf. When is that ever a good idea? If it's part of the PDF spec then it's a pretty good part to break compatibility with.