⬢ DragonFlyBSD Kernel Audit
DF-5307 / verdict.json
← back to finding ↓ download raw
{
  "finding_id": "DF-5307",
  "status": "untested",
  "reproduced": false,
  "impact": "none",
  "confidence": "certain",
  "verdict": "Static-analysis finding, certain at the code level: four descriptor-field reads happen before (or without) bLength validation, the largest being the Extension Unit bControlSize read at offset 22+bNrInPins with bNrInPins unbounded (up to 253 bytes past a 24-byte descriptor, and past the cdesc allocation when the descriptor is last). All four values were traced to rejection comparisons or a bounded table index - no userspace disclosure path exists today, so impact is a kernel OOB read / hardening defect (Low). Not QEMU-verified: Low severity falls below the Phase V mandate; the fix.diff guards for the shared VC-header site were compiled and exercised during the DF-5306 fix validation, the rest are compile-checked.",
  "exploit_chain": "",
  "evidence": "VERDICT.md (full path:line analysis of all four sites and value consumers), fix.diff (guards for every site)",
  "kernel_refs": ["sys/bus/u4b/uvc/uvc_drv.c:2332", "sys/bus/u4b/uvc/uvc_drv.c:2209", "sys/bus/u4b/uvc/uvc_drv.c:2109", "sys/bus/u4b/uvc/uvc_drv.c:1843"],
  "poc_changes": "no PoC built for this finding (Low; see verdict)",
  "attempts": 0,
  "guest_uname": "DragonFly dfbsd 6.5-DEVELOPMENT DragonFly 6.5-DEVELOPMENT #0: Thu Jul  2 06:02:54 UTC 2026  root@dfbsd:/usr/obj/usr/src/sys/X86_64_GENERIC  x86_64",
  "runtime_sec": 0,
  "guest_dirty": 0,
  "build_cmd": "n/a",
  "run_cmd": "n/a",
  "code_hash": "",
  "notes": "Class-adjacent to DF-2350/DF-5305 but distinct sites; no disclosure channel identified, hence Low/untested rather than Medium.",
  "recommended_fix": "Validate bLength before each field read and clamp XU bNrInPins to bLength-23 (included in fix.diff, shared with DF-5305/DF-5306).",
  "fix_status": "not_tested",
  "fix_baseline_reproduced": 0,
  "fix_patched_reproduced": 0,
  "fix_verdict": "fix.diff guards present for all four sites; the VC-header guard was compiled and exercised via the DF-5306 fix-validation run; XU/IT/COLORFORMAT guards compile-checked only, not behaviorally verified.",
  "fix_evidence": "fix.diff; DF-5306/fix.log (exercises the shared VC-header guard path)"
}