Highlights
Auth Bypass: 13 prior fixes. Scrutinize any change in this area.
sign: most-fixed (10 issues). Treat as high-risk during review.
23 high-severity fixes in this history; regressions here are high-impact.
Recurring patterns
The bug types that recur here, drawn from past fixes, not open vulnerabilities.
Auth Bypass: Attackers can bypass cryptographic signature verification through structural document updates, unvalidated PDF revisions (such as /Tabs or AcroForm modifications), and flaws in certificate revocation list (CRL) and OCSP validation chains. Enforcing conservative document reading and checking whole-document byte coverage are critical to preventing wrapping attacks.
Deserialization of Untrusted Data: Unsafe object deserialization was historically possible due to the Base64 utility containing a decodeToObject helper and the widespread implementation of the Serializable interface across core modules. Core classes should never implement Serializable unless strictly necessary and tightly constrained.
XXE: XML parsing contexts in metadata parsing (XMPMetaParser) and interactive forms (XfaForm) were vulnerable to external entity injection and XML entity expansion. Explicitly configuring SafeEmptyEntityResolver and forcing secure Xerces implementations are required to mitigate this.