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

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2026-23406— apparmor: fix side-effect bug in match_char() macro usage

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 kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于match_char宏存在副作用错误,可能导致越界读取。

CVSS 7.8 · High EPSS 0.18% · P7

Affected Version Matrix 18

VendorProduct Version RangeStatus
Linux Linux 074c1cd798cb0b481d7eaa749b64aa416563c053< c7dc56d8b37eda1396feeec3ab1c7ecee5eae31b affected
074c1cd798cb0b481d7eaa749b64aa416563c053< f16f2e5936c0f5f0d11fdf10d2be3e47e7108e42 affected
074c1cd798cb0b481d7eaa749b64aa416563c053< 1fc94f16098213d01e56c97feed9b3ecf0147a37 affected
074c1cd798cb0b481d7eaa749b64aa416563c053< 5a184f7cbdeaad17e16dedf3c17d0cd622edfed8 affected
074c1cd798cb0b481d7eaa749b64aa416563c053< b73c1dff8a9d7eeaebabf8097a5b2de192f40913 affected
074c1cd798cb0b481d7eaa749b64aa416563c053< 0510d1ba0976f97f521feb2b75b0572ea5df3ceb affected
074c1cd798cb0b481d7eaa749b64aa416563c053< 383b7270faf42564f133134c2fc3c24bbae52615 affected
074c1cd798cb0b481d7eaa749b64aa416563c053< 8756b68edae37ff546c02091989a4ceab3f20abd affected
… +10 more rows
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2026-23406

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
apparmor: fix side-effect bug in match_char() macro usage
Source: CVE Program / CVE List V5
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: apparmor: fix side-effect bug in match_char() macro usage The match_char() macro evaluates its character parameter multiple times when traversing differential encoding chains. When invoked with *str++, the string pointer advances on each iteration of the inner do-while loop, causing the DFA to check different characters at each iteration and therefore skip input characters. This results in out-of-bounds reads when the pointer advances past the input buffer boundary. [ 94.984676] ================================================================== [ 94.985301] BUG: KASAN: slab-out-of-bounds in aa_dfa_match+0x5ae/0x760 [ 94.985655] Read of size 1 at addr ffff888100342000 by task file/976 [ 94.986319] CPU: 7 UID: 1000 PID: 976 Comm: file Not tainted 6.19.0-rc7-next-20260127 #1 PREEMPT(lazy) [ 94.986322] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2 04/01/2014 [ 94.986329] Call Trace: [ 94.986341] <TASK> [ 94.986347] dump_stack_lvl+0x5e/0x80 [ 94.986374] print_report+0xc8/0x270 [ 94.986384] ? aa_dfa_match+0x5ae/0x760 [ 94.986388] kasan_report+0x118/0x150 [ 94.986401] ? aa_dfa_match+0x5ae/0x760 [ 94.986405] aa_dfa_match+0x5ae/0x760 [ 94.986408] __aa_path_perm+0x131/0x400 [ 94.986418] aa_path_perm+0x219/0x2f0 [ 94.986424] apparmor_file_open+0x345/0x570 [ 94.986431] security_file_open+0x5c/0x140 [ 94.986442] do_dentry_open+0x2f6/0x1120 [ 94.986450] vfs_open+0x38/0x2b0 [ 94.986453] ? may_open+0x1e2/0x2b0 [ 94.986466] path_openat+0x231b/0x2b30 [ 94.986469] ? __x64_sys_openat+0xf8/0x130 [ 94.986477] do_file_open+0x19d/0x360 [ 94.986487] do_sys_openat2+0x98/0x100 [ 94.986491] __x64_sys_openat+0xf8/0x130 [ 94.986499] do_syscall_64+0x8e/0x660 [ 94.986515] ? count_memcg_events+0x15f/0x3c0 [ 94.986526] ? srso_alias_return_thunk+0x5/0xfbef5 [ 94.986540] ? handle_mm_fault+0x1639/0x1ef0 [ 94.986551] ? vma_start_read+0xf0/0x320 [ 94.986558] ? srso_alias_return_thunk+0x5/0xfbef5 [ 94.986561] ? srso_alias_return_thunk+0x5/0xfbef5 [ 94.986563] ? fpregs_assert_state_consistent+0x50/0xe0 [ 94.986572] ? srso_alias_return_thunk+0x5/0xfbef5 [ 94.986574] ? arch_exit_to_user_mode_prepare+0x9/0xb0 [ 94.986587] ? srso_alias_return_thunk+0x5/0xfbef5 [ 94.986588] ? irqentry_exit+0x3c/0x590 [ 94.986595] entry_SYSCALL_64_after_hwframe+0x76/0x7e [ 94.986597] RIP: 0033:0x7fda4a79c3ea Fix by extracting the character value before invoking match_char, ensuring single evaluation per outer loop.
Source: 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
Source: CVE Program / CVE List V5
Vulnerability Type
N/A
Source: CVE Program / CVE List V5
Vulnerability Title
Linux kernel 安全漏洞
Source: CNNVD (China National Vulnerability Database)
Vulnerability Description
Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于match_char宏存在副作用错误,可能导致越界读取。
Source: CNNVD (China National Vulnerability Database)
CVSS Information
N/A
Source: CNNVD (China National Vulnerability Database)
Vulnerability Type
N/A
Source: CNNVD (China National Vulnerability Database)

Affected Products

Vendor Product Affected Versions CPE Subscribe
Linux Linux 074c1cd798cb0b481d7eaa749b64aa416563c053 ~ c7dc56d8b37eda1396feeec3ab1c7ecee5eae31b -
Linux Linux 4.17 -

II. Public POCs for CVE-2026-23406

# 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-23406

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

Same Patch Batch · Linux · 2026-04-01 · 11 CVEs total

CVE-2026-23411 7.8 HIGH apparmor: fix race between freeing data and fs accessing it
CVE-2026-23410 7.8 HIGH apparmor: fix race on rawdata dereference
CVE-2026-23408 7.8 HIGH apparmor: Fix double free of ns_name in aa_replace_profiles()
CVE-2026-23407 7.8 HIGH apparmor: fix missing bounds check on DEFAULT table in verify_dfa()
CVE-2026-23409 apparmor: fix differential encoding verification
CVE-2026-23405 apparmor: fix: limit the number of levels of policy namespaces
CVE-2026-23404 apparmor: replace recursive profile removal with iterative approach
CVE-2026-23403 apparmor: fix memory leak in verify_header
CVE-2026-23402 KVM: x86/mmu: Only WARN in direct MMUs when overwriting shadow-present SPTE
CVE-2026-23401 KVM: x86/mmu: Drop/zap existing present SPTE even when creating an MMIO SPTE

IV. Related Vulnerabilities

V. Comments for CVE-2026-23406

No comments yet


Leave a comment