ACL/SCO packet type and length validation only compiled under #ifdef DIAGNOSTIC
Summary
hci_acl_recv(:431-444) + hci_sco_recv(:841-854): checks that HCI packet type byte correct and m_pkthdr.len==hdr.length wrapped in #ifdef DIAGNOSTIC β absent in production/release kernels. Validated fields not re-read downstream so no direct OOB but silently accepting structurally malformed controller packets violates defense-in-depth masks mis-fragmentation fueling DF-0566/0567. Fix: make checks unconditional goto bad on mismatch.
Discussion (0)
PoC verification
Evidence pack
findings/poc/DF-0568 Β· 1 files| File | Type | Description | Size | |
|---|---|---|---|---|
| manifest.json | file | 385 B | view raw |
Fix verification
not_testablerecommended fix identified; fix.diff not authored/validated in this batch
recommended fix identified; fix.diff not authored/validated in this batch
Confirmed kernel references
β
Detail
Exploit chain
none (Info severity)
Evidence (decisive lines)
Source-confirmed at sys/netbt/hci_link.c:431: ACL/SCO packet type/length validation only under #ifdef DIAGNOSTIC
Verified recommended fix
Source-confirmed at sys/netbt/hci_link.c:431: ACL/SCO packet type/length validation only under #ifdef DIAGNOSTIC
Verdict
Source-confirmed at sys/netbt/hci_link.c:431: ACL/SCO packet type/length validation only under #ifdef DIAGNOSTIC
No comments yet.