⬢ DragonFlyBSD Kernel Audit
DF-4546 / manifest.json
← back to finding ↓ download raw
{
  "finding_id": "DF-4546",
  "title": "lm78: lm_detach on a zero-sensor attach (W83791SD sets no sensor table) TAILQ_REMOVEs a never-installed ksensordev -> NULL-pointer write + global sensordev_list corruption -> panic",
  "verdict": "reproduced",
  "impact": "panic",
  "reproduce": {
    "build": "cc -O2 -Wall -o lm_detach_nullwrite lm_detach_nullwrite.c  (guest cc 8.3)",
    "run": "./lm_detach_nullwrite",
    "expected": "BUG (numsensors=0): SIGSEGV kernel-equivalent NULL-pointer WRITE at 0x0 inside sensordev_deinstall; CONTROL (numsensors=19): clean detach; PATCHED (guard): clean detach"
  },
  "kernel_refs": [
    "sys/dev/powermng/lm/lm78.c:590",
    "sys/dev/powermng/lm/lm78.c:427",
    "sys/dev/powermng/lm/lm78.c:450",
    "sys/kern/kern_sensors.c:153",
    "sys/sys/queue.h:646",
    "sys/sys/sensors.h:156"
  ],
  "artifacts": [
    "lm_detach_nullwrite.c", "build.sh", "run.sh", "build.log", "run.log",
    "run.2.log", "fix_run.log", "fix.diff", "fix_build.log", "env.txt",
    "README.md", "VERDICT.md", "manifest.json", "verdict.json"
  ]
}