Origami – Parse, Analyze & Forge PDF Documents


origami is a Ruby framework designed to parse, analyze, and forge PDF documents. This is NOT a PDF rendering library. It aims at providing a scripting tool to generate and analyze malicious PDF files. As well, it can be used to create on-the-fly customized PDFs, or to inject (evil) code into already existing documents.

Features

  • Create PDF documents from scratch.
  • Parse existing documents, modify them and recompile them.
  • Explore documents at the object level, going deep into the document structure, uncompressing PDF object streams and desobfuscating names and strings.
  • High-level operations, such as encryption/decryption, signature, file attachments…
  • A GTK interface to quickly browse into the document contents.

Full Scripts

Some scripts are provided to help in performing common actions on PDF files. You can contribute more by sending your own scripts to origami(at)security-labs.org.

  • detectjs.rb: search for all JavaScript objects.
  • embed.rb: add an attachment to a PDF file.
  • create-jspdf.rb: add a JavaScript to a PDF file, executed when the document is opened.
  • moebius.rb: transform a PDF to a moebius strip.
  • encrypt.rb: encrypt a PDF file.

You can download Origami here:

origami-1.0.0-beta1.tar.gz

Or read more here.

Posted in: Forensics, Hacking Tools, Privacy

, , ,


Latest Posts:


Axiom - Pen-Testing Server For Collecting Bug Bounties Axiom – Pen-Testing Server For Collecting Bug Bounties
Project Axiom is a set of utilities for managing a small dynamic infrastructure setup for bug bounty, basically a pen-testing server out of the box with 1-line.
Quasar RAT - Windows Remote Administration Tool Quasar RAT – Windows Remote Administration Tool
Quasar is a fast and light-weight Windows remote administration tool coded in C#. Used for user support through day-to-day administrative work to monitoring.
Pingcastle - Active Directory Security Assessment Tool Pingcastle – Active Directory Security Assessment Tool
PingCastle is a Active Directory Security Assessment Tool designed to quickly assess the Active Directory security level based on a risk and maturity framework.
Second Order - Subdomain Takeover Scanner Tool Second Order – Subdomain Takeover Scanner Tool
Second Order Subdomain Takeover Scanner Tool scans web apps for second-order subdomain takeover by crawling the application and collecting URLs (and other data)
Binwalk - Firmware Security Analysis & Extraction Tool Binwalk – Firmware Security Analysis & Extraction Tool
Binwalk is a fast and easy to use Python-based firmware security analysis tool that allows for firmware analysis, reverse engineering & extracting of firmware.
zBang - Privileged Account Threat Detection Tool zBang – Privileged Account Threat Detection Tool
zBang is a risk assessment tool for Privileged Account Threat Detection on a scanned network, organizations & red teams can use it to identify attack vectors


7 Responses to Origami – Parse, Analyze & Forge PDF Documents

  1. anonymous October 20, 2009 at 3:00 pm #

    clamav reports this containts a virus.

    http://www.virustotal.com/analisis/03d625dd6742e83e1cf1e7aada8ac8204c837386922d724032600a741c8dd32d-1256051167

  2. Sebastian Haensch October 20, 2009 at 3:18 pm #

    Panda reports Eicar.Mod thats funny…

    EICAR: http://en.wikipedia.org/wiki/EICAR_test_file
    I use this string sometimes during security audits. Panda reports the string as Eicar.Mod

    I havn’t looked trough the code but I wonder if it contains the EICAR string or what hack Panda is trying to tell us here :)

  3. K.P. October 21, 2009 at 2:15 am #

    Avast reports JS:Pdfka-FS exploit ?!

    Whatsup?

  4. Darknet October 21, 2009 at 3:09 am #

    It’s a PDF exploitation tool and you guys are questioning why AV detects a PDF exploit inside, you baffle me really.

  5. M October 21, 2009 at 11:49 am #

    What’s a moebius strip in this context?

  6. Rishabh Dangwal October 21, 2009 at 12:27 pm #

    amateurs…

  7. Sebastian Haensch October 21, 2009 at 9:41 pm #

    everyone was an amateur once….. even you

    detection routines trigger on hack tools like this since they contain exploit code or can be used for harmfull actions. it’s a common behavior.

    i talked to my guy at panda labs today, he was suprised that panda actually reports a virus.test.string instead of exploit.code, somethin wrong but nothin to worry about it will be detected as hacktool by panda soon