[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"repo-stars":3,"vuln-DEBIAN-CVE-2026-46275":6},{"stargazers_count":4,"fetched_at":5},7,"2026-07-30T21:17:53.703Z",{"id":7,"descriptions":8,"cisa":9,"weaknesses":10,"exploits":11,"aliases":12,"duplicate_of":9,"upstream":13,"downstream":16,"duplicates":17,"related":18,"reserved_at":9,"published_at":19,"modified_at":20,"state":9,"summary":21,"references_raw":23,"kevs":30,"epss":9,"epss_history":31,"metrics":32,"affected":39},"DEBIAN-CVE-2026-46275","In the Linux kernel, the following vulnerability has been resolved:  Bluetooth: hci_uart: fix UAFs and race conditions in close and init paths  Vulnerabilities leading to Use-After-Free (UAF) and Null Pointer Dereference (NPD) conditions were observed in the lifecycle management of hci_uart.  The primary issue arises because the workqueues (init_ready and write_work) are only flushed/cancelled if the HCI_UART_PROTO_READY flag is set during TTY close. If a hangup occurs before setup completes, hci_uart_tty_close() skips the teardown of these workqueues and proceeds to free the `hu` struct. When the scheduled work executes later, it blindly dereferences the freed `hu` struct.  Furthermore, several data races and UAFs were identified in the teardown sequence: 1. Calling hci_uart_flush() from hci_uart_close() without effectively    disabling write_work causes a race condition where both can concurrently    double-free hu->tx_skb. This happens because protocol timers can    concurrently invoke hci_uart_tx_wakeup() and requeue write_work. 2. Calling hci_free_dev(hdev) before hu->proto->close(hu) causes a UAF    when vendor specific protocol close callbacks dereference hu->hdev. 3. In the initialization error paths, failing to take the proto_lock    write lock before clearing PROTO_READY leads to races with active    readers. Additionally, hci_uart_tty_receive() accesses hu->hdev    outside the read lock, leading to UAFs if the initialization error    path frees hdev concurrently.  Fix these synchronization and lifecycle issues by: 1. Re-ordering hci_uart_tty_close() to clear HCI_UART_PROTO_READY first,    followed immediately by a cancel_work_sync(&hu->write_work). Clearing    the flag locks out concurrent protocol timers from successfully invoking    hci_uart_tx_wakeup(), effectively rendering the cancellation permanent    and preventing the tx_skb double-free. 2. Note: Clearing PROTO_READY early causes hci_uart_close() to skip    hu->proto->flush(). This is perfectly safe in the tty_close path    because hu->proto->close() executes shortly after, which intrinsically    purges all protocol SKB queues and tears down the state. 3. Relocating hu->proto->close(hu) strictly prior to hci_free_dev(hdev)    across all close and error paths to prevent vendor-level UAFs. 4. Moving the hdev->stat.byte_rx increment in hci_uart_tty_receive()    inside the proto_lock read-side critical section to safely synchronize    with device unregistration. 5. Adding cancel_work_sync(&hu->write_work) to hci_uart_close() to safely    flush the workqueue before hci_uart_flush() is invoked via the HCI core. 6. Utilizing cancel_work_sync() instead of disable_work_sync() across    all paths to prevent permanently breaking user-space retry capabilities.",null,[],[],[],[14],{"_key":15},"CVE-2026-46275",[],[],[],"2026-06-08T16:16:40.863Z","2026-07-05T20:00:56.330685553Z",{"cisa_kev":22,"cisa_ransomware":22,"cisa_vendor":9,"epss_severity":9,"epss_score":9,"severity":9,"severity_score":9,"severity_version":9,"severity_source":9,"severity_vector":9,"severity_status":9},false,[24],{"url":25,"sources":26,"tags":28},"https://security-tracker.debian.org/tracker/CVE-2026-46275",[27],"osv_debian",[29],"Advisory",[],[],[33],{"source":27,"cvss_v2_0":9,"cvss_v3_0":9,"cvss_v3_1":34,"cvss_v4_0":9},{"baseScore":35,"baseSeverity":9,"vectorString":36,"impactScore":37,"exploitabilityScore":38},7.8,"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",9.8,4.6,[40,66],{"ecosystem":41,"name":42,"vendor":43,"product":42,"cpe_part":9,"purl_type":44,"purl_namespace":43,"purl_name":42,"source":9,"versions":45},"Debian","linux","debian","deb",[46,50,51,52,53,57,60,63],{"version":47,"is_range":48,"range_type":49,"version_start":9,"version_start_type":9,"version_end":9,"version_end_type":9,"fixed_in":9},"all",true,"ecosystem",{"version":47,"is_range":48,"range_type":49,"version_start":9,"version_start_type":9,"version_end":9,"version_end_type":9,"fixed_in":9},{"version":47,"is_range":48,"range_type":49,"version_start":9,"version_start_type":9,"version_end":9,"version_end_type":9,"fixed_in":9},{"version":47,"is_range":48,"range_type":49,"version_start":9,"version_start_type":9,"version_end":9,"version_end_type":9,"fixed_in":9},{"version":54,"is_range":48,"range_type":49,"version_start":9,"version_start_type":9,"version_end":55,"version_end_type":56,"fixed_in":9},"lt5_10_259_1","5.10.259-1","excluding",{"version":58,"is_range":48,"range_type":49,"version_start":9,"version_start_type":9,"version_end":59,"version_end_type":56,"fixed_in":9},"lt6_1_176_1","6.1.176-1",{"version":61,"is_range":48,"range_type":49,"version_start":9,"version_start_type":9,"version_end":62,"version_end_type":56,"fixed_in":9},"lt6_12_94_1","6.12.94-1",{"version":64,"is_range":48,"range_type":49,"version_start":9,"version_start_type":9,"version_end":65,"version_end_type":56,"fixed_in":9},"lt7_0_12_1","7.0.12-1",{"ecosystem":41,"name":67,"vendor":43,"product":67,"cpe_part":9,"purl_type":44,"purl_namespace":43,"purl_name":67,"source":9,"versions":68},"linux-6.1",[69],{"version":70,"is_range":48,"range_type":49,"version_start":9,"version_start_type":9,"version_end":71,"version_end_type":56,"fixed_in":9},"lt6_1_176_1~deb11u1","6.1.176-1~deb11u1"]