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

dsp_oss_syncgroup frees inserted smrd without removing from sg->members on unreachable M_WAITOK error branch

Summary

dsp_oss_syncgroup at dsp.c:2920: SLIST_INSERT_HEAD sg->members smrd, then :2930 smwr=kmalloc(M_WAITOK). :2931 if(smwr==NULL) dead branch (M_WAITOK). :2948 error path kfree(smrd) WITHOUT SLIST_REMOVE -> freed node remains in sg->members -> UAF on next SYNCGROUP iter. Unreachable today. Fix: SLIST_REMOVE before kfree, clear NOTRIGGER flags.

Discussion (0)

No comments yet.

PoC verification

Evidence pack

findings/poc/DF-1263 Β· 1 files
FileTypeDescriptionSize
manifest.json file 394 B view raw

Fix verification

not_testable
baseline reproduced→ patch + rebuild →patched clean

recommended fix identified; fix.diff not authored/validated in this batch

recommended fix identified; fix.diff not authored/validated in this batch
combined build rc=0

Confirmed kernel references

β€”

Detail

Exploit chain

none (Info severity)

Evidence (decisive lines)

Source-confirmed at sys/dev/sound/pcm/dsp.c:2913: dsp_oss_syncgroup frees inserted smrd without removing from members

Verified recommended fix

Source-confirmed at sys/dev/sound/pcm/dsp.c:2913: dsp_oss_syncgroup frees inserted smrd without removing from members

Verdict

Source-confirmed at sys/dev/sound/pcm/dsp.c:2913: dsp_oss_syncgroup frees inserted smrd without removing from members