Tag

MuPDF

1 stories

MuPDF's PDF encryption key had only 512 possibilities, and a script cracks it in 11 ms (v12.sh)

MuPDF before 1.28.5 seeded a drand48-style generator with the current Unix time and read bytes from bits that ignore most of the seed, so timestamps 512 seconds apart give identical keys. The author brute-forces all 512 in about 11 ms of unoptimised Python.

Foxit Reader has a related flaw; already-published PDFs cannot be protected retroactively.