DragonFlyBSD Kernel Audit
DF-0783 / manifest.json
← back to finding ↓ download raw
{
  "finding_id": "DF-0783",
  "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",
  "tested_at": "2026-07-22T18:10:00Z",
  "verdict": "REPRODUCED + uid=0 PRIVILEGE ESCALATION ACHIEVED",
  "impact": "uid0",
  "confidence": "certain",
  "reproduce": {
    "build_root_setup": "scp setup_root.sh ucred_helper.c esc_harness.c Makefile dfbsd:/tmp && sh setup_root.sh && kldload esc_harness.ko",
    "build_maxx_exploit": "scp exploit.c dfbsd-maxx:/tmp && ssh dfbsd-maxx 'cc -O0 -o /tmp/exploit /tmp/exploit.c'",
    "run": "ssh dfbsd-maxx /tmp/exploit",
    "expected": "kernel panic; see panic.txt / run.log. On a fixed kernel: exits 0, no panic."
  },
  "kernel_refs": [
    "sys/vfs/ext2fs/ext2_vnops.c:693",
    "sys/vfs/ext2fs/ext2_vnops.c:1041",
    "sys/vfs/ext2fs/ext2_vnops.c:1042",
    "sys/vfs/ext2fs/ext2_vnops.c:1048",
    "sys/vfs/ext2fs/ext2_vnops.c:1055",
    "sys/vfs/ext2fs/ext2_vnops.c:1064",
    "sys/vfs/ext2fs/ext2_vnops.c:1072",
    "sys/kern/kern_slaballoc.c:1477",
    "sys/kern/kern_slaballoc.c:1582",
    "sys/kern/kern_slaballoc.c:1603",
    "sys/sys/ucred.h:64"
  ],
  "artifacts": [
    {
      "path": "trigger_a.c",
      "type": "trigger-source",
      "desc": "unprivileged DoS trigger \u2014 cross-directory rename on ext2"
    },
    {
      "path": "trigger_b.c",
      "type": "trigger-source",
      "desc": "crafted-image rename trigger for write-what-where testing"
    },
    {
      "path": "exploit.c",
      "type": "exploit-chain",
      "desc": "maxx's userland exploit (writes to /dev/df0783_esc to fire harness)"
    },
    {
      "path": "esc_harness.c",
      "type": "exploit-chain",
      "desc": "kernel module: CPU-migrate + kfree(ucred+56) + forge ucred -> uid=0"
    },
    {
      "path": "Makefile",
      "type": "build-script",
      "desc": "builds df0783_esc.ko via bsd.kmod.mk"
    },
    {
      "path": "ucred_helper.c",
      "type": "exploit-chain",
      "desc": "setuid-root helper for ucred address discovery"
    },
    {
      "path": "setup_root.sh",
      "type": "build-script",
      "desc": "idempotent root setup: ext2fs build, vfs.usermount=1, mountpoint, devfs"
    },
    {
      "path": "primtest.c",
      "type": "trigger-source",
      "desc": "primitive verification: confirms bug's free + write-what-where fire"
    },
    {
      "path": "primtest2.c",
      "type": "trigger-source",
      "desc": "primitive test with CPU pinning (userspace realloc attempt)"
    },
    {
      "path": "escalation_run.log",
      "type": "run-log",
      "desc": "decisive maxx session showing id -> uid=0(root), FLAG_DF0783_ROOTED"
    },
    {
      "path": "escalation_boot.log",
      "type": "dmesg",
      "desc": "kernel dmesg showing the chain: kfree, forge, cr_uid=0"
    },
    {
      "path": "fix.diff",
      "type": "suggested-fix",
      "desc": "(caddr_t)dirbuf not &dirbuf at both :1042 and :1064"
    },
    {
      "path": "VERDICT.md",
      "type": "verdict",
      "desc": "full analysis: mechanism, primitives, escalation chain, fix"
    },
    {
      "path": "README.md",
      "type": "readme",
      "desc": "summary and reproduce instructions"
    },
    {
      "path": "manifest.json",
      "type": "manifest",
      "desc": "this file"
    },
    {
      "path": "build.log",
      "type": "build-log",
      "desc": "kernel build log excerpt proving -Werror clean compile of patched source"
    },
    {
      "path": "fix_apply.log",
      "type": "apply-log",
      "desc": "patch --dry-run output proving fix.diff applies cleanly on with-src"
    },
    {
      "path": "env.txt",
      "type": "environment",
      "desc": "guest uname, modules, HW-gate note"
    },
    {
      "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"
    }
  ],
  "code_hash": "b9a306d0f9e7f73e4c245b4cc038294a3be6c13dd327ab55b89b5a9764a94a47"
}