⬢ DragonFlyBSD Kernel Audit
DF-2209 / manifest.json
← back to finding ↓ download raw
{
  "finding_id": "DF-2209",
  "verdict": "reproduced",
  "impact": "dos",
  "confidence": "certain",
  "reproduce": {
    "build": "guest# cd /root/df22/DF-2209 && ./build.sh",
    "run": "guest# cd /root/df22/DF-2209 && ./run.sh",
    "expected": "run.log CASE D: connector->kdev DANGLING after remove; fresh same-class kmalloc returns the freed address; consumer read connector->kdev->kobj.name -> DF2209-PWNED-BY-RECLAIM; re-add ret==0 with zero allocations; second remove frees the reclaimed live object (CROSS-OBJECT FREE). CASE F fixed: kdev NULLed, fresh allocation on re-add."
  },
  "kernel_refs": [
    "sys/dev/drm/drm_sysfs.c:35-36",
    "sys/dev/drm/drm_sysfs.c:52-53",
    "sys/dev/drm/drm_connector.c:444-467",
    "sys/dev/drm/i915/intel_dp.c:5251",
    "sys/dev/drm/i915/intel_dp.c:5253",
    "sys/dev/drm/i915/intel_dp_mst.c:500",
    "sys/dev/drm/radeon/radeon_dp_mst.c:304",
    "sys/dev/drm/include/linux/sysfs.h:50-56"
  ],
  "artifacts": [
    "README.md",
    "VERDICT.md",
    "rig_head.c",
    "rig_tail.c",
    "df22_rig.c",
    "build.sh",
    "run.sh",
    "fix.diff",
    "build.log",
    "run.log",
    "run.2.log",
    "run_dmesg.log",
    "fix_module_build.log",
    "env.txt",
    "manifest.json",
    "verdict.json"
  ]
}