Highlights
Information Disclosure: 2 prior fixes. Scrutinize any change in this area.
owner/src/main/java/org/aeonbits/owner/loaders/XMLLoader.java: most-fixed (2 issues). Treat as high-risk during review.
4 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.
XXE: Two separate fixes were required to fully disable external entities, parameter entities, and DTD loading, indicating a high risk of regression if hardening is not applied consistently across all XML parsing paths.
JNDI Injection: The loader previously allowed arbitrary JNDI names, enabling remote lookups (Log4Shell-style). The fix restricts to java: names only, but any alternate JNDI resolution path must enforce the same allowlist.
Cryptographic Weakness (ECB with raw key): The original AES/ECB implementation used a raw passphrase as key, leaking secret equality. The fix introduces AES-256/GCM with PBKDF2, random IVs, and AAD, but any copy of the old pattern must be replaced.