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

musycc_intr0 SHT event path dereferences sc->chan[ch] without the NULL check all sibling paths perform

Summary

In the interrupt event dispatch, the SHT short-buffer branch writes sc->chan[ch]->last_rxerr/short_error with no NULL check, while every sibling consumer of the same hardware-extracted channel index checks (tx_eom/rx_eom bail on NULL; their own comments concede events for unconfigured channels occur). Any event word naming a never-hooked channel drives a write to address ~offsetof(last_rxerr) - NULL-deref write panic in hard-interrupt context. Stray/stale hardware events needed; sibling-guard fix.

Discussion (0)

No comments yet.

PoC verification

Evidence pack

findings/poc/DF-4295 Β· 2 files
FileTypeDescriptionSize
README.md file 181 B ↓ raw
verdict.json file 807 B view raw
README.md file
↓ download raw

DF-4295

Hardware-gated (musycc) finding - PoC skipped per contract. Source citations in the pass-2 result block.

Fix: NULL guard exactly like the sibling tx_eom/rx_eom handlers

Fix verification

not_testable
baseline no→ patch + rebuild →patched clean

NULL guard exactly like the sibling tx_eom/rx_eom handlers

source-only
per-fix-DF-4295

Confirmed kernel references

Detail

Exploit chain

[]

Evidence (decisive lines)

source-only; full path:line trace in pass-2 result block

Verdict

source-verified; hardware-gated (LMC1504 PCI absent on audit guest; ng control socket root-only)