⬢ DragonFlyBSD Kernel Audit
DF-5462 / manifest.json
← back to finding ↓ download raw
{
  "finding": "DF-5462",
  "title": "Lockless cam_extend array: ptopen/ptclose/ptstrategy/ptioctl UAF read races ptctor's cam_extend_set growth (kfree of ea->ps)",
  "verdict": "not_reproduced",
  "impact": "none",
  "reproduce": {
    "build": "in guest: cd /root/poc/DF-5462 && ./build.sh (needs EVILPT kernel: X86_64_GENERIC + 'device pt')",
    "run": "in guest as root: STAMPBYTE=65 MAXT=512 BATCHPAUSE=1 ./run.sh",
    "expected": "clean miss: RACER-DONE opens=N enxio=0 other=0, guest stays up; hit with STAMPBYTE=0: spurious ENXIO anomalies; hit with 0x41: GP fault in cam_periph_acquire on 0x41414141..."
  },
  "kernel_refs": [
    "sys/bus/cam/scsi/scsi_pt.c:153",
    "sys/bus/cam/scsi/scsi_pt.c:189",
    "sys/bus/cam/scsi/scsi_pt.c:219",
    "sys/bus/cam/scsi/scsi_pt.c:311",
    "sys/bus/cam/scsi/scsi_pt.c:632",
    "sys/bus/cam/cam_extend.c:54",
    "sys/bus/cam/cam_extend.c:81",
    "sys/bus/cam/cam_periph.c:319"
  ],
  "artifacts": [
    "README.md", "VERDICT.md", "ptsim.c", "race5462.c", "build.sh", "run.sh",
    "fix.diff", "fix_build.log", "env.txt", "panic.camq-lead.txt", "verdict.json",
    "manifest.json"
  ]
}