β¬’ DragonFlyBSD Kernel Audit
← triage Β· dashboard
DF-5274

cdgetccb() stores its result in a function-static 'union ccb *' β€” concurrent callers on different SIM locks can receive the same ccb (double xpt_release_ccb) or leak one

Summary

Function-static scratch shared across all instances and SIM locks: two CD devices on different HBAs issuing commands concurrently can both receive the same ccb pointer -> double xpt_release_ccb (CCB zone double-free/UAF family) while the other leaks. cam_periph_getccb itself sleeps, widening interleavings. Tiny window, hard to hit deliberately. Pre-ANSI heritage 'static'. Make-it-a-local fix.

Discussion (0)

No comments yet.

PoC verification

Evidence pack

findings/poc/DF-5274 Β· 1 files
FileTypeDescriptionSize
verdict.json file 890 B view raw

Fix verification

not_testable
baseline no→ patch + rebuild →patched clean
per-fix-DF-5274

Confirmed kernel references

Detail

Evidence (decisive lines)

static trace in finding markdown

Verified recommended fix

see finding markdown

Verdict

untested (Low race window / Info hardening; static proof)