{"id":"CVE-2026-98460","kind":"vulnerability","aliases":["CVE-2026-98460"],"related":[],"title":"Linux kernel: Bluetooth raw sockets can alias reserved commands past filter","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nBluetooth: hci_sock: reject out-of-range OCF values\n\nThe raw HCI socket security filter has 128 OCF bits per supported OGF,\nbut masks the 10-bit OCF with 127 before looking up the command. An\nunprivileged socket can therefore submit a reserved OCF that aliases an\nallowlisted command modulo 128.\n\nA conforming controller should reject reserved opcodes. Nevertheless,\nthe security decision must apply to the opcode that will actually be\nsent, especially since controller-specific behavior is outside the host\nstack's control.\n\nReject OCF values that cannot be represented by the security filter\ninstead of aliasing them onto an unrelated command.","summary":"The Linux kernel's raw HCI Bluetooth socket security filter masks the 10-bit opcode to 7 bits, so a reserved command can alias an allowlisted one. An unprivileged local socket user may thereby send Bluetooth controller commands the filter was meant to block.","severity":"unknown","cvss":null,"epss":null,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["bluetooth","infrastructure","kernel","linux"],"not_affected_if":[],"how_to_check":null,"fix":null,"status":"open","published_at":"2026-10-18T16:16:56+00:00","first_seen_at":"2026-10-23T21:57:15+00:00","triaged_at":"2026-10-25T05:27:14+00:00","updated_at":"2026-10-25T05:27:14+00:00","category":"infrastructure","confidence":0.6,"triage":{"at":"2026-10-25T05:27:14Z","model":"claude-haiku-5-5","output":{"fix":"unknown","reach":"local","title":"Linux kernel: Bluetooth raw sockets can alias reserved commands past filter","impact":"medium","summary":"The Linux kernel's raw HCI Bluetooth socket security filter masks the 10-bit opcode to 7 bits, so a reserved command can alias an allowlisted one. An unprivileged local socket user may thereby send Bluetooth controller commands the filter was meant to block.","category":"infrastructure","nicknames":[],"who_cares":["linux","bluetooth","kernel"],"confidence":0.6,"needs_auth":"unknown","worst_case":"Unprivileged local user sends filtered Bluetooth controller commands","analyst_note":"Sources give only the kernel commit text; find fixed kernel versions and affected stable ranges at the NVD entry or kernel.org stable commits.","how_to_check":"unknown","needs_analyst":true,"not_affected_if":[],"who_is_affected":"unknown","user_interaction":"no","needs_special_setup":"unknown","severity_if_unknown":"unknown"},"cost_usd":0.000536,"input_tokens":3464,"output_tokens":379,"severity_before":"unknown"},"analyst_status":null,"analyst_note":null,"search":"'-2026':13A,16A '-98460':14A,17A '10':34B,102C '127':106C '128':93C,127C '7':38B 'actual':146C 'alia':7A,45B 'alias':122C,175C 'allowlist':47B,124C 'appli':140C 'behavior':154C 'bit':35B,39B,95C,103C 'block':65B 'bluetooth':3A,18B,28B,57B,76C 'cannot':166C 'command':9A,43B,59B,111C,125C,180C 'conform':129C 'control':58B,130C,152C,161C 'controller-specif':151C 'cve':12A,15A 'decis':138C 'especi':149C 'filter':11A,31B,61B,91C,172C 'follow':71C 'hci':27B,77C,88C 'host':158C 'infrastructur':19B 'instead':173C 'kernel':2A,20B,24B,69C 'linux':1A,21B,23B,68C 'local':51B 'look':108C 'mask':32B,100C 'may':54B 'meant':63B 'modulo':126C 'must':139C 'nevertheless':135C 'ocf':84C,94C,104C,120C,163C 'ogf':98C 'one':48B 'onto':177C 'opcod':36B,134C,143C 'out-of-rang':80C 'outsid':156C 'past':10A 'per':96C 'rang':83C 'raw':4A,26B,87C 'reject':79C,132C,162C 'repres':168C 'reserv':8A,42B,119C,133C 'resolv':75C 'secur':30B,90C,137C,171C 'send':56B 'sent':148C 'sinc':150C 'sock':78C 'socket':5A,29B,52B,89C,114C 'specif':153C 'stack':159C 'submit':117C 'support':97C 'therebi':55B 'therefor':116C 'unprivileg':50B,113C 'unrel':179C 'user':53B 'valu':85C,164C 'vulner':72C","nicknames":[],"mitigations":[],"who_affected":null,"tier":"C","verified":{},"analyst_revisit_at":null,"first_public_at":"2026-10-18T16:16:56+00:00","kev":null,"cvss_vector":null,"cvss_by":null,"poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-98460","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-98460","severity":null,"published_at":"2026-10-18T16:16:56+00:00","modified_at":"2026-10-19T10:18:55+00:00","first_seen_at":"2026-10-23T21:57:15+00:00","fetched_at":"2026-10-23T22:28:56+00:00","note":null}],"documents":[],"notice":"Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai"}