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:


GitLab Watchman - Audit Gitlab For Sensitive Data & Credentials GitLab Watchman – Audit Gitlab For Sensitive Data & Credentials
GitLab Watchman is an app that uses the GitLab API to audit GitLab for sensitive data and credentials exposed internally, this includes code, commits, wikis etc
GKE Auditor - Detect Google Kubernetes Engine Misconfigurations GKE Auditor – Detect Google Kubernetes Engine Misconfigurations
GKE Auditor is a Java-based tool to detect Google Kubernetes Engine misconfigurations, it aims to help security & dev teams streamline the configuration process
zANTI - Android Wireless Hacking Tool Free Download zANTI – Android Wireless Hacking Tool Free Download
zANTI is an Android Wireless Hacking Tool that functions as a mobile penetration testing toolkit that lets you assess the risk level of a network using mobile.
HELK - Open Source Threat Hunting Platform HELK – Open Source Threat Hunting Platform
The Hunting ELK or simply the HELK is an Open-Source Threat Hunting Platform with advanced analytics capabilities such as SQL declarative language, graphing etc
trape - OSINT Analysis Tool For People Tracking Trape – OSINT Analysis Tool For People Tracking
Trape is an OSINT analysis tool, which allows people to track and execute intelligent social engineering attacks in real-time.
Fuzzilli - JavaScript Engine Fuzzing Library Fuzzilli – JavaScript Engine Fuzzing Library
Fuzzilii is a JavaScript engine fuzzing library, it's a coverage-guided fuzzer for dynamic language interpreters based on a custom intermediate language.


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