DF-3461 / manifest.json
{ "finding_id": "DF-3461", "title": "in6_cksum() sanity check bypassable via u32 wrap of off+len (defense-in-depth)", "verdict": "untested", "impact": "none", "reproduce": { "build": "ssh -F dfbsd-qemu/config dfbsd 'cat > /tmp/wrap_demo.c' < wrap_demo.c && vm.sh run_root 'cd /tmp && cc -O2 -Wall -o wrap_demo wrap_demo.c'", "run": "vm.sh run_root 'cd /tmp && ./wrap_demo'", "expected": "off=0xffffffff len=41 -> off+len=0x00000028 (40) wrapped=1 / sanity check BYPASSED / after walk: m=0x0 -> mtod(NULL) deref" }, "kernel_refs": [ "sys/netinet6/in6_cksum.c:91", "sys/netinet6/in6_cksum.c:116", "sys/netinet6/in6_cksum.c:150", "sys/netinet6/in6_cksum.c:157", "sys/netinet6/in6_cksum.c:285" ], "artifacts": [ "README.md", "VERDICT.md", "wrap_demo.c", "build.sh", "build.log", "run.log", "env.txt", "fix.diff", "manifest.json", "verdict.json" ] } |