Hacker News new | ask | show | jobs
by robinsonb5 81 days ago
Just like Doom-in-a-PDF, this is in equal measure incredibly impressive and utterly horrifying that it's possible.
2 comments

PostSscript files came from the same company in the 80's -Adobe- and with GhostScript and zmachine.ps you can play Zork I-III, Calypso, Tristam Island and the rest of propietary Infocom text adventures on it with ease.

What zmachine.ps does is to emulate the ZMachine VM in PostScript and display the output to stdout/console.

And if it werent for the PS stack limitations for sure you could emulate Linux under Risc-V.

Heck, you can emulate old RISC Linux' syscalls (enough to run static binaries) in Perl without ever calling to C bindings, not even once.

PostScript is awesome - I still use it to do this day for hacking together Variable Data Printing projects, with the aid of GhostScript.
> Just like Doom-in-a-PDF, this is in equal measure incredibly impressive and utterly horrifying that it's possible.

Yes but at the same time we now have options... For example it's now totally possible to do the following:

    - intercept any PDF downloaded
    - send it to a sandboxed app before opening
    - open it from withing the sandbox
    - headlessly screenshot every page to images
    - pull the pictures (one per page) out of the sandbox
    - reconstruct a similar PDF from the pictures
It's not hard and it can literally be vibe coded in a few prompts (because it's really not hard).

Some people are going to say: "But PDFs aren't supposed to be PICTURES, it has to be searchable, so we want our Turing-complete, exploits-ridden, 2 GB big PDF readers running as admin/root and we insist, we repeat INSIST, to have our ability to open any unkown PDF from any proprietary PDF readers for that is the way!".

Thing is: we know have tool that can extract text from pictures too and they work perfectly fine.

So, yup, the surface attack PDFs have is utterly horrifying but we're already at a point where we can just honey-badge any potentially evil PDF into a well-behaving one.

Or, you know, instead of burning tokens/trees we could use a well established project instead ;) https://github.com/freedomofpress/dangerzone