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:


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
Memhunter - Automated Memory Resident Malware Detection Memhunter – Automated Memory Resident Malware Detection
Memhunter is an Automated Memory Resident Malware Detection tool for the hunting of memory resident malware at scale, improving threat hunter analysis process.
Sandcastle - AWS S3 Bucket Enumeration Tool Sandcastle – AWS S3 Bucket Enumeration Tool
Sandcastle is an Amazon AWS S3 Bucket Enumeration Tool, formerly known as bucketCrawler. The script takes a target's name as the stem argument (e.g. shopify).
Astra - API Automated Security Testing For REST Astra – API Automated Security Testing For REST
Astra is a Python-based tool for API Automated Security Testing, REST API penetration testing is complex due to continuous changes in existing APIs.
Judas DNS - Nameserver DNS Poisoning Attack Tool Judas DNS – Nameserver DNS Poisoning Attack Tool
Judas DNS is a Nameserver DNS Poisoning Attack Tool which functions as a DNS proxy server built to be deployed in place of a taken over nameserver to perform targeted exploitation.
dsniff Download - Tools for Network Auditing & Password Sniffing dsniff Download – Tools for Network Auditing & Password Sniffing
Dsniff download is a collection of tools for network auditing & penetration testing. Dsniff, filesnarf, mailsnarf, msgsnarf, URLsnarf, and WebSpy passively monitor a network


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