DF-0009 / manifest.json
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 | { "finding_id": "DF-0009", "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", "fix_kernel_uname": "DragonFly 6.5-DEVELOPMENT #1: Thu Jul 2 17:53:57 UTC 2026 root@dfbsd:/usr/obj/usr/src/sys/X86_64_GENERIC (sha256 b95380b6f2720f892651fc9303f0fe6d48bfa66998438bf0c9029e16dc4b0aeb)", "code_hash": "b9a306d0f9e7f73e4c245b4cc038294a3be6c13dd327ab55b89b5a9764a94a47", "tested_at": "2026-07-22T18:10:00Z", "verdict": "REPRODUCED + FIX VALIDATED", "impact": "leak:21bytes(11+10 kernel pointers/run, KASLR-defeat)", "confidence": "certain", "fix_status": "fixed", "fix_baseline_reproduced": 1, "fix_patched_reproduced": 0, "reproduce": { "build": "./build.sh", "run": "./run.sh", "expected": "kernel memory/pointer leak; see leak_sample.txt / run.log." }, "kernel_refs": [ "sys/kern/vfs_subr.c:1845", "sys/kern/vfs_subr.c:1850", "sys/kern/vfs_subr.c:1863", "sys/sys/mount.h:478", "sys/sys/mount.h:483", "sys/sys/mount.h:487" ], "artifacts": [ { "path": "leak_vfsconf.c", "type": "trigger-source", "desc": "unprivileged sysctl reader of VFS_CONF; prints vfc_vfsops/vfc_next per fs type" }, { "path": "VERDICT.md", "type": "verdict", "desc": "full narrative: reproduced, line-by-line trace, evidence table, fix validation before/after" }, { "path": "README.md", "type": "readme", "desc": "human build/run/expected summary" }, { "path": "build.sh", "type": "build-script", "desc": "cc -o leak_vfsconf leak_vfsconf.c" }, { "path": "run.sh", "type": "run-script", "desc": "./leak_vfsconf as unprivileged user" }, { "path": "build.log", "type": "build-log", "desc": "final successful build, full output" }, { "path": "baseline_run.log", "type": "run-log", "desc": "#0 unpatched baseline: 11/10 pointers leaked (run 1 of 3, decisive)" }, { "path": "run.log", "type": "run-log", "desc": "stability run 1 on prior #1 kernel, 11 leaked .data pointers" }, { "path": "run.2.log", "type": "run-log", "desc": "stability run 2 (byte-identical)" }, { "path": "run.3.log", "type": "run-log", "desc": "stability run 3 (byte-identical)" }, { "path": "leak_sample.txt", "type": "leak-sample", "desc": "nm cross-ref: each leaked vfc_vfsops matches an exact kernel symbol; kernel text/data bounds" }, { "path": "env.txt", "type": "environment", "desc": "uname, cc version, nm symbol table" }, { "path": "fix.diff", "type": "suggested-fix", "desc": "redact vfc_vfsops/vfc_next in VFS_CONF and ovfs_conf paths (VALIDATED: applies cleanly, compiles, closes the leak on #1)" }, { "path": "fix_build.log", "type": "build-log", "desc": "single-fix nativekernel build, rc=0, 35524 lines" }, { "path": "fix_run.log", "type": "run-log", "desc": "#1 single-fix kernel PoC run: 0/0 pointers leaked, exit 2" }, { "path": "manifest.json", "type": "manifest", "desc": "this catalog" }, { "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" } ] } |