DF-5377 / manifest.json
{ "finding_id": "DF-5377", "verdict": "reproduced", "impact": "dos", "confidence": "certain", "reproduce": { "build": "guest root, /root/targpwn: make KERNBUILDDIR=/usr/obj/usr/src/sys/X86_64_GENERIC (targsim.ko) && cc -O0 -g -o poc5377 poc5377.c", "run": "kldload ./targsim.ko; sleep 2; sysctl vm.pbuf_mem_count; ./poc5377 8; then ./poc5377 386 drain (wedge demo)", "expected": "vm.pbuf_mem_count drops by exactly the cycle count (394 -> 386 after 8) and never recovers; drain mode takes it to 0 and a subsequent 'dd if=/dev/vbd0 of=/dev/null bs=64k count=1' sits unkillable in D0 on wchan wswbuf5 forever." }, "kernel_refs": [ "sys/bus/cam/scsi/scsi_target.c:828", "sys/bus/cam/scsi/scsi_target.c:541", "sys/bus/cam/scsi/scsi_target.c:973", "sys/bus/cam/cam_periph.c:643", "sys/vm/vm_pager.c:505" ], "artifacts": [ "README.md", "VERDICT.md", "targsim.c", "Makefile", "poc5377.c", "build.sh", "run.sh", "build.log", "run.log", "run.drain.log", "run.patched.log", "fix.diff", "fix_build.log", "manifest.json", "verdict.json" ] } |