DragonFlyBSD Kernel Audit
DF-0938 / manifest.json
← back to finding ↓ download raw
{
  "finding_id": "DF-0938",
  "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",
  "code_hash": "b9a306d0f9e7f73e4c245b4cc038294a3be6c13dd327ab55b89b5a9764a94a47",
  "tested_at": "2026-07-22T18:10:00Z",
  "verdict": "REPRODUCED",
  "impact": "leak:~300",
  "confidence": "certain",
  "reproduce": {
    "build": "./build.sh",
    "run": "./run.sh",
    "expected": "kernel memory/pointer leak; see leak_sample.txt / run.log."
  },
  "kernel_refs": [
    "sys/vfs/procfs/procfs_fpregs.c:54",
    "sys/vfs/procfs/procfs_fpregs.c:63",
    "sys/vfs/procfs/procfs_fpregs.c:65",
    "sys/platform/pc64/x86_64/machdep.c:3078",
    "sys/platform/pc64/x86_64/machdep.c:3082",
    "sys/platform/pc64/x86_64/machdep.c:3034",
    "sys/platform/pc64/x86_64/machdep.c:3053",
    "sys/platform/pc64/x86_64/initcpu.c:227",
    "sys/cpu/x86_64/include/reg.h:74",
    "sys/cpu/x86_64/include/npx.h:67",
    "sys/kern/kern_prot.c:1025"
  ],
  "artifacts": [
    {
      "path": "poc.c",
      "type": "trigger-source",
      "desc": "reads /proc/self/fpregs and reports leaked kernel-stack bytes in the unpopulated tail"
    },
    {
      "path": "build.sh",
      "type": "build-script",
      "desc": "cc -O2 -o poc poc.c"
    },
    {
      "path": "run.sh",
      "type": "run-script",
      "desc": "./poc + hexdump of the 512-byte read"
    },
    {
      "path": "build.log",
      "type": "build-log",
      "desc": "PoC build output (cc 8.3, exit 0)"
    },
    {
      "path": "run.log",
      "type": "run-log",
      "desc": "decisive unpatched run: 287 non-zero tail bytes + full hexdump + variance proof"
    },
    {
      "path": "run1.bin",
      "type": "leak-sample",
      "desc": "raw 512-byte /proc/self/fpregs buffer from run 1 (binary)"
    },
    {
      "path": "leak_sample.txt",
      "type": "leak-sample",
      "desc": "annotated leaked kernel pointers across 3 runs + SHA256 variance proof"
    },
    {
      "path": "env.txt",
      "type": "environment",
      "desc": "uname, cc version, procfs mount, cpu_fxsr source refs"
    },
    {
      "path": "fix.diff",
      "type": "suggested-fix",
      "desc": "git-apply-able: add sys/systm.h + bzero(&r,sizeof(r)) before fill_fpregs"
    },
    {
      "path": "fix_build.log",
      "type": "build-log",
      "desc": "full make -j6 nativekernel output for the single-fix kernel (rc=0)"
    },
    {
      "path": "fix_run.log",
      "type": "run-log",
      "desc": "patched #1 kernel PoC run: 0 non-zero tail bytes (3x), hexdump all-zero"
    },
    {
      "path": "VERDICT.md",
      "type": "verdict",
      "desc": "full narrative: mechanism, evidence, fix, validation"
    },
    {
      "path": "manifest.json",
      "type": "manifest",
      "desc": "this catalog"
    },
    {
      "path": "README.md",
      "type": "readme",
      "desc": "human reproduce doc"
    },
    {
      "path": "fix_apply.log",
      "type": "apply-log",
      "desc": "patch --dry-run output proving fix.diff applies cleanly on with-src"
    },
    {
      "path": "../fix_build_combined.log",
      "type": "build-log",
      "desc": "Combined 41-finding kernel build (rc=0, -Werror clean)"
    },
    {
      "path": "../fix_build_summary.txt",
      "type": "build-summary",
      "desc": "Summary of the combined 41-finding kernel build"
    }
  ]
}