Vulnerability DatabaseGHSA-v562-gjx2-cg8p

GHSA-v562-gjx2-cg8p: 
Python vulnerability analysis and mitigation

Impact

GHSA-97w6-wf7p-cx66 fixed negative literals in check_proof, and 0.1.7's release notes said every step is validated before either checker runs. That was true of check_proof only. DRATChecker, which dratify also exports, indexed its arrays with whatever it was given, and accepted the same refutations of satisfiable formulas.

from dratify import parse_dimacs, DRATChecker
f = parse_dimacs("p cnf 1 1\n1 0\n")
DRATChecker(f).check([("a", (-1,)), ("a", ())]).ok   # True before 0.1.11

The formula is satisfied by setting variable 1 true. As with the earlier advisory, Python counted the negative index from the end of the array. The same gap let CNF.clauses carry unchecked values. A negative literal written there directly, past the validating CNF.add, could give ok=True from check_proof with engine="python", and OverflowError from the native engine. The checkers disagreed on this input. You are affected only if you construct DRATChecker yourself and pass it steps holding DIMACS integers or data you did not convert with dratify.lits.from_dimacs, or you write to CNF.clauses directly. The README does not describe DRATChecker, so reaching this takes a deliberate choice. Not affected:

  • check_proof with proofs as text, a MemoryProof or a list of steps, on a formula built through the parser or CNF.add.
  • DRATChecker with steps from parse_proof, the safe route.
  • DRATChecker.check_step alone never sets result.ok, though it does return True for such a step.
  • The Rust crate, whose literals are unsigned.

Patches

Fixed in dratify 0.1.11. DRATChecker now validates in the checker, in __init__, check and check_step, so no route reaches its arrays with a raw value. check_proof also validates CNF.clauses before either engine runs, so both raise ValueError.

Workarounds

Upgrade. Otherwise, call check_proof rather than DRATChecker, and fill CNF only through CNF.add.

References


Source: NVD

Related Python vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

GHSA-8g49-pg6g-xgrfMEDIUM4.7
  • Python logoPython
  • headroom-ai
NoYesNov 09, 2026
GHSA-xccm-c64j-hf7gCRITICALN/A
  • Python logoPython
  • dratify
NoYesNov 09, 2026
GHSA-v562-gjx2-cg8pMEDIUMN/A
  • Python logoPython
  • dratify
NoYesNov 09, 2026
GHSA-2j4v-jw9r-f4gwHIGHN/A
  • Python logoPython
  • dratify
NoYesNov 09, 2026
GHSA-frwq-4xqx-frmcHIGHN/A
  • Python logoPython
  • atlaso
NoYesNov 09, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Additional Wiz resources

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management