← ClaudeAtlas

auditing-secure-boot-and-firmware-signinglisted

Audit updater and bootloader code for a firmware trust boundary that lets an unsigned or downgraded image be flashed or booted. Covers an update image that reaches a flash write or a boot jump with no signature check between receipt and commit, a verification result that is ignored or inverted, an integrity hash mistaken for an authenticity signature, a signature checked over the wrong or partial bytes or over a different buffer than the one committed, a verification key kept in writable storage or selected by a field in the image, and anti-rollback that is missing or checked before the signature so a known-vulnerable version re-flashes. Use when reviewing code that receives, verifies, flashes, or boots a firmware image. The received image is the source, the flash write or boot jump is the sink, and a verified authenticity check failing to dominate that path is the bug.
UnboundCompute/security-agent-skills · ★ 4 · AI & Automation · score 80
Install: claude install-skill UnboundCompute/security-agent-skills
# Auditing secure boot and firmware signing: does a verified signature gate every path to flash and boot Firmware is the most durable place an attacker can land, and the whole defense is one property: an image is verified for authenticity before any code writes it to a boot slot or jumps to it. Auditing that property is a domination question, not a checklist. Trace the received image to every place it is committed, to flash or to the program counter, and ask whether a correct, enforced signature check stands on every path, over the exact bytes that reach the commit, against a key the attacker cannot influence. The common failures are all ways that check is absent, thrown away, checking the wrong thing, or checking the wrong bytes. You find them by reading the receipt-to-commit path, not by trusting that a function named verify verifies. ## When to use - Code receives a firmware image over an update channel and writes it to flash or activates a boot slot. - A bootloader decides whether to execute an image at startup. - You want to know whether an unsigned, tampered, or downgraded image can be flashed or booted. ## Scope check Audit firmware trust boundaries only on devices and code you own or are authorized to assess, and flash crafted images only to hardware in scope. A confirmed secure-boot bypass is persistent code execution, so treat it accordingly and coordinate. If you can't name the authorization, stop. ## The loop 1. **Map the receipt-to-commit paths.** Find whe