Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2026-98839— vt: selection: Fix unsigned underflow and slab-out-of-bounds read in paste_selection()

Quick assessment

Affected
Linux Linux
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

在 Linux 内核中,以下漏洞已得到修复: vt(虚拟终端)选择机制:修复了 函数中的无符号整数下溢及由此引发的 slab 越界读取问题。 在 函数中,循环每次迭代会调用 ,复制 字节的数据,并将 增加 。 由于选择互斥锁( )在循环内部被释放:当行规约(line discipline)缓冲区填满时, 会阻塞在 上等待。此时,一个并发的 (具体为 )ioctl 调用可能将 替换为一个更短的选择区域,从而将 减小到低于当前的 值。 当 恢复执行时,表达式 作为无符号整数发生下溢,变为一个较大的正数值。这导致后续调用

AI Predicted 7.8 Difficulty: Hard EPSS 0.17% · P5

Affected Version Matrix 22

VendorProduct Version RangeStatus
Linux Linux e8c75a30a23c6ba63f4ef6895cbf41fd42f21aa2< 037d7e3ca5c593092f4b0d471eb869a85cbddde0 affected
e8c75a30a23c6ba63f4ef6895cbf41fd42f21aa2< 619c6d7dd76fff15a9714fbf02ce299b737f01a2 affected
e8c75a30a23c6ba63f4ef6895cbf41fd42f21aa2< 39495ef5d6f8019e62d65807f217a7ca8232727a affected
54c522782fd11a720f959ee9cb5a15bb9580343d affected
05c508edc9d0b44e4706d3c2cf14ee12aac210d2 affected
e5be0e24ffc7f5783a3864b5b958088ed15be9e8 affected
a4719f6d07b2c63223f7452c435c5f578f105cfe affected
b4492f1e7456bd162714c0ec2815c2749d930844 affected
… +14 more rows
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2026-98839

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
vt: selection: Fix unsigned underflow and slab-out-of-bounds read in paste_selection()
Source: CVE Program / CVE List V5
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: vt: selection: Fix unsigned underflow and slab-out-of-bounds read in paste_selection() In paste_selection(), the loop copies min_t(unsigned int, vc_sel.buf_len - pasted,tty->receive_room) bytes per iteration into tty_ldisc_receive_buf() and increments pasted += count. Because the selection mutex (vc_sel.lock) is dropped inside the loop Whenever the line discipline buffer fills up and paste_selection() sleeps on tty->write_wait, a concurrent TIOCLINUX (TIOCL_SETSEL) ioctl can replace vc_sel.buffer with a shorter selection and reduce vc_sel.buf_len below pasted. When paste_selection() resumes, vc_sel.buf_len - pasted underflows as an unsigned integer to a large positive value, causing tty_ldisc_receive_buf(ld, vc_sel.buffer + pasted, NULL, count) to read up to 4094 bytes out-of-bounds past the newly allocated vc_sel.buffer. Fix this by terminating the loop when pasted >= vc_sel.buf_len. Kernel stack trace (Linux 7.3.0-rc3): ================================================================== BUG: KASAN: slab-out-of-bounds in n_tty_receive_buf_common+0xa01/0x1650 Read of size 4094 at addr ffff888101c58010 by task kworker/u17:1/65 Workqueue: events_unbound flush_to_ldisc Call Trace: <TASK> dump_stack_lvl+0x70/0xa0 print_report+0x153/0x4c6 kasan_report+0xf1/0x120 kasan_check_range+0x11c/0x200 __asan_memcpy+0x29/0x70 n_tty_receive_buf_common+0xa01/0x1650 tty_ldisc_receive_buf+0x66/0x110 tty_port_default_receive_buf+0x6b/0xb0 flush_to_ldisc+0x1b4/0x410 process_one_work+0x6ff/0x1110 worker_thread+0x4a8/0xb70 kthread+0x307/0x3e0 ret_from_fork+0x3ed/0x680 </TASK> ==================================================================
Source: CVE Program / CVE List V5
CVSS Information
N/A
Source: CVE Program / CVE List V5
Vulnerability Type
N/A
Source: CVE Program / CVE List V5

Affected Products

Vendor Product Affected Versions CPE Subscribe
Linux Linux e8c75a30a23c6ba63f4ef6895cbf41fd42f21aa2 ~ 037d7e3ca5c593092f4b0d471eb869a85cbddde0 -
Linux Linux 5.6 -

II. Public POCs for CVE-2026-98839

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2026-98839

请登录查看更多情报信息。

Patches & Fixes for CVE-2026-98839 (3)

Same Patch Batch · Linux · 2026-10-18 · 435 CVEs total

CVE-2026-98719 KVM: SEV: Nullify "have run CPUs" mask pointer when freeing it
CVE-2026-98732 Bluetooth: btintel: fix buffer over-read in btintel_hw_error()
CVE-2026-98731 Bluetooth: btintel_pcie: fix plen overflow in btintel_pcie_recv_frame()
CVE-2026-98730 Bluetooth: btintel_pcie: reject oversized TX packets in send_frame()
CVE-2026-98729 x86/mm: Don't apply va_align to hugetlb mappings on AMD F15h
CVE-2026-98728 tpm: fix off-by-four bounds check in tpm2_get_random()
CVE-2026-98727 nvme-multipath: set BLK_FEAT_ZONED only after the zone info is known
CVE-2026-98726 nvme-multipath: fix underflow in ANA log bounds checks
CVE-2026-98725 nvmet-auth: fix out-of-bounds write in nvmet_auth_challenge()
CVE-2026-98724 nvmet: pci-epf: reject too-short SGL segments
CVE-2026-98723 nvmet: copy the hostid into the ctrl before creating PR pc_refs
CVE-2026-98722 mtd: block2mtd: Fix divide error when erase_size is zero
CVE-2026-98721 mtd: rawnand: cadence: Initialize IRQ state before requesting IRQ
CVE-2026-98720 KVM: nVMX: Force MSR bitmap refresh if runtime eVMCS controls are modified
CVE-2026-98707 wifi: mac80211: shut down RX BA session timer on teardown
CVE-2026-98711 wifi: cw1200: fix TX padding OOB read leaking heap data to device
CVE-2026-98710 wifi: iwlegacy: 3945: free EEPROM data on remove
CVE-2026-98709 wifi: mac80211: count only matching reservations in reserved switch
CVE-2026-98712 KVM: arm64: vgic: Take a refcount on IRQs referenced by last_lr_irq
CVE-2026-98708 wifi: mac80211: keep paired old chanctx alive

Showing top 20 of 435 CVEs. View all on vendor page &rarr; →

IV. Related Vulnerabilities

V. Comments for CVE-2026-98839

No comments yet


Leave a comment