{"items":[{"id":"NVI-00013892","kind":"vulnerability","title":"Go-Attestation: Hash injection into trusted measurement list via unskipped SignatureHeaderSize vendor bytes in parseEfiSignatureList()","revision":1,"unknowns":["Customer inventory, deployment, reachability and exploitation have not been inspected."],"lifecycle":"active","identifiers":["GHSA-9r4w-jg96-92mv","CVE-2026-12681"],"plain_summary":"GitHub lists this reviewed advisory for github.com/google/go-attestation. Published version ranges and source prerequisites are shown below; this is not an inspection of a visitor’s application.","review_status":"source_listed","control_topics":[],"public_actions":[{"summary":"Identify the exact component and deployed version, examine the linked publisher’s conditions, and retain evidence of any mitigation.","source_ids":["sr-1749d5d1fbe6980431eaa30b964d1380"],"action_type":"investigate","limitations":"Confirm current vendor support, compatibility and deployment evidence. This report has not tested a fix in your system.","current_supported_target":null}],"schema_version":"1.1.0","source_metrics":[{"kind":"CVSS","as_of":"2026-08-28T20:48:41.000Z","value":"6.8 high","meaning":"GitHub source severity; exploitability and local consequence require separate evidence.","source_id":"sr-1749d5d1fbe6980431eaa30b964d1380"}],"why_it_matters":"Published affected context helps an owner decide what evidence to gather. This report has not examined your application.","related_sources":[{"id":"sr-1749d5d1fbe6980431eaa30b964d1380","url":"https://github.com/advisories/GHSA-9r4w-jg96-92mv","basis":"vendor_advisory","notes":"GitHub Advisory Database; CC-BY-4.0. Each advisory links its original attribution. Null normalizes fields.","title":"GHSA-9r4w-jg96-92mv","publisher":"GitHub Advisory Database","observed_at":"2026-11-02T02:21:58.521Z"}],"affected_context":[{"certainty":"source_listed","source_ids":["sr-1749d5d1fbe6980431eaa30b964d1380"],"technology":"github.com/google/go-attestation","known_exclusions":[],"conditions_summary":"## Summary\n\n`parseEfiSignatureList()` in `attest/internal/events.go` does not skip\n`SignatureHeaderSize` vendor bytes before reading `EFI_SIGNATURE_LIST`\nsignature entries, violating UEFI specification section 31.4.1.\n\n## Impact\n\nFor `hashSHA256SigGUID` lists, attacker-controlled vendor header bytes are appended directly to the trusted SHA256 hash list. A crafted TPM event log can inject arbitrary SHA256 hashes into the verifier's trusted measurement database, allowing a remote attestation verifier to accept a compromised boot state as legitimate — breaking the core integrity guarantee of remote attestation.\n\n## Root Cause\n\nAfter `binary.Read(&signatures.Header)` reads 28 bytes, `buf` points to the start of the `SignatureHeaderSize` vendor bytes. Both entry loops start at `sigOffset := 0` instead of `sigOffset := SignatureHeaderSize`, causing vendor bytes to be read as signature entries.\n\n## Affected versions\n\nAll versions through commit `f877374` (2026-05-15).\n\n## Fix\n\nPull request: https://github.com/google/go-attestation/pull/502\n\n- Add bound check: `SignatureHeaderSize` must not exceed remaining list space\n- Skip `SignatureHeaderSize` bytes before both entry loops\n- Regression ","public_affected_ranges":["<= 0.6.0"]}],"null_published_at":"2026-11-02T10:00:37.170Z","source_updated_at":"2026-08-28T20:48:41.000Z","source_disclosed_at":"2026-06-12T15:04:43.000Z","is_synthetic_fixture":false,"null_last_reviewed_at":null,"public_change_summary":"First indexed by Null; source disclosure date is shown separately.","null_first_observed_at":"2026-11-02T02:21:58.521Z"}],"next_cursor":null,"snapshot_revision":"42594"}