{
  "finding_id": "DF-5682",
  "title": "prop_number_unsigned() is the only prop_number accessor without a type guard (type-confused 4-byte heap OOB read)",
  "verdict": "reproduced",
  "impact": "none",
  "severity": "Info",
  "cwe": "CWE-822",
  "reproduce": {
    "build": "sh /tmp/build5682.sh",
    "run": "sh /tmp/run5682.sh",
    "expected": "baseline: guarded sibling returns 0 with no trap, then prop_number_unsigned(str) SIGSEGVs on the guard page (exit 139); fixed variant: returns 0, no trap, exit 0"
  },
  "kernel_refs": [
    "sys/libprop/prop_number.c:49-62",
    "sys/libprop/prop_number.c:379-384",
    "sys/libprop/prop_number.c:432",
    "sys/libprop/prop_string.c:40-50",
    "sys/libprop/prop_object_impl.h:364-365"
  ],
  "artifacts": [
    "README.md", "VERDICT.md", "typeconf.c", "pguard_object_impl.h",
    "pfix_number.c", "build.sh", "run.sh", "build.log", "run.log",
    "env.txt", "fix.diff", "manifest.json", "verdict.json"
  ]
}
