CVE-2026-74875Medium▾ Sunlitopenssl-encrypt silently skips schema validation when jsonschema library is not installed
▾ Sunlit zone — Low / medium · no exploitation signal
impact 27.5 · likelihood 0 · exploitation 0
Need a working PoC? Pro members can cast a request and our team develops one — it lands right here.
Exploit-prediction probability, daily snapshots since Aug 18.
Disclosure to exploitation, from the record and what we observed since indexing it.
Disclosed via OSV
Last analysed / modified upstream
0.2%
In openssl_encrypt/modules/json_validator.py at lines 234-238, when the jsonschema library is not installed, all schema validation is silently skipped with only a print warning.
if not JSONSCHEMA_AVAILABLE:
print(f"Warning: Cannot validate against schema '{schema_name}' - jsonschema library not available")
return
Additionally, unknown metadata format versions (line 288-293) bypass schema validation entirely, and all schemas use additionalProperties: true allowing arbitrary extra fields.
An attacker who can influence the Python environment (remove the jsonschema package) or craft metadata with an unknown version number can bypass all schema checks. Malformed or malicious metadata will be accepted without validation.
jsonschema a required dependency, not optionaladditionalProperties: false in schemasFixed in commit 6e7f938 on branch releases/1.4.x — validate_against_schema() now raises JSONValidationError when jsonschema is unavailable instead of silently passing; changed print() warning to logging.warning().
openssl-encrypt < 1.4.0Upgrade to a patched release:
openssl-encrypt 1.4.0Connected by shared product, vendor, weakness, or advisory.
CVE-2026-74874Mediumopenssl-encrypt has non-cryptographic PRNG used for steganography pixel selection
CVE-2026-74872Mediumopenssl-encrypt: Dynamic .so loading for Whirlpool uses broad glob pattern without integrity verification
CVE-2026-74877Mediumopenssl-encrypt has no owner verification on key revocation — any client can revoke any key
CVE-2026-74878Criticalopenssl-encrypt: TOTP rate limiter is in-memory only — not shared across workers, lost on restart
CVE-2026-74873Mediumopenssl-encrypt has visible password in process list via --password CLI argument
CVE-2026-74876Mediumopenssl-encrypt's unverified key bundle from_dict() + to_identity() path allows encryption to attacker keys