⬢ DragonFlyBSD Kernel Audit
DF-5622 / manifest.json
← back to finding ↓ download raw
{
  "finding_id": "DF-5622",
  "title": "Reachable KKASSERT panic on firmware-supplied _PSS control values in amd0f_set_fidvid (endpoint P-states never validated; vid>=rvo never checked)",
  "verdict": "not_reproduced",
  "reproduced": false,
  "impact": "none_on_this_guest (class: kernel panic / local DoS on AMD K8 with crafted or buggy _PSS)",
  "confidence": "certain",
  "reproduce": {
    "build": "cd findings/poc/DF-5622 && ./build.sh   (KLD 'pstprobe' against /usr/src + /usr/obj kernel; -Werror)",
    "run": "./run.sh   (kldload + dmesg)",
    "expected": "pstprobe: cpu_vendor_id=0x8086 ... family=0xf | APMI(0x80000007) edx=0 | acpi_pst_md_probe() = NULL ... amd0f_set_fidvid UNREACHABLE | symbol addresses prove the amd0f shim is compiled into stock GENERIC. The panic itself requires AMD family-0F hardware + crafted _PSS (see README.md trigger encoding) and cannot fire on this guest."
  },
  "kernel_refs": [
    "sys/platform/pc64/x86_64/cpufreq_machdep.c:91-95",
    "sys/platform/pc64/x86_64/cpufreq_machdep.c:78",
    "sys/platform/pc64/acpica/acpi_pstate_machdep.c:288-368",
    "sys/platform/pc64/acpica/acpi_pstate_machdep.c:310-331",
    "sys/platform/pc64/acpica/acpi_pstate_machdep.c:353-365",
    "sys/platform/pc64/acpica/acpi_pstate_machdep.c:370-388",
    "sys/dev/acpica/acpi_cpu_pstate.c:585",
    "sys/sys/systm.h:94-101",
    "sys/config/X86_64_GENERIC:56",
    "sys/kern/kern_sysctl.c:1446"
  ],
  "artifacts": [
    "README.md", "VERDICT.md", "pstprobe.c", "Makefile", "build.sh", "run.sh",
    "build.log", "run.log", "env.txt", "fix.diff", "fixbuild.log",
    "manifest.json", "verdict.json"
  ]
}