目标达成 感谢每一位支持者 — 我们达成了 100% 目标!

目标: 1000 元 · 已筹: 1359 元

100%

CVE-2025-38166— Linux kernel 安全漏洞

一分钟漏洞结论

影响对象
Linux Linux
利用判断
尚无明确在野利用证据,仍需结合暴露面评估
建议动作
优先检查厂商安全公告和参考链接中的修复版本;无法立即升级时,限制受影响服务暴露并加强监测。

Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于未正确处理KTLS,可能导致内核崩溃。

CVSS 7.8 · High EPSS 0.20% · P9

影响版本矩阵 12

厂商产品 版本范围状态
Linux Linux d3b18ad31f93d0b6bae105c679018a1ba7daa9ca< 328cac3f9f8ae394748485e769a527518a9137c8 affected
d3b18ad31f93d0b6bae105c679018a1ba7daa9ca< 2e36a81d388ec9c3f78b6223f7eda2088cd40adb affected
d3b18ad31f93d0b6bae105c679018a1ba7daa9ca< 57fbbe29e86042bbaa31c1a30d2afa16c427e3f7 affected
d3b18ad31f93d0b6bae105c679018a1ba7daa9ca< 603943f022a7fe5cc83ca7005faf34798fb7853f affected
d3b18ad31f93d0b6bae105c679018a1ba7daa9ca< 54a3ecaeeeae8176da8badbd7d72af1017032c39 affected
4.20 affected
< 4.20 unaffected
6.1.142≤ 6.1.* unaffected
… +4 条更多
获取后续新漏洞提醒 登录后订阅

一、 漏洞 CVE-2025-38166 基础信息

漏洞信息

对漏洞内容有疑问?看看神龙的深度分析是否有帮助!
查看神龙十问 ↗

尽管我们使用了先进的大模型技术,但其输出仍可能包含不准确或过时的信息。神龙努力确保数据的准确性,但请您根据实际情况进行核实和判断。

Vulnerability Title
bpf: fix ktls panic with sockmap
来源: CVE Program / CVE List V5
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: bpf: fix ktls panic with sockmap [ 2172.936997] ------------[ cut here ]------------ [ 2172.936999] kernel BUG at lib/iov_iter.c:629! ...... [ 2172.944996] PKRU: 55555554 [ 2172.945155] Call Trace: [ 2172.945299] <TASK> [ 2172.945428] ? die+0x36/0x90 [ 2172.945601] ? do_trap+0xdd/0x100 [ 2172.945795] ? iov_iter_revert+0x178/0x180 [ 2172.946031] ? iov_iter_revert+0x178/0x180 [ 2172.946267] ? do_error_trap+0x7d/0x110 [ 2172.946499] ? iov_iter_revert+0x178/0x180 [ 2172.946736] ? exc_invalid_op+0x50/0x70 [ 2172.946961] ? iov_iter_revert+0x178/0x180 [ 2172.947197] ? asm_exc_invalid_op+0x1a/0x20 [ 2172.947446] ? iov_iter_revert+0x178/0x180 [ 2172.947683] ? iov_iter_revert+0x5c/0x180 [ 2172.947913] tls_sw_sendmsg_locked.isra.0+0x794/0x840 [ 2172.948206] tls_sw_sendmsg+0x52/0x80 [ 2172.948420] ? inet_sendmsg+0x1f/0x70 [ 2172.948634] __sys_sendto+0x1cd/0x200 [ 2172.948848] ? find_held_lock+0x2b/0x80 [ 2172.949072] ? syscall_trace_enter+0x140/0x270 [ 2172.949330] ? __lock_release.isra.0+0x5e/0x170 [ 2172.949595] ? find_held_lock+0x2b/0x80 [ 2172.949817] ? syscall_trace_enter+0x140/0x270 [ 2172.950211] ? lockdep_hardirqs_on_prepare+0xda/0x190 [ 2172.950632] ? ktime_get_coarse_real_ts64+0xc2/0xd0 [ 2172.951036] __x64_sys_sendto+0x24/0x30 [ 2172.951382] do_syscall_64+0x90/0x170 ...... After calling bpf_exec_tx_verdict(), the size of msg_pl->sg may increase, e.g., when the BPF program executes bpf_msg_push_data(). If the BPF program sets cork_bytes and sg.size is smaller than cork_bytes, it will return -ENOSPC and attempt to roll back to the non-zero copy logic. However, during rollback, msg->msg_iter is reset, but since msg_pl->sg.size has been increased, subsequent executions will exceed the actual size of msg_iter. ''' iov_iter_revert(&msg->msg_iter, msg_pl->sg.size - orig_size); ''' The changes in this commit are based on the following considerations: 1. When cork_bytes is set, rolling back to non-zero copy logic is pointless and can directly go to zero-copy logic. 2. We can not calculate the correct number of bytes to revert msg_iter. Assume the original data is "abcdefgh" (8 bytes), and after 3 pushes by the BPF program, it becomes 11-byte data: "abc?de?fgh?". Then, we set cork_bytes to 6, which means the first 6 bytes have been processed, and the remaining 5 bytes "?fgh?" will be cached until the length meets the cork_bytes requirement. However, some data in "?fgh?" is not within 'sg->msg_iter' (but in msg_pl instead), especially the data "?" we pushed. So it doesn't seem as simple as just reverting through an offset of msg_iter. 3. For non-TLS sockets in tcp_bpf_sendmsg, when a "cork" situation occurs, the user-space send() doesn't return an error, and the returned length is the same as the input length parameter, even if some data is cached. Additionally, I saw that the current non-zero-copy logic for handling corking is written as: ''' line 1177 else if (ret != -EAGAIN) { if (ret == -ENOSPC) ret = 0; goto send_end; ''' So it's ok to just return 'copied' without error when a "cork" situation occurs.
来源: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
来源: CVE Program / CVE List V5
Vulnerability Type
N/A
来源: CVE Program / CVE List V5
Vulnerability Title
Linux kernel 安全漏洞
来源: 中国国家信息安全漏洞库 CNNVD
Vulnerability Description
Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于未正确处理KTLS,可能导致内核崩溃。
来源: 中国国家信息安全漏洞库 CNNVD
CVSS Information
N/A
来源: 中国国家信息安全漏洞库 CNNVD
Vulnerability Type
N/A
来源: 中国国家信息安全漏洞库 CNNVD

受影响产品

厂商 产品 影响版本 CPE 订阅
Linux Linux d3b18ad31f93d0b6bae105c679018a1ba7daa9ca ~ 328cac3f9f8ae394748485e769a527518a9137c8 -
Linux Linux 4.20 -

二、漏洞 CVE-2025-38166 的公开POC

# POC 描述 源链接 神龙链接
AI 生成 POC 高级

未找到公开 POC。

登录以生成 AI POC

三、漏洞 CVE-2025-38166 的情报信息

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

同批安全公告 · Linux · 2025-07-03 · 共 78 条

CVE-2025-38139 9.8 CRITICAL Linux kernel 安全漏洞
CVE-2025-38123 9.8 CRITICAL Linux kernel 安全漏洞
CVE-2025-38146 9.4 CRITICAL Linux kernel 安全漏洞
CVE-2025-38120 9.4 CRITICAL Linux kernel 安全漏洞
CVE-2025-38111 7.8 HIGH Linux kernel 安全漏洞
CVE-2025-38116 7.8 HIGH Linux kernel 安全漏洞
CVE-2025-38108 7.8 HIGH Linux kernel 安全漏洞
CVE-2025-38102 7.8 HIGH Linux kernel 安全漏洞
CVE-2025-38101 7.8 HIGH Linux kernel 安全漏洞
CVE-2025-38098 7.8 HIGH Linux kernel 安全漏洞
CVE-2025-38097 7.8 HIGH Linux kernel 安全漏洞
CVE-2025-38095 7.8 HIGH Linux kernel 安全漏洞
CVE-2025-38106 7.8 HIGH Linux kernel 安全漏洞
CVE-2025-38115 7.8 HIGH Linux kernel 安全漏洞
CVE-2025-38117 7.8 HIGH Linux kernel 安全漏洞
CVE-2025-38118 7.8 HIGH Linux kernel 安全漏洞
CVE-2025-38127 7.8 HIGH Linux kernel 安全漏洞
CVE-2025-38129 7.8 HIGH Linux kernel 安全漏洞
CVE-2025-38133 7.8 HIGH Linux kernel 安全漏洞
CVE-2025-38141 7.8 HIGH Linux kernel 安全漏洞

显示前 20 条,共 78 条。 查看全部 &rarr; →

IV. Related Vulnerabilities

V. Comments for CVE-2025-38166

暂无评论


发表评论