DF-5348 / manifest.json
{ "finding_id": "DF-5348", "verdict": "reproduced", "impact": "phantom deferred load/callback after bus_dmamap_unload (driver-level write-after-free risk) + leaked bounce-page reservations (DoS)", "reproduce": { "build": "cd /root/busdmauaf && printf 'KMOD=busdmauaf_t2\\nSRCS=busdmauaf.c\\nCOPTS+=-DPOC_TEST=2\\n\\n.include <bsd.kmod.mk>\\n' > Makefile && make -m /usr/share/mk SYSDIR=/usr/src/sys MAKEOBJDIRPREFIX=/root/obj", "run": "kldload ./busdmauaf_t2.ko; sleep 2; dmesg | grep PHANTOM", "expected": "baseline: '*** DEFERRED CALLBACK FIRED FOR UNLOADED MAP ***' + 'RESULT=PHANTOM CONFIRMED'; patched kernel: 'RESULT=FAILED', no callback" }, "kernel_refs": [ "sys/sys/bus_dma.h:313", "sys/platform/pc64/x86_64/busdma_machdep.c:1022", "sys/platform/pc64/x86_64/busdma_machdep.c:645", "sys/platform/pc64/x86_64/busdma_machdep.c:1408", "sys/platform/pc64/x86_64/busdma_machdep.c:1445", "sys/platform/pc64/x86_64/busdma_machdep.c:1046" ], "artifacts": [ "busdmauaf.c", "run.log.baseline", "VERDICT.md", "README.md", "fix.diff", "build.log", "env.txt", "manifest.json", "verdict.json" ] } |