Skip to content

Latest commit

ย 

History

96 Commits

Folders and files

NameName
Last commit message
Last commit date
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

cve-patch-auditor (cpa)

์‹œ์Šคํ…œ๋ณ„ CVE ์˜ํ–ฅ๋„ / ํŒจ์น˜ ์ƒํƒœ / ์กฐ์น˜ ์ง„ํ–‰ / ์กฐ์น˜๊ฒฐ๊ณผ ๊ฒ€์ฆ์„ ๋‹จ์ผ Go ๋ฐ”์ด๋„ˆ๋ฆฌ ๋กœ ์ž๋™ํ™”ํ•˜๋Š” CLI ๊ฐ์‚ฌ ๋„๊ตฌ.

Audit CVE impact, remediation, and verification across systems with a single static Go binary.

๋ณธ ๋„๊ตฌ๋Š” ์ž„์‹œ ์กฐ์น˜(๋ชจ๋“ˆ ์ฐจ๋‹จ, ์„ค์ • ํ† ๊ธ€ ๋“ฑ) ๊ฒฝ๋กœ์— ์ง‘์ค‘ํ•œ๋‹ค. ์˜๊ตฌ ์กฐ์น˜(ํŒจํ‚ค์ง€ ์—…๋ฐ์ดํŠธ)๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ๋ฐฐํฌํŒ ํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ €๋กœ ๋ณ„๋„ ์ ์šฉํ•ด์•ผ ํ•œ๋‹ค. ์ •์ฑ…: ๋„๊ตฌ๊ฐ€ ์ž๋™ ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ์€ ์ž„์‹œ์กฐ์น˜๋ฟ์ด๋ฉฐ apt/dnf/zypper๋Š” ํ˜ธ์ถœํ•˜์ง€ ์•Š๋Š”๋‹ค โ€” ํŒจํ‚ค์ง€ ์—…๋ฐ์ดํŠธ๊ฐ€ ๋ถˆ๊ฐ€ํ•œ ์ƒํ™ฉ์—์„œ ์ฆ‰์‹œ ์ ์šฉ ๊ฐ€๋Šฅํ•œ ์กฐ์น˜๋ฅผ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์ด ๋ณธ ๋„๊ตฌ์˜ ์—ญํ• .

์ตœ๊ทผ ์ ๊ฒ€ โ€” 2026-09-11. ์ƒˆ ๋ฆด๋ฆฌ์ฆˆ๊ฐ€ ์—†๋Š” ๊ธฐ๊ฐ„์—๋„ CISA KEV / NVD ์‹ ๊ทœ ๋“ฑ์žฌ๋ฅผ ์ฃผ๊ธฐ์ ์œผ๋กœ ์‚ดํŽด doc/CVE-STATUS.md์˜ ยง1~ยง4 ๋ถ„๋ฅ˜์— ๋ฐ˜์˜ํ•œ๋‹ค. ์ž๋™ ์ฒ˜๋ฆฌ(ยง1) ์ถ”๊ฐ€๊ฐ€ ์—†๋Š” ์ ๊ฒ€๋„ ๊ฐ™์€ ๋ฌธ์„œ "๋ณ€๊ฒฝ ์ด๋ ฅ"์— ํ•œ ์ค„ ๊ธฐ๋ก โ€” ์šด์˜์ž๊ฐ€ "๊ทธ ์‚ฌ์ด ์ƒˆ ์œ„ํ˜‘์ด ์žˆ์—ˆ๋Š”์ง€ยท์—†์—ˆ๋Š”์ง€"๋ฅผ ๋‹จ์ผ ์ถœ์ฒ˜๋กœ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•œ๋‹ค.

์ฐจ๋‹จ ๊ฑด์ˆ˜

๊ตฌ๋ถ„ ๊ฑด์ˆ˜ ํ™•์ธ ๋ช…๋ น
์ง์ ‘ ์ฐจ๋‹จ (ยง1) โ€” ๋„๊ตฌ๊ฐ€ ๊ฒจ๋ƒฅํ•ด ์ž„์‹œ์กฐ์น˜๋ฅผ ์ ์šฉํ•˜๋Š” CVE 11๊ฑด cpa --list
๋ถ€์ˆ˜ ์ฐจ๋‹จ (ยง2) โ€” ๊ฐ™์€ ์กฐ์น˜์— ์–นํ˜€ ํ•จ๊ป˜ ๋ง‰ํžˆ๋Š” CVE 21๊ฑด cpa --covered
์ „์ฒด ์ฐจ๋‹จ (ยง1 + ยง2) 32๊ฑด

ยง2 21๊ฑด์€ ๋Œ€ํ‘œ ํ•ญ๋ชฉ 9๊ฑด + ๊ฐ™์€ ์ฐจ๋‹จ ๊ฒฝ๋กœ๋กœ ํ•จ๊ป˜ ๋ง‰ํžˆ๋Š” ๋™๋ฐ˜ CVE 12๊ฑด์ด๋‹ค (cifs ๊ฒฝ๋กœ 6๊ฑด ยท openvswitch ๊ฒฝ๋กœ 3๊ฑด ยท sctp ๊ฒฝ๋กœ 3๊ฑด). ๋™๋ฐ˜ CVE ๋Š” ์ฐจ๋‹จ ๊ทผ๊ฑฐ์™€ caveat ์ด ๋Œ€ํ‘œ ํ•ญ๋ชฉ๊ณผ ๊ฐ™์•„ doc/CVE-STATUS.md ยง2 ์—์„œ ๋Œ€ํ‘œ ํ•ญ๋ชฉ์— ๋ˆ„์  ๊ธฐ๋กํ•˜์ง€๋งŒ, ์‹ค์ œ๋กœ ์ฐจ๋‹จ๋˜๋Š” CVE ์ด๋ฏ€๋กœ ๊ฑด์ˆ˜์—๋Š” ๊ทธ๋Œ€๋กœ ํฌํ•จํ•œ๋‹ค.

ยง2 ๋Š” ยง1 ์กฐ์น˜๊ฐ€ ์‹ค์ œ๋กœ ๊ฑธ๋ ค ์žˆ๋Š” ํ˜ธ์ŠคํŠธ์—์„œ๋งŒ ์„ฑ๋ฆฝํ•œ๋‹ค(ํ™œ์„ฑ ์‚ฌ์šฉ ๊ฒŒ์ดํŠธ๋กœ ์กฐ์น˜๊ฐ€ Skip ๋˜๋ฉด ์„ฑ๋ฆฝํ•˜์ง€ ์•Š์Œ). ์œ„ 21๊ฑด์€ ์ „์ฒด ๋ชฉ๋ก์ด๊ณ , ๋‚ด ํ˜ธ์ŠคํŠธ์—์„œ ์ง€๊ธˆ ๋ช‡ ๊ฑด์ด ์‹ค์ œ๋กœ ๋ง‰ํ˜€ ์žˆ๋Š”์ง€๋Š” cpa --covered ๊ฐ€ assess ๋ฅผ ๋Œ๋ ค ํŒ์ •ํ•ด ์•Œ๋ ค์ค€๋‹ค. ยง2 ์ค‘ CVE-2026-53362(ipv6_frag_escape)๋Š” CISA KEV ๋“ฑ์žฌ๋ถ„(2026-08-27)์ด๋‹ค.

์ง€์›ํ•˜๋Š” CVE (ํ˜„์žฌ)

CVE ๋ณ„์นญ ์˜ํ–ฅ ์ปดํฌ๋„ŒํŠธ ์ž„์‹œ ์กฐ์น˜ (๋„๊ตฌ ์ž๋™)
CVE-2026-31431 Copy Fail (CISA KEV 2026-05-01) Linux ์ปค๋„ algif_aead (AF_ALG + splice) ๋กœ๋”๋ธ”(=m): ๋ชจ๋“ˆ ์ฐจ๋‹จยท์–ธ๋กœ๋“œ ยท built-in(=y, RHEL ํ”ํ•จ, Stage 11): grubby --update-kernel=ALL --args=initcall_blacklist=algif_aead_init + ์žฌ๋ถ€ํŒ…
CVE-2026-43284 Dirty Frag #1 Linux ์ปค๋„ esp4/esp6 (IPsec) ๋‘ ๋ชจ๋“ˆ ์ฐจ๋‹จยท์–ธ๋กœ๋“œ (IPsec ์‚ฌ์šฉ ํ™˜๊ฒฝ ์ฃผ์˜)
CVE-2026-43500 Dirty Frag #2 Linux ์ปค๋„ rxrpc/afs ๋‘ ๋ชจ๋“ˆ ์ฐจ๋‹จยท์–ธ๋กœ๋“œ
CVE-2026-46300 Fragnesia Linux ์ปค๋„ XFRM ESP-in-TCP (esp4/esp6/rxrpc) ์„ธ ๋ชจ๋“ˆ ์ฐจ๋‹จยท์–ธ๋กœ๋“œ (43284/43500๊ณผ ๋ชจ๋“ˆ ์ผ๋ถ€ ๊ณต์œ )
CVE-2026-23918 Apache HTTP/2 double-free Apache HTTPD mod_http2 (< 2.4.67) โ€” Stage 12 ์ถ”๊ฐ€ <IfModule http2_module>Protocols http/1.1</IfModule> ๋“œ๋กญ์ธ conf + systemctl reload (๋ชจ๋“ˆ์€ ์ ์žฌ ์œ ์ง€, HTTP/2 ํ˜‘์ƒ๋งŒ ์ฐจ๋‹จ)
CVE-2026-46333 ssh-keysign-pwn (ptrace exit-race) Linux ์ปค๋„ __ptrace_may_access() (Yama LSM) โ€” Stage 13 ์ถ”๊ฐ€ /etc/sysctl.d/cpa-cve-2026-46333.conf ๋“œ๋กญ์ธ + sysctl -w kernel.yama.ptrace_scope=2 (์ฆ‰์‹œ ์ ์šฉ + ์žฌ๋ถ€ํŒ… ํ›„ ์œ ์ง€). โš  ๋ถ€๋ถ„ ์ฐจ๋‹จ โ€” ๋ฒค๋” ์ปค๋„ ํŒจ์น˜ ๊ถŒ์žฅ
CVE-2026-46243 CIFSwitch Linux ์ปค๋„ CIFS ํด๋ผ์ด์–ธํŠธ cifs.spnego upcall (cifs ๋ชจ๋“ˆ) โ€” Stage 14 ์ถ”๊ฐ€ install cifs /bin/false + blacklist cifs + modprobe -r cifs. โš  ํ™œ์„ฑ CIFS/SMB ๋งˆ์šดํŠธ๊ฐ€ ์žˆ์œผ๋ฉด ๋ฏธ์ ์šฉ(์–ธ๋กœ๋“œ ์‹œ ๋งˆ์šดํŠธ ๋Š๊น€) โ€” ์ปค๋„ ์—…๋ฐ์ดํŠธ ๋˜๋Š” ์–ธ๋งˆ์šดํŠธ ํ›„ ์žฌ์‹คํ–‰
CVE-2026-46331 Pedit COW Linux ์ปค๋„ tc act_pedit ํŒจํ‚ท ์—๋””ํ„ฐ ์•ก์…˜ (ํŽ˜์ด์ง€ ์บ์‹œ ์†์ƒ LPE) โ€” Stage 16 ์ถ”๊ฐ€ install act_pedit /bin/false + blacklist act_pedit + modprobe -r act_pedit. โš  ํ™œ์„ฑ tc pedit ์‚ฌ์šฉ ์‹œ ๋ฏธ์ ์šฉ(์ฐจ๋‹จ ์‹œ tc ๊ทœ์น™ ์†์ƒ) โ€” ์ปค๋„ ์—…๋ฐ์ดํŠธ ๋˜๋Š” ์•ก์…˜ ์ œ๊ฑฐ ํ›„ ์žฌ์‹คํ–‰
CVE-2026-53264 net/sched tc_action UAF Linux ์ปค๋„ net/sched/act_api.c tc action UAF LPE (์ฝ”์–ด, ๋ชจ๋“ˆ ์•„๋‹˜) โ€” Stage 17 ์ถ”๊ฐ€ userns ์ฐจ๋‹จ sysctl(user.max_user_namespaces=0 ยท Debian/Ubuntu kernel.unprivileged_userns_clone=0 ์šฐ์„ ) ๋“œ๋กญ์ธ + sysctl -w. โš  ํ™œ์„ฑ userns ์‚ฌ์šฉ ์‹œ ๋ฏธ์ ์šฉ(rootless ์ปจํ…Œ์ด๋„ˆ/์ƒŒ๋“œ๋ฐ•์Šค ํŒŒ์† ๋ฐฉ์ง€) โ€” ์ปค๋„ ์—…๋ฐ์ดํŠธ ๋˜๋Š” userns ์ค‘๋‹จ ํ›„ ์žฌ์‹คํ–‰
CVE-2026-64531 OVSwrap Linux ์ปค๋„ Open vSwitch ๋ฐ์ดํ„ฐํŒจ์Šค nla_len(u16) ์ •์ˆ˜ ์˜ค๋ฒ„ํ”Œ๋กœ โ†’ ๋ฉ”๋ชจ๋ฆฌ ์†์ƒ LPE (openvswitch ๋ชจ๋“ˆ) โ€” Stage 18 ์ถ”๊ฐ€ install openvswitch /bin/false + blacklist openvswitch + modprobe -r openvswitch. โš  ํ™œ์„ฑ OVS ๋ฐ์ดํ„ฐํŒจ์Šค ์‚ฌ์šฉ ์‹œ ๋ฏธ์ ์šฉ(ํ˜ธ์ŠคํŠธ ๋„คํŠธ์›Œํ‚น ์ ˆ๋‹จ ๋ฐฉ์ง€) โ€” ์ปค๋„ ์—…๋ฐ์ดํŠธ ๋˜๋Š” OVS ์ค‘๋‹จ ํ›„ ์žฌ์‹คํ–‰. โš  ๋ชจ๋“ˆ์ด ์ž๋™ ๋กœ๋“œ(Generic Netlink family ํ•ด์„)๋˜๋ฏ€๋กœ ๋ฏธ๋กœ๋“œ ํ˜ธ์ŠคํŠธ๋„ ์ทจ์•ฝ์œผ๋กœ ํŒ์ •
CVE-2026-64564 SCTPhantom Linux ์ปค๋„ SCTP ASCONF transport use-after-free โ†’ LPEยท์ปจํ…Œ์ด๋„ˆ ํƒˆ์ถœ (sctp ๋ชจ๋“ˆ) โ€” Stage 19 ์ถ”๊ฐ€ install sctp /bin/false + blacklist sctp + modprobe -r sctp (Red Hat ๊ณต์‹ ๊ถŒ๊ณ ์™€ ๋™์ผํ•œ ํ˜•ํƒœ). โš  ํ™œ์„ฑ SCTP ์‚ฌ์šฉ ์‹œ ๋ฏธ์ ์šฉ(SIGTRAN ๋“ฑ ์‘์šฉ ์ค‘๋‹จ ๋ฐฉ์ง€). โš  ์ž๋™ ๋กœ๋“œ(SCTP ์†Œ์ผ“ ์ƒ์„ฑ)๋˜๋ฏ€๋กœ ๋ฏธ๋กœ๋“œ ํ˜ธ์ŠคํŠธ๋„ ์ทจ์•ฝ โ€” ๋‹จ ๋ชจ๋“ˆ ํŒŒ์ผ์ด ์—†์œผ๋ฉด(RHEL ๊ณ„์—ด kernel-modules-extra ๋ฏธ์„ค์น˜) ์ž๋™ ๋กœ๋“œ ๋ถˆ๊ฐ€๋กœ OK ํŒ์ •

์ฒ˜์Œ 4๊ฐœ CVE๋Š” Linux ์ปค๋„ ๋ชจ๋“ˆ LPE, CVE-2026-23918์€ ์ฒซ ๋น„-์ปค๋„(๋ฐ๋ชฌ) ์‚ฌ๋ก€, CVE-2026-46333์€ ์ฒซ ๋น„-๋ชจ๋“ˆ ์ปค๋„ CVE(Yama LSM sysctl), CVE-2026-46243(CIFSwitch)์€ ๋ชจ๋“ˆ ์ฐจ๋‹จ(Pattern A)์— ํ™œ์„ฑ ์‚ฌ์šฉ ๊ฒŒ์ดํŠธ๋ฅผ ์ฒ˜์Œ ๊ฒฐํ•ฉํ•œ ์‚ฌ๋ก€, CVE-2026-46331(Pedit COW)์€ ยง1 Dirty Frag ํŒจ๋ฐ€๋ฆฌ(ํŽ˜์ด์ง€ ์บ์‹œ ์†์ƒ LPE)์— tc pedit ์‚ฌ์šฉ ๊ฒŒ์ดํŠธ๋ฅผ ์ ์šฉํ•œ ์‚ฌ๋ก€, CVE-2026-53264(net/sched tc_action UAF)๋Š” ์ทจ์•ฝ ์ฝ”๋“œ๊ฐ€ tc ์ฝ”์–ด(๋ชจ๋“ˆ ์•„๋‹˜)๋ผ ๋ชจ๋“ˆ ์ฐจ๋‹จ ๋Œ€์‹  userns ์ฐจ๋‹จ sysctl + ํ™œ์„ฑ userns ๊ฒŒ์ดํŠธ๋ฅผ ์“ด ์ฒซ ์‚ฌ๋ก€, CVE-2026-64531(OVSwrap)์€ Pattern A๋กœ ๋ณต๊ท€ํ•˜๋ฉด์„œ ๋ชจ๋“ˆ์ด ์ž๋™ ๋กœ๋“œ๋˜๋Š” ํƒ“์— "๋ฏธ๋กœ๋“œ"๋„ ์•ˆ์ „์ด ์•„๋‹ˆ๋ผ๊ณ  ํŒ์ •ํ•˜๋Š” ์ฒซ ์‚ฌ๋ก€, CVE-2026-64564(SCTPhantom)์€ ๊ฑฐ๊ธฐ์— "๋ชจ๋“ˆ ํŒŒ์ผ์ด ์•„์˜ˆ ์—†์œผ๋ฉด ์ทจ์•ฝ์ด ์•„๋‹ˆ๋‹ค" ํŒ์ •์„ ๋”ํ•œ ์ฒซ ์‚ฌ๋ก€(RHEL ๊ณ„์—ด kernel-modules-extra ๋ถ„๋ฆฌ โ€” ์ปค๋„ ๋ฒ„์ „๋งŒ ๋ณด๋ฉด ๊ณผ์ž‰ ๋ณด๊ณ ๊ฐ€ ๋œ๋‹ค). ์˜๊ตฌ ํ•ด๊ฒฐ์€ ๋ชจ๋‘ ๋ฒค๋” ํŒจํ‚ค์ง€ ์—…๋ฐ์ดํŠธ.

์ง€์› ์™ธ CVE ๋ถ„๋ฅ˜ ํ˜„ํ™ฉ

๋ณธ ๋„๊ตฌ๊ฐ€ ๊ฒ€ํ† ํ•œ CVE๋Š” 4๊ฐ€์ง€๋กœ ๋ถ„๋ฅ˜ํ•œ๋‹ค. ์œ„ "์ง€์›ํ•˜๋Š” CVE" ํ‘œ๋Š” ยง1๋งŒ ๋ณด์—ฌ์ฃผ๋ฉฐ, ๋‚˜๋จธ์ง€ ๋ถ„๋ฅ˜ยท๊ทผ๊ฑฐยท์ถœ์ฒ˜๋Š” doc/CVE-STATUS.md์—์„œ ๋‹จ์ผ ์ƒ‰์ธ์œผ๋กœ ๊ด€๋ฆฌํ•œ๋‹ค.

ยง ๋ถ„๋ฅ˜ ํ˜„์žฌ ํ•ญ๋ชฉ (2026-09-11) cpa --list
ยง1 ์ฒ˜๋ฆฌ ๋ฐ˜์˜ (Implemented) ์œ„ ํ‘œ์˜ 11๊ฑด โœ… ๋…ธ์ถœ
ยง2 ์˜ํ–ฅ ์žˆ์œผ๋‚˜ ์ด๋ฏธ ์ฐจ๋‹จ๋จ CVE-2026-31635 (DirtyDecrypt) โ€” rxrpc ๋ณ€์ข…, CVE-2026-43500/46300 ์ž„์‹œ์กฐ์น˜๋กœ ํ•จ๊ป˜ ์ฐจ๋‹จ ยท CVE-2026-49975 (HTTP/2 Bomb, oss-sec 2026-06-03) โ€” Apache ๊ฒฝ๋กœ๋Š” Stage 12 (CVE-2026-23918) Protocols http/1.1 ๋“œ๋กญ์ธ์ด HTTP/2 ํ˜‘์ƒ ์ž์ฒด๋ฅผ ์ฐจ๋‹จํ•˜๋ฏ€๋กœ ํ•จ๊ป˜ ์ฐจ๋‹จ ยท CVE-2026-43503 (DirtyClone, SKB shared-frag LPE) โ€” ยง1 esp4/esp6 ์ฐจ๋‹จ(CVE-2026-43284/46300)์ด ESP ๊ฒฝ์œ  ์‹œ์—ฐ ์ต์Šคํ”Œ๋กœ์ž‡์„ ํ•จ๊ป˜ ์ฐจ๋‹จ; ๋‹จ ๊ฒฐํ•จ์€ ๋ฒ”์šฉ skb๋ผ ์ปค๋„ ํŒจ์น˜ ํ•„์ˆ˜ (์ตœ์ข… ๊ฒ€ํ†  2026-06-28) ยท CVE-2026-64597 / -64598 (์ปค๋„ SMB ํด๋ผ์ด์–ธํŠธ double-free / ์ž˜๋ชป๋œ ์—๋Ÿฌ ํฌ์ธํ„ฐ, 9.8ยท8.8) โ€” ๊ฒฐํ•จ์ด cifs ๋ชจ๋“ˆ์— ์žˆ์–ด ยง1 CVE-2026-46243(Stage 14) ์ฐจ๋‹จ์œผ๋กœ ํ•จ๊ป˜ ์ฐจ๋‹จ; โš  ๋‹จ Stage 14 ๋Š” ํ™œ์„ฑ SMB ๋งˆ์šดํŠธ ์‹œ Skipped ๋˜๊ณ  ๋…ธ์ถœ ํ˜ธ์ŠคํŠธ๊ฐ€ ์ •ํ™•ํžˆ ๊ทธ ํ˜ธ์ŠคํŠธ๋ผ SMB ์šด์˜ ์‹œ ์ปค๋„ ์—…๋ฐ์ดํŠธ ํ•„์ˆ˜ (2026-08-14) ยท CVE-2026-72338 (tc act_pedit TOCTOU heap OOB write, ZDI ์ œ๋ณด) โ€” ๊ฒฐํ•จ ๋ชจ๋“ˆ act_pedit ์€ ยง1 Stage 16(Pedit COW)์ด, ๋ฌด๊ธฐํ™”์— ํ•„์š”ํ•œ CAP_NET_ADMIN ํš๋“ ๊ฒฝ๋กœ(userns)๋Š” ยง1 Stage 17(53264)์ด ์ฐจ๋‹จํ•˜๋Š” ์ด์ค‘ ์ฐจ๋‹จ ์ฒซ ์‚ฌ๋ก€; โš  ๋‘ ์กฐ์น˜ ๋‹ค Skip ๋˜๋Š” ํ˜ธ์ŠคํŠธ๋Š” ์ปค๋„ ์—…๋ฐ์ดํŠธ ํ•„์ˆ˜ ยท CVE-2026-74465 (Open vSwitch meter attach UAF, ZDI ์ œ๋ณด) โ€” ยง1 Stage 18(OVSwrap) openvswitch ์ฐจ๋‹จ์œผ๋กœ ํ•จ๊ป˜ ์ฐจ๋‹จ, 68123ยท74464ยท31678(2026-09-11 ์ถ”๊ฐ€) ๋„ ๋ณธ ํ•ญ๋ชฉ์— ํฌํ•จ ์ถ”์  (2026-08-21) ยท ๐Ÿ”ด CVE-2026-53362 (ipv6_frag_escape โ€” IPv6 fraggap heap OOB โ†’ ์ปจํ…Œ์ด๋„ˆ ํƒˆ์ถœโ†’ํ˜ธ์ŠคํŠธ root, ๊ณต๊ฐœ PoC, CISA KEV 2026-08-27 / FCEB 08-30) โ€” ์ต์Šคํ”Œ๋กœ์ž‡์ด ๋น„ํŠน๊ถŒ userns ๋ฅผ ์ „์ œํ•˜๊ณ  Red Hat(RHSB-2026-009)ยทCIQ ๊ณต์‹ ์ž„์‹œ์กฐ์น˜ user.max_user_namespaces=0 ๊ฐ€ ยง1 Stage 17(53264) ์˜ knob ๊ณผ ๋™์ผํ•ด ํ•จ๊ป˜ ์ฐจ๋‹จ (ยง2 ์ค‘ ๋ฒค๋” ๊ณต์‹ ์™„ํ™”์™€ ยง1 ์กฐ์น˜๊ฐ€ ์ผ์น˜ํ•˜๋Š” ์ฒซ ์‚ฌ๋ก€); โš  Stage 17 ์€ ํ™œ์„ฑ userns ์‹œ Skipped ๋ผ rootless Podmanยท์ปจํ…Œ์ด๋„ˆ ์šด์˜ ํ˜ธ์ŠคํŠธ๋Š” ์ปค๋„ ์—…๋ฐ์ดํŠธ ํ•„์ˆ˜ (2026-08-28) ยท CVE-2026-52924 / -52929 / -68162 / -68376 (์ปค๋„ SCTP 4๊ฑด โ€” stale COOKIE-ECHO outqueue 9.8 ยท add-stream ๋กค๋ฐฑ ๋ฏธ์™„ 7.5 ยท auth_enable sysctl UAF 7.8 ยท sctp_cookie.auth_hmacs ํฌ๊ธฐ ์˜ค์‚ฐ 8.1) โ€” ์ „๋ถ€ sctp ๋ชจ๋“ˆ์ด๋ผ ยง1 CVE-2026-64564(SCTPhantom, Stage 19) ์ฐจ๋‹จ์œผ๋กœ ํ•จ๊ป˜ ์ฐจ๋‹จ; NebuSec ์ด 2026-09-07 oss-sec ์— ๊ณต๊ฐœ ์ต์Šคํ”Œ๋กœ์ž‡๊ณผ ํ•จ๊ป˜ ๋“œ๋กญํ•œ 22๊ฑด ๋ฐฐ์น˜ ์ค‘ 5๊ฑด์ด ์ด๋ฏธ cpa ์ฐจ๋‹จ ๋ฒ”์œ„ ์•ˆ์ด์—ˆ๋‹ค(๋‚˜๋จธ์ง€ 1๊ฑด์€ ์œ„ openvswitch 31678); โš  Stage 19 ๋Š” ํ™œ์„ฑ SCTP ์‚ฌ์šฉ ์‹œ Skipped ๋ผ SCTP ์šด์˜ ํ˜ธ์ŠคํŠธ๋Š” ์ปค๋„ ์—…๋ฐ์ดํŠธ ํ•„์ˆ˜ (2026-09-11) โŒ ๋ฏธ๋…ธ์ถœ
ยง3 ์ฒ˜๋ฆฌ ์˜ˆ์ • (Backlog) ๐Ÿ”ต P3 CVE-2026-72390 (sch_teql slaves ๋ฆฌ์ŠคํŠธ UAF, ZDI ์ œ๋ณด) โ€” Pattern A ์— ๊ทธ๋Œ€๋กœ ๋งž๊ณ  teql ์€ ์‚ฌ์‹ค์ƒ ๋ฏธ์‚ฌ์šฉ์ด๋ผ ์ฐจ๋‹จ ์šด์˜ ์˜ํ–ฅ์ด ๊ฐ€์žฅ ์ž‘์œผ๋‚˜, MODULE_ALIAS ๋ถ€์žฌ + qdisc id ๊ฐ€ teql0 ์ด๋ผ ์ž๋™ ๋กœ๋“œ๊ฐ€ ์„ฑ๋ฆฝํ•˜์ง€ ์•Š์•„(์ง์ ‘ ํ™•์ธ) ๊ด€๋ฆฌ์ž๊ฐ€ ๋ช…์‹œ์ ์œผ๋กœ ์ ์žฌํ•˜์ง€ ์•Š์œผ๋ฉด ๋น„ํŠน๊ถŒ ๋„๋‹ฌ ๋ถˆ๊ฐ€ โ†’ P3. Red Hat Moderateยท๊ณต๊ฐœ PoC ์—†์Œ (2026-08-21) ยท [2026-09-11 ์‹ ๊ทœ 7๊ฑด โ€” NebuSec ๋ฐฐ์น˜, ์ „๋ถ€ ๊ณต๊ฐœ ์ต์Šคํ”Œ๋กœ์ž‡ ๋ณด์œ ] ๐ŸŸ  P1 CVE-2026-43502 (ZcopyReaper) rds/rds_tcp zerocopy send ์ •๋ฆฌ UAF, openSUSE 6.4 ์—์„œ LPE ์‹ค์ฆ โ€” capability ๋„ userns ๋„ ๋ถˆ์š”๋ผ ยง1 Stage 17 ๋กœ ์•ˆ ๋ง‰ํžˆ๊ณ  Pattern A ๋ชจ๋“ˆ ์ฐจ๋‹จ์ด ์œ ์ผํ•œ ์ž„์‹œ์กฐ์น˜ ยท ๐ŸŸ  P1 CVE-2026-31659 / -63834 batman-adv (๊ธ€๋กœ๋ฒŒ TT 16bit wrap 9.8 / tp_meter unacked ๋ฆฌ์ŠคํŠธ ๋ฌด์ œํ•œ) ยท ๐ŸŸ  P1 CVE-2026-80714 ip_vs one-packet ํ”Œ๋ž˜๊ทธ ๋™๊ธฐ conn ์ „ํŒŒ 9.8 โ€” ์ฐจ๋‹จ ์‹œ LVSยทkeepalivedยทk8s IPVS ๋งˆ๋น„ ์œ„ํ—˜์ด ์ปค ํ™œ์„ฑ ์‚ฌ์šฉ ๊ฒŒ์ดํŠธ๊ฐ€ ํ•„์ˆ˜ ยท ๐ŸŸ  P1 CVE-2026-74597 ip6_tunnel ip6ip6_err() skbโ†’cb ๋ฏธ์ดˆ๊ธฐํ™” 9.8 ยท ๐ŸŸ  P1 CVE-2026-43042 mpls_router platform_label seqcount ๋ถ€์žฌ OOB ยท ๐ŸŸ  P1 CVE-2026-23274 xt_IDLETIMER rev0 ์˜ ALARM ํƒ€์ด๋จธ ๋ผ๋ฒจ ์žฌ์‚ฌ์šฉ. 7๊ฑด ๋ชจ๋‘ ์ด๋ฒˆ ์ ๊ฒ€์—์„œ๋Š” ๋ฐœ๊ตดยท๋ถ„์„๊นŒ์ง€๋งŒ ํ•˜๊ณ  Stage ๊ตฌํ˜„ ์—ฌ๋ถ€๋Š” ๋‹ค์Œ ์ ๊ฒ€์—์„œ ํŒ๋‹จ(2026-09-11 ๊ฒฐ์ •) โŒ ๋ฏธ๋…ธ์ถœ
ยง4 ์กฐ์น˜ ์•ˆ ํ•จ (Reviewed โ€” No Action) CVE-2025-34291 (Langflow CORS, KEV 2026-05-21) ยท CVE-2026-2005/-2006 (PostgreSQL pgcrypto) ยท CVE-2026-32710 (MariaDB JSON) ยท CVE-2026-33032 (nginx-ui MCP) ยท CVE-2026-34926 (Trend Micro Apex One, KEV 2026-05-21) ยท CVE-2026-42945 (NGINX Rift) ยท CVE-2026-20182 (Cisco SD-WAN) ยท CVE-2026-3854 (GitHub Enterprise) ยท CVE-2026-35414 (SplitSSHell) ยท CVE-2026-48172 (LiteSpeed cPanel, KEV 2026-05-26) ยท CVE-2026-8398 (DAEMON Tools ๊ณต๊ธ‰๋ง, KEV 2026-05-27) ยท CVE-2026-45321 (TanStack npm, KEV 2026-05-27) ยท CVE-2026-48027 (Nx Console, KEV 2026-05-27) ยท CVE-2026-46098 (Linux CAIF UAF, NVD 2026-05-27) ยท CVE-2026-9082 (Drupal Core PostgreSQL SQLi, KEV 2026-05-22) ยท CVE-2022-0492 (Linux cgroups v1 release_agent, KEV 2026-06-02) ยท CVE-2025-48595 (Android Framework, KEV 2026-06-02) ยท CVE-2026-45247 (Mirasvit Magento Cache Warmer, KEV 2026-06-03) ยท CVE-2026-23111 (Linux ์ปค๋„ nf_tables UAF LPE โ€” 2026-07-10 ๋ชจ๋‹ˆํ„ฐ๋ง ๊ฐ•๋“ฑ: 4์ฃผ ์ž„๊ณ„๊นŒ์ง€ KEV ๋ฏธ๋“ฑ์žฌ๋กœ ์ผ๋ฐ˜ ยง4 ์ „ํ™˜, KEV ๋“ฑ์žฌ ์‹œ ์žฌ๊ฒฉ์ƒ) ยท CVE-2026-46316 (Linux KVM/arm64 vGIC-ITS guest-to-host escape, ITScape PoC ๊ณต๊ฐœ) ยท CVE-2026-7473 (Arista EOS, KEV 2026-06-09) ยท CVE-2026-11645 (Chromium V8 OOB R/W, KEV 2026-06-09) ยท CVE-2026-20245 (Cisco Catalyst SD-WAN Manager, KEV 2026-06-09) ยท CVE-2026-42530 (NGINX HTTP/3 QUIC QPACK UAF, F5 2026-06-18, CVSS v4 9.2 โ€” ์˜ํ–ฅ OSS 1.31.0/1.31.1) ยท CVE-2026-42055 (NGINX HTTP/2/gRPC backend heap overflow, F5 2026-06-18, CVSS v4 9.2 โ€” ํŠน์ • conf ์กฐํ•ฉ ํ•œ์ •) ยท CVE-2026-20262 (Cisco Catalyst SD-WAN Manager arbitrary file write, KEV 2026-06-15) ยท CVE-2026-54420 (LiteSpeed cPanel Plugin symlink โ†’ root, KEV 2026-06-15, FCEB 2026-06-18) ยท CVE-2026-48907 (Joomla JCE editor unauth PHP RCE, KEV 2026-06-16, FCEB 2026-06-19, CVSS 10.0) ยท CVE-2026-20253 (Splunk Enterprise PostgreSQL sidecar missing-auth โ†’ pre-auth RCE, KEV 2026-06-18, FCEB 2026-06-21, CVSS 9.8) ยท CVE-2025-67038 (Lantronix EDS5000 code injection โ†’ root, KEV 2026-06-23) ยท CVE-2026-34908/-34909/-34910 (Ubiquiti UniFi OS access control/path traversal/input validation, KEV 2026-06-23) ยท CVE-2026-12569 (PTC Windchill/FlexPLM unauth RCE, KEV 2026-06-25) ยท CVE-2026-20230 (Cisco Unified CM SSRF โ†’ root, KEV 2026-06-25, CVSS 8.6, in-the-wild) ยท CVE-2026-45659 (MS SharePoint ์—ญ์ง๋ ฌํ™” RCE, KEV 2026-07-01) ยท CVE-2026-48558 (SimpleHelp ์ธ์ฆ ์šฐํšŒ, KEV 2026-06-29) ยท CVE-2026-35385/-35386/-35387/-35388 (OpenSSH 10.3 ํด๋ผ์ด์–ธํŠธ์ธก ๋ฐฐ์น˜, upgrade-only) ยท CVE-2026-55200 (libssh2 OOB write RCE, CVSS v4 9.2 CRITICALยท๊ณต๊ฐœ PoC, upgrade-only) ยท ๐Ÿ”ด CVE-2026-43499 (GhostLock โ€” futex PI rtmutex stack-UAF ๋น„ํŠน๊ถŒโ†’root+container escape, ๊ณต๊ฐœ exploitยท๋ฌด-์ „์ œ์กฐ๊ฑด, ์ฝ”์–ด๋ผ ์ฐจ๋‹จ๋ถˆ๊ฐ€ โ†’ ์ปค๋„ ์—…๋ฐ์ดํŠธ ๊ธด๊ธ‰, ๋ชจ๋‹ˆํ„ฐ๋ง ๋Œ€์ƒ) ยท CVE-2026-46242 (Bad Epoll โ€” ์ฝ”์–ด epoll race UAF ๋น„ํŠน๊ถŒโ†’root, ๊ณต๊ฐœ PoC, v6.4+๋งŒ ์˜ํ–ฅ) ยท CVE-2026-46215 (DRM/GEM ioctl UAF, 6.18+๋งŒ ์˜ํ–ฅ, ๊ณต๊ฐœ PoC) ยท CVE-2026-52969 (KVM dirty ring, /dev/kvm ํ•„์š”) ยท CVE-2026-53080 (tc cls_fw NULL-deref DoS) ยท CVE-2026-48908/-55255/-56290/-48282 (2026-07-07 KEV, ์•ฑ ๋ ˆ์ด์–ด) ยท CVE-2026-58644/-56164/-56155 (MS SharePointร—2ยทADFS) ยท CVE-2026-25089/-39808 (Fortinet FortiSandbox) ยท CVE-2026-15409/-15410 (SonicWall SMA1000) ยท CVE-2008-4128 (Cisco IOS) ยท CVE-2026-46817 (Oracle EBS) ยท CVE-2023-4346 (KNX) ยท CVE-2026-56291/-48939 (Balbooa/iCagenda) โ€” 2026-07-13~16 KEV, ์ „๋ถ€ ๋ฒ”์œ„ ์™ธ ยท ๐Ÿ”ด CVE-2026-64600 (RefluXFS โ€” XFS reflink CoW race ๋น„ํŠน๊ถŒโ†’root, ~16.4M RHELยทSELinux/์ปจํ…Œ์ด๋„ˆ ์šฐํšŒ, ์™„ํ™”์ฑ… ์—†์Œยท์ปค๋„ ํŒจ์น˜ ๊ธด๊ธ‰, ๋ชจ๋‹ˆํ„ฐ๋ง ๋Œ€์ƒ, 2026-07-22) ยท CVE-2026-53359 (Januscape โ€” KVM/x86 shadow-MMU UAF, guestโ†’host escape) ยท CVE-2026-41651 (Ubuntu PackageKit TOCTOU LPE, ๋ฐ์Šคํฌํƒ‘ ์ง€ํ–ฅ) ยท CVE-2026-60137/-63030 (WordPress Core) ยท CVE-2026-0770 (Langflow) ยท CVE-2021-27137 (DD-WRT) ยท CVE-2026-16232 (Check Point SmartConsole) ยท CVE-2026-50522 (MS SharePoint) โ€” 2026-07-21~22 KEV ยท CVE-2025-68686 (Fortinet FortiOS) ยท CVE-2026-16812 (Arista VeloCloud) ยท CVE-2026-20316 (Cisco Secure FMC) โ€” 2026-07-27~29 KEV, ์ „๋ถ€ ๋ฒ”์œ„ ์™ธ ยท CVE-2026-64561 (Zapscape โ€” KVM/x86 shadow-MMU UAF, L1 ๊ฒŒ์ŠคํŠธโ†’ํ˜ธ์ŠคํŠธ root escape, PoC ์กด์žฌยท๋ฌด๊ธฐํ™” ๋ฏธ์™„, Januscape ๋™์ผ ๊ณ„์—ด โ†’ KVM ์ฐจ๋‹จ=๊ฐ€์ƒํ™” ๋งˆ๋น„, 2026-08-06 ๊ณต๊ฐœ) ยท CVE-2026-63077 (JetBrains TeamCity) ยท CVE-2026-18556/-18577 (N-able N-central) ยท CVE-2026-34486 (Apache Tomcat EncryptInterceptor ์šฐํšŒ โ€” ํด๋Ÿฌ์Šคํ„ฐ๋ง ๊ธฐ๋Šฅ ๊ฒฐํ•จ์ด๋ผ ์•ˆ์ „ํ•œ ์ „์—ญ ํ† ๊ธ€ ๋ถ€์žฌ) ยท CVE-2026-9198 (IBM Langflow, 4๋ฒˆ์งธ KEV) โ€” 2026-08-03~05 KEV, ์ „๋ถ€ ๋ฒ”์œ„ ์™ธ ยท CVE-2026-68480 (x86/bugs SRSO Safe-RET, CPU ์™„ํ™” ๊ณ„์ธต) ยท CVE-2026-8037 (Progress LoadMaster ๋ช…๋ น ์ฃผ์ž…) ยท CVE-2026-20349 (Cisco Secure Firewall ASA/FTD heap inspection DoS) ยท CVE-2026-68820 (Windows AFD for WinSock UAF LPE) ยท CVE-2026-72898 (Metabase ๋ฌด์ธ์ฆ SQLi) โ€” 2026-08-07~11 KEV, ์ „๋ถ€ ๋ฒ”์œ„ ์™ธ ยท CVE-2026-72530/-72529 (TrueConf Server ์ฝ”๋“œ ์ฃผ์ž…ยท์ธ์ฆ ๋ˆ„๋ฝ โ€” ์ด๋ฒˆ ๋ฐฐ์น˜ ์ค‘ ์œ ์ผํ•œ Linux ๋ฐ๋ชฌ์ด๋‚˜ ์ƒ์šฉ ์ œํ’ˆ ์ž์ฒด ์Šคํฌ๋ฆฝํŒ… ์—”์ง„ ๊ฒฐํ•จ์ด๋ผ ์•ˆ์ „ํ•œ ์ „์—ญ ํ† ๊ธ€ ๋ถ€์žฌ) ยท CVE-2026-64849 (MLflow SSRF) ยท CVE-2026-33824 (MS IKE double free) ยท CVE-2026-59310 (VMware vCenter path traversal) ยท CVE-2026-55040 (MS SharePoint) ยท CVE-2026-65400 (Apple macOS Screen Sharing) ยท CVE-2025-62593 (Ray ์ฝ”๋“œ ์ฃผ์ž…) โ€” 2026-08-17~20 KEV, ์ „๋ถ€ ๋ฒ”์œ„ ์™ธ ยท ๐Ÿ”ด CVE-2026-53361 (bad_garbage โ€” af_unix GC vs MSG_PEEK UAF, ๋น„ํŠน๊ถŒ ์ปจํ…Œ์ด๋„ˆ ํƒˆ์ถœ, ๊ณต๊ฐœ PoC) โ€” ์ฝ”์–ด af_unix ๋ผ ์ฐจ๋‹จ ๋ถˆ๊ฐ€ + 53362 ์™€ ๋‹ฌ๋ฆฌ userns ์ „์ œ๊ฐ€ ์•„๋‹ˆ๋ผ Stage 17 ๋กœ๋„ ๋ฏธ์ปค๋ฒ„ โ†’ ์ปค๋„ ์—…๋ฐ์ดํŠธ ํ•„์ˆ˜, ๋ชจ๋‹ˆํ„ฐ๋ง ๋Œ€์ƒ (๊ทœ์น™ 7 ๋กœ ๋ฐœ๊ตด, 2026-08-28) ยท CVE-2022-0995 (์ปค๋„ watch_queue OOB write, KEV 2026-08-26 / FCEB 09-09) โ€” ์ปค๋„ 5.17(2022-03)์—์„œ ์ด๋ฏธ ์ˆ˜์ •๋œ ๊ฒฐํ•จ์ด PageJack ๊ธฐ๋ฒ•์œผ๋กœ ์žฌ๋ถ€์ƒ, ์ฝ”์–ด built-in + ๋นŒ๋“œํƒ€์ž„ ์˜ต์…˜์ด๋ผ ์ž„์‹œ์กฐ์น˜ ์—ฌ์ง€ ์—†์Œ(Debian ๋นŒ๋“œ ๋น„์˜ํ–ฅ) ยท CVE-2023-49105 (ownCloud) ยท CVE-2026-66384 (JFrog Artifactory) ยท CVE-2021-23758 (Ajax.NET) ยท CVE-2015-3246 (Red Hat libuser) ยท CVE-2015-5287 (Red Hat ABRT) ยท CVE-2026-8452 (Citrix NetScaler) ยท CVE-2019-1068 (MS SQL Server) ยท CVE-2026-60004 (Gitea) ยท CVE-2026-21962 (Oracle HTTP Server) ยท CVE-2026-73570 (Zimbra) โ€” 2026-08-20~27 KEV, ์ „๋ถ€ ๋ฒ”์œ„ ์™ธ ยท ๐Ÿ”ด CVE-2026-80521 (af_unix GC scc_entry UAF, Kyle Zeng ์ œ๋ณด) โ€” 53361 ๊ณผ ๊ฐ™์€ af_unix GC ์ฝ”๋“œ์˜ ๋‘ ๋ฒˆ์งธ ๊ฒฐํ•จ, ์ฝ”์–ด built-in + userns ๋น„์ „์ œ๋ผ Stage 17 ๋กœ๋„ ๋ฏธ์ปค๋ฒ„ โ†’ ์ปค๋„ ์—…๋ฐ์ดํŠธ ํ•„์ˆ˜, ๋ชจ๋‹ˆํ„ฐ๋ง ๋Œ€์ƒ (๊ทœ์น™ 9 ๋กœ ๋ฐœ๊ตด, 2026-09-04) ยท CVE-2026-78002 (rsyslog RainerScript replace() heap overflow) โ€” ๊ธฐ๋ณธ ์„ค์ • ๋ฏธ๋…ธ์ถœ + ์•ˆ์ „ํ•œ ์ „์—ญ ํ† ๊ธ€ ๋ถ€์žฌ(๊ณ ๊ฐ ๋ฃฐ์…‹์„ ๋“ค์–ด๋‚ด์•ผ ํ•จ) + DoS ๊ธ‰ ยท CVE-2026-82078/-81578 (PaperCut NG/MF) ยท CVE-2026-59822 (BerriAI LiteLLM) ยท CVE-2026-48710 (Starlette) ยท CVE-2026-49869 (Kestra OSS) ยท CVE-2026-82329 (JFrog Artifactory) ยท CVE-2026-9586 (Sangoma Switchvox) ยท CVE-2026-83548/-83549 (SonicWall SMA1000) โ€” 2026-08-31~09-02 KEV, ์ „๋ถ€ ๋ฒ”์œ„ ์™ธ ยท ๐Ÿ”ด CVE-2026-80848 (xfrm/espintcp close ์ค‘ UAF, ZDI ์ œ๋ณด) โ€” espintcp ๋Š” CONFIG_INET_ESPINTCP ๊ฐ€ bool(๋‚ด์žฅ) ์ด๊ณ  ๋ถ€ํŒ… ์‹œ TCP ULP ๋กœ ๋“ฑ๋ก๋ผ setsockopt(TCP_ULP,"espintcp") ๋กœ ๋ฐ”๋กœ ๋‹ฟ๋Š”๋‹ค. ยง1 esp4/esp6 ๋ชจ๋“ˆ ์ฐจ๋‹จ(43284ยท46300)์œผ๋กœ ์•ˆ ๋ง‰ํžŒ๋‹ค(์ปค๋„ ์†Œ์Šค ์ง์ ‘ ํ™•์ธ) โ†’ Pattern A ๋ถˆ๊ฐ€ยท์ปค๋„ ์—…๋ฐ์ดํŠธ ํ•„์ˆ˜, ๋ชจ๋‹ˆํ„ฐ๋ง ยท CVE-2026-80725 (net/gro BIG TCP ์ง‘๊ณ„ ์กฐ๊ฑด ๊ฒ€์ฆ ๋ˆ„๋ฝ, 9.8) โ€” ์ฝ”์–ด GRO, ํ† ๊ธ€ ๋ถ€์žฌ ยท CVE-2026-80726 (KVM x86/mmu child shadow page role.invalid, 9.3) โ€” KVM ์ฐจ๋‹จ = ๊ฐ€์ƒํ™” ๋งˆ๋น„(JanuscapeยทZapscape ์™€ ๋™์ผ ๊ฒฐ) ยท CVE-2026-80530 (XFS exchange-range reflink ํ”Œ๋ž˜๊ทธ, 7.1) โ€” RefluXFS(64600) ์™€ ๊ฐ™์€ XFS ๊ณ„์—ด, ๋ฃจํŠธ ํŒŒ์ผ์‹œ์Šคํ…œ์ด๋ผ ์ฐจ๋‹จ ๋ถˆ๊ฐ€ ยท CVE-2026-80864 (RDMA/rxe responder UAF) โ€” ๊ทœ์น™ 6 ์ด ์žก์•˜์œผ๋‚˜ rdma_rxe ๋Š” ์†Œํ”„ํŠธ์›จ์–ด RoCE ๋กœ ์„œ๋ฒ„ ๊ธฐ๋ณธ ๋ฏธ์‚ฌ์šฉ ยท CVE-2026-80724 (ptp vmclock ์ฝ๊ธฐ์ „์šฉ ๋งคํ•‘์˜ mprotect ์Šน๊ฒฉ, 8.8) โ€” ๊ทœ์น™ 5 ๋กœ ์žกํžŒ ์ƒ‰์ธ ์ง€์—ฐ๋ถ„, ๊ฒŒ์ŠคํŠธโ†’ํ˜ธ์ŠคํŠธ ์‹œ๊ฐ ๋ฐ์ดํ„ฐ ์†์ƒ ํ•œ์ • ยท NebuSec 22๊ฑด ๋ฐฐ์น˜ ์ค‘ ยง4 10๊ฑด โ€” CVE-2026-74581(ipv6 fib6 rule suppress UAF 9.8) ยท -74480(bridge multicast fast-leave 9.8) ยท -72255 / -52912(nf_queue ร— br_netfilter fake dst) ยท -72137(xfrm nat_keepalive double free 9.8) ยท -64560(posix-cpu-timers exec race UAF) ยท -52933(io_uring poll ๋ถ€ํ˜ธ ๋น„๊ต) ยท -52923(SysV IPC next_id ๋ฒ”์œ„) ยท -43501(ipv6 RPL SRH headroom 9.8, ๊ธฐ๋ณธ rpl_seg_enabled=0 ์‹ค์ธก ํ™•์ธ) ยท -43074(eventpoll RCU free UAF) โ€” ์ „๋ถ€ ์ฝ”์–ด built-in ์ด๊ฑฐ๋‚˜(epollยทio_uringยทSysV IPCยทposix-timersยทxfrmยทipv6 core) ์ฐจ๋‹จ ์‹œ ์šด์˜์ด ๋งˆ๋น„(bridge ๋Š” ์ปจํ…Œ์ด๋„ˆ/VM ํ•„์ˆ˜)๋ผ Pattern A ๋ถ€์ ํ•ฉ ยท CVE-2026-86060/-67277 (MikroTik RouterOS) ยท CVE-2026-19490 (Citrix NetScaler) ยท CVE-2025-25249 (Fortinet) ยท CVE-2026-87491/-85046 (Chromium V8) ยท CVE-2026-20079 (Cisco Secure FMC) ยท CVE-2026-75650 (Adobe Commerce/Magento) ยท CVE-2026-81963/-85880 (MS Windows) ยท CVE-2026-86218 (N-able N-central) โ€” 2026-09-04~09-10 KEV 11๊ฑด, Linux ์ปค๋„ 0๊ฑด, ์ „๋ถ€ ๋ฒ”์œ„ ์™ธ โŒ ๋ฏธ๋…ธ์ถœ

๊ฐ ํ•ญ๋ชฉ์˜ ๋ถ„๋ฅ˜ ๊ทผ๊ฑฐยท์ž๋™ํ™” ์ ํ•ฉ์„ฑ ํ‰๊ฐ€ยท์ธ์šฉ ์ถœ์ฒ˜๋Š” doc/CVE-STATUS.md ๋ณธ๋ฌธ, ์™ธ๋ถ€ ์ž๋ฃŒ URL์€ doc/references.md ์ฐธ์กฐ.

๊ฐ ์ปค๋„ CVE ํ”Œ๋Ÿฌ๊ทธ์ธ์€ ์ž์ฒด conf ํŒŒ์ผ์„ /etc/modprobe.d/์— ๋ณ„๋„๋กœ ์ž‘์„ฑํ•˜๋ฏ€๋กœ(cpa-cve-<id>.conf), ๋ชจ๋“ˆ์ด ๊ฒน์ณ๋„ ํ•œ CVE์˜ rollback์ด ๋‹ค๋ฅธ CVE์˜ ์ฐจ๋‹จ์„ ์˜๋„์น˜ ์•Š๊ฒŒ ํ•ด์ œํ•˜์ง€ ์•Š๋Š”๋‹ค. ์ฐจ๋‹จ ๋ผ์ธ์€ install X /bin/false (modprobe ํ˜ธ์ถœ ์‹œ ๋ช…์‹œ์  exit 1) + blacklist X (udev/aliases ์ž๋™ ๋กœ๋“œ ์ฐจ๋‹จ)๋ฅผ ๋™์‹œ ๊ธฐ๋ก (defense-in-depth).

CVE-2026-31431์€ algif_aead์˜ ๋นŒ๋“œ ํ˜•ํƒœ์— ๋”ฐ๋ผ ๋‘ ๊ฒฝ๋กœ๋ฅผ ์ž๋™ ๋ถ„๊ธฐ โ€” ๋กœ๋”๋ธ”(=m)์ด๋ฉด modprobe ์ฐจ๋‹จ, RHEL ๊ณ„์—ด์— ํ”ํ•œ built-in(=y)์ด๋ฉด ์ปค๋„ ๋ช…๋ นํ–‰์— initcall_blacklist=algif_aead_init ์ธ์ž ์ถ”๊ฐ€ (grubby ๋ฏธ์กด์žฌ ์‹œ /etc/default/grub ์ˆ˜๊ธฐ ๊ฐ€์ด๋“œ).

CVE-2026-23918์€ detected Apache binary(apache2/httpd)์— ๋”ฐ๋ผ /etc/apache2/conf-enabled/ ๋˜๋Š” /etc/httpd/conf.d/์— ๋“œ๋กญ์ธ ํŒŒ์ผ์„ ์ž‘์„ฑ. graceful reload(systemctl reload)๋กœ ๋ฌด์ค‘๋‹จ ์ ์šฉ โ€” ์›Œ์ปค๊ฐ€ ๋ฐ›๋Š” ์ƒˆ ์—ฐ๊ฒฐ๋ถ€ํ„ฐ HTTP/1.1๋งŒ ํ˜‘์ƒ.

CVE-2026-46333 (ssh-keysign-pwn / ptrace exit-race)์€ Yama LSM ํ™œ์„ฑ ์—ฌ๋ถ€๋ฅผ ๋จผ์ € ํ™•์ธ (/proc/sys/kernel/yama/ptrace_scope ์กด์žฌ). ํ™œ์„ฑ์ด๋ฉด /etc/sysctl.d/cpa-cve-2026-46333.conf ๋“œ๋กญ์ธ์„ ์ž‘์„ฑํ•˜๊ณ  sysctl -w kernel.yama.ptrace_scope=2๋กœ ์ฆ‰์‹œ ๋ฐ˜์˜ โ€” ์žฌ๋ถ€ํŒ… ํ›„์—๋Š” systemd-sysctl.service๊ฐ€ ์ž๋™ ์žฌ์ ์šฉํ•˜๋ฏ€๋กœ ์žฌ๋ถ€ํŒ… ๋ถˆ์š”. conf ๋ณธ๋ฌธ์— # previous=N์„ ๊ธฐ๋กํ•ด rollback ์‹œ ์ด์ „ ๊ฐ’์„ ๋ณต์›ํ•œ๋‹ค. Yama LSM ๋ฏธํ™œ์„ฑ ์ปค๋„์—์„œ๋Š” ์ž„์‹œ์กฐ์น˜ ๋ถˆ๊ฐ€๋กœ ์•ˆ๋‚ด๋งŒ ํ‘œ๊ธฐ. ๊ฒฐํ•จ์˜ ๋ณธ์งˆ์ด __ptrace_may_access() ๋…ผ๋ฆฌ ๊ฒฐํ•จ์ด๋ฏ€๋กœ ptrace_scope=2๋Š” ๋ถ€๋ถ„ ์ฐจ๋‹จ โ€” ์šด์˜์ž๋Š” ๊ฐ€๋Šฅํ•œ ๋นจ๋ฆฌ ๋ฒค๋” ์ปค๋„ ํŒจํ‚ค์ง€ ์—…๋ฐ์ดํŠธ๋ฅผ ์ ์šฉํ•ด์•ผ ํ•œ๋‹ค.

CVE-2026-46243 (CIFSwitch)์€ cifs ๋ชจ๋“ˆ์„ Pattern A๋กœ ์ฐจ๋‹จํ•˜๋˜, ๋‹ค๋ฅธ ๋ชจ๋“ˆ ์ฐจ๋‹จ ํ”Œ๋Ÿฌ๊ทธ์ธ๊ณผ ๋‹ฌ๋ฆฌ ํ™œ์„ฑ CIFS/SMB ๋งˆ์šดํŠธ ์—ฌ๋ถ€๋ฅผ ๋จผ์ € ํ™•์ธํ•œ๋‹ค (/proc/mounts์˜ cifs/smb3 fstype). ํ™œ์„ฑ ๋งˆ์šดํŠธ๊ฐ€ ์žˆ์œผ๋ฉด conf ์ž‘์„ฑยท์–ธ๋กœ๋“œ๋ฅผ ๋ชจ๋‘ ๊ฑด๋„ˆ๋›ฐ๊ณ (StatusSkipped) ์•ˆ๋‚ด๋งŒ ์ถœ๋ ฅ โ€” ์žฌ๋ถ€ํŒ… ์‹œ fstab์˜ CIFS ๋งˆ์šดํŠธ๊ฐ€ blacklist cifs๋กœ ๊นจ์ง€๋Š” ๊ฒƒ์„ ๋ง‰๊ธฐ ์œ„ํ•จ์ด๋‹ค. ์šด์˜์ž๋Š” ๋ฒค๋” ์ปค๋„ ์—…๋ฐ์ดํŠธ(๊ถŒ์žฅ) ๋˜๋Š” CIFS ์–ธ๋งˆ์šดํŠธ ํ›„ ์žฌ์‹คํ–‰์œผ๋กœ ๊ฐ•์ œ ์ฐจ๋‹จ์„ ์„ ํƒํ•œ๋‹ค. ๊ณต๊ฒฉ ์ฒด์ธ์˜ 3๊ฐ€์ง€ ์š”๊ตฌ ์กฐ๊ฑด(cifs-utils ์„ค์น˜ ยท unprivileged userns ํ™œ์„ฑ ยท cifs ๋กœ๋“œ) ์ค‘ ๋ชจ๋“ˆ ๋กœ๋“œ๋ฅผ ๋Š๋Š” ์ ‘๊ทผ์ด๋‹ค.

CVE-2026-46331 (Pedit COW)์€ act_pedit(tc ํŒจํ‚ท ์—๋””ํ„ฐ ์•ก์…˜) ๋ชจ๋“ˆ์„ Pattern A๋กœ ์ฐจ๋‹จํ•˜๋ฉฐ, CIFSwitch์™€ ๋™์ผํ•˜๊ฒŒ ํ™œ์„ฑ ์‚ฌ์šฉ ์—ฌ๋ถ€๋ฅผ ๋จผ์ € ํ™•์ธํ•œ๋‹ค โ€” ๋ชจ๋“ˆ usecount(/proc/modules)>0์ด๋ฉด ํ™œ์„ฑ tc pedit ์•ก์…˜์ด ์žˆ๋‹ค๋Š” ๋œป์ด๋ฏ€๋กœ conf ์ž‘์„ฑยท์–ธ๋กœ๋“œ๋ฅผ ๊ฑด๋„ˆ๋›ฐ๊ณ (StatusSkipped) ์•ˆ๋‚ด๋งŒ ์ถœ๋ ฅํ•œ๋‹ค. act_pedit๋Š” ยง1 Dirty Frag ํŒจ๋ฐ€๋ฆฌ์™€ ๊ฐ™์€ ํŽ˜์ด์ง€ ์บ์‹œ ์†์ƒ LPE ํด๋ž˜์Šค๋‹ค. PF_RING ๋“ฑ ํŒจํ‚ท ์บก์ฒ˜ ํ”„๋ ˆ์ž„์›Œํฌ๋Š” tc ์•ก์…˜๊ณผ ๋ณ„๊ฐœ ์„œ๋ธŒ์‹œ์Šคํ…œ์ด๋ผ act_pedit ์ฐจ๋‹จ ์˜ํ–ฅ์„ ๋ฐ›์ง€ ์•Š๋Š”๋‹ค.

์ปค๋„ ๋ฒ„์ „ ์˜ํ–ฅ ๋ฒ”์œ„ (Stage 15): ์ปค๋„ ๋ชจ๋“ˆ CVE ํ”Œ๋Ÿฌ๊ทธ์ธ์€ ์‹คํ–‰ ์ปค๋„์ด ๊ฒฐํ•จ ๋„์ž… ๋ฒ„์ „ ๋ฏธ๋งŒ์ด๋ฉด (์ทจ์•ฝ ์ฝ”๋“œ๊ฐ€ ์•„์ง ์—†์œผ๋ฏ€๋กœ) ์˜ํ–ฅ ์—†์Œ์œผ๋กœ ํŒ์ •ํ•œ๋‹ค. ์˜ํ–ฅ ๋ฒ”์œ„ ์•ˆ์ด๋ฉด verdict๋Š” ๊ทธ๋Œ€๋กœ ๋‘๋˜ ์ผ๋ฐ˜ ์ถœ๋ ฅ์€ ๊ฐ„๊ฒฐํ•˜๊ฒŒ ์œ ์ง€ โ€” ์‹คํ–‰ ์ปค๋„ ๋ฒ„์ „ยท์˜๊ตฌ ์ˆ˜์ • ๋ฒ„์ „ยท"๋ฐฐํฌํŒ ๋ฐฑํฌํŠธ ์ ์šฉ ์—ฌ๋ถ€๋Š” ๋ฒ„์ „์œผ๋กœ ๋‹จ์ • ๋ถˆ๊ฐ€" ๊ฐ™์€ ์ƒ์„ธ๋Š” --verbose์ผ ๋•Œ๋งŒ ์—ฌ๋Ÿฌ ์ค„๋กœ ๋ณด์—ฌ์ฃผ๊ณ , ์ผ๋ฐ˜ ์ถœ๋ ฅ ๋งˆ์ง€๋ง‰์— --verbose ์•ˆ๋‚ด๋ฅผ ํ‘œ์‹œํ•œ๋‹ค. ์ปค๋„ โ‰ฅ ์ˆ˜์ •๋ฒ„์ „ โ†’ ํŒจ์น˜๋จ ๋‹จ์ •์€ ์˜๋„์ ์œผ๋กœ ํ•˜์ง€ ์•Š๋Š”๋‹ค โ€” ๋ฐฐํฌํŒ ๋ฐฑํฌํŠธ์™€ ABI ๋ฒˆํ˜ธ ์ฐจ์ด๋กœ ์ธํ•œ false negative(๋ฏธํŒจ์น˜๋ฅผ ํŒจ์น˜๋จ์œผ๋กœ ์˜คํŒ)๋ฅผ ํ”ผํ•˜๊ธฐ ์œ„ํ•จ์ด๋ฉฐ, ์ •ํ™•ํ•œ ํŒจ์น˜ ํ™•์ธ์€ ๋ฐฐํฌํŒ ๋ณด์•ˆ ํŠธ๋ž˜์ปค(USN/RHSA/DSA)๋กœ ํ•œ๋‹ค.

์„ค์น˜

์˜ต์…˜ A โ€” GitHub Release ๋ฐ”์ด๋„ˆ๋ฆฌ

SHA256SUMS ์˜ ํ•ญ๋ชฉ์€ ์›๋ณธ ํŒŒ์ผ๋ช…(cpa-linux-amd64 / cpa-linux-arm64)์œผ๋กœ ๊ธฐ๋ก๋˜๋ฏ€๋กœ, ๋‹ค์šด๋กœ๋“œ ์‹œ ์›๋ณธ ํŒŒ์ผ๋ช…์„ ์œ ์ง€ํ•ด์•ผ ๊ฒ€์ฆ์ด ๋™์ž‘ํ•œ๋‹ค (์•„๋ž˜ ์ฐธ๊ณ  ๋ฐ•์Šค).

# linux/amd64 ์˜ˆ์‹œ โ€” ์›๋ณธ ํŒŒ์ผ๋ช…์œผ๋กœ ๋ฐ›์•„ ๊ฒ€์ฆ ํ›„ ์ด๋ฆ„ ๋ณ€๊ฒฝ
curl -L -O https://github.com/barmi/cve-patch-auditor/releases/latest/download/cpa-linux-amd64
curl -L -O https://github.com/barmi/cve-patch-auditor/releases/latest/download/SHA256SUMS

# ๋ฌด๊ฒฐ์„ฑ ๊ฒ€์ฆ (`cpa-linux-amd64: OK` ๊ฐ€ ์ถœ๋ ฅ๋ผ์•ผ ํ•จ)
shasum -a 256 -c SHA256SUMS --ignore-missing

# ๊ฒ€์ฆ ํ†ต๊ณผ ํ›„ ์‹คํ–‰ ํŽธ์˜๋ฅผ ์œ„ํ•ด ์งง์€ ์ด๋ฆ„์œผ๋กœ ๋ณ€๊ฒฝ
mv cpa-linux-amd64 cpa
chmod +x cpa
./cpa --version

์ฐธ๊ณ  โ€” no file was verified ์—๋Ÿฌ๊ฐ€ ๋‚œ๋‹ค๋ฉด (#1) curl -L -o cpa ...(์†Œ๋ฌธ์ž -o)๋กœ ๋ฐ›์œผ๋ฉด ์ž‘์—… ๋””๋ ‰ํ† ๋ฆฌ์— cpa-linux-amd64 ํŒŒ์ผ์ด ์—†์–ด shasum -c --ignore-missing์ด SHA256SUMS์˜ ๋ชจ๋“  ํ•ญ๋ชฉ์„ "missing"์œผ๋กœ ๊ฑด๋„ˆ๋›ฐ๊ณ  ๊ฒ€์ฆ๋œ ํŒŒ์ผ์ด 0๊ฐœ โ†’ shasum: SHA256SUMS: no file was verified๋กœ ์ข…๋ฃŒ๋œ๋‹ค (WSL/Ubuntu ๋“ฑ์—์„œ ๋™์ผ). ์œ„ ์˜ˆ์‹œ์ฒ˜๋Ÿผ -O(๋Œ€๋ฌธ์ž)๋กœ ์›๋ณธ ํŒŒ์ผ๋ช…์„ ์œ ์ง€ํ•œ ์ฑ„ ๋จผ์ € ๊ฒ€์ฆํ•˜๊ณ , ๊ทธ ๋‹ค์Œ mv๋กœ ์ด๋ฆ„์„ ๋ฐ”๊ฟ”์•ผ ํ•œ๋‹ค.

๋˜๋Š” SHA256SUMS๋ฅผ ๋ฐ›์ง€ ์•Š๊ณ  ํ•œ ์ค„๋กœ ํ•ด์‹œ๋งŒ ๋Œ€์กฐํ•ด๋„ ๋œ๋‹ค:

# ๊ธฐ๋Œ€ ํ•ด์‹œ (SHA256SUMS์˜ cpa-linux-amd64 ํ–‰) ์™€ ์‹ค์ธก ํ•ด์‹œ๋ฅผ ์ง์ ‘ ๋น„๊ต
curl -sL https://github.com/barmi/cve-patch-auditor/releases/latest/download/SHA256SUMS \
  | awk '$2=="cpa-linux-amd64"{print $1}'
shasum -a 256 cpa | awk '{print $1}'

์˜ต์…˜ B โ€” ์†Œ์Šค ๋นŒ๋“œ

git clone https://github.com/barmi/cve-patch-auditor.git
cd cve-patch-auditor
make build                  # ํ˜ธ์ŠคํŠธ์šฉ
make dist                   # linux amd64+arm64 ์ •์  ๋ฐ”์ด๋„ˆ๋ฆฌ (bin/)

์š”๊ตฌ์‚ฌํ•ญ: Go 1.23 ์ด์ƒ (ํ˜„์žฌ ๊ฐœ๋ฐœ์€ 1.26). ์™ธ๋ถ€ ๋ชจ๋“ˆ ์˜์กด 0.

์‚ฌ์šฉ

$ cpa --help

USAGE
  cpa [flags]

FLAGS
  -h, --help              ์ด ๋„์›€๋ง ํ‘œ์‹œ
  -v, --version           ๋ฒ„์ „ ์ •๋ณด ํ‘œ์‹œ
      --list              ๋‚ด์žฅ๋œ CVE ํ”Œ๋Ÿฌ๊ทธ์ธ ๋ชฉ๋ก ํ‘œ์‹œ
      --covered           ํ˜„์žฌ ํ˜ธ์ŠคํŠธ์˜ ์กฐ์น˜๋กœ ํ•จ๊ป˜ ์ฐจ๋‹จ๋˜๋Š” CVE(ยง2) ํŠธ๋ฆฌยท๊ฐœ์ˆ˜ ํ‘œ์‹œ
      --cve=ID            ์ฒ˜๋ฆฌํ•  CVE ์ง€์ • (๋ฐ˜๋ณต ๊ฐ€๋Šฅ; ๋ฏธ์ง€์ • ์‹œ ์ „์ฒด)
      --phase=NAMES       ์ฒ˜๋ฆฌํ•  phase ์‰ผํ‘œ ๊ตฌ๋ถ„
                          (assess,remediate,verify,rollback;
                           ๊ธฐ๋ณธ assess,remediate,verify)
      --rollback          ๊ธฐ๋ณธ phase ๋Œ€์‹  rollback๋งŒ ์ˆ˜ํ–‰
                          (--apply ๋˜๋Š” --dry-run ๋ช…์‹œ ํ•„์ˆ˜: ํŒŒ๊ดด์  ์ž‘์—…)
      --apply             ์‹ค์ œ ๋ณ€๊ฒฝ ์ ์šฉ (์—†์œผ๋ฉด dry-run์œผ๋กœ ๊ฐ•์ œ)
      --dry-run           dry-run ๋ชจ๋“œ (--apply๊ฐ€ ์žˆ์–ด๋„ ์šฐ์„  ์ ์šฉ)
      --no-elevate        sudo ์ž๋™ ๊ถŒํ•œ ์ƒ์Šน ๋น„ํ™œ์„ฑ
      --json              ๊ฒฐ๊ณผ๋ฅผ stdout์— ํ•œ ์ค„๋‹น JSON์œผ๋กœ ์ถœ๋ ฅ
      --report=FILE       ๋งˆํฌ๋‹ค์šด ๋ฆฌํฌํŠธ ํŒŒ์ผ ๊ฒฝ๋กœ
      --log-file=FILE     ๋กœ๊ทธ ํŒŒ์ผ ๊ฒฝ๋กœ (๊ธฐ๋ณธ: ์‹คํ–‰ํŒŒ์ผ ์˜† cpa.log)
      --verbose           ์ƒ์„ธ ์ถœ๋ ฅ (CVE๋ณ„ ์ปค๋„ ๋ฒ„์ „ ์ƒ์„ธ + DEBUG ๋ ˆ๋ฒจ ๋กœ๊ทธ)
      --no-log            ํŒŒ์ผ ๋กœ๊ทธ ๋น„ํ™œ์„ฑ (stderr๋งŒ)
      --lang=LANG         ์–ธ์–ด ๊ฐ•์ œ ์ง€์ • (en|ko; ๊ธฐ๋ณธ ํ™˜๊ฒฝ์—์„œ ์ž๋™ ๊ฐ์ง€)
      --upgrade           ์ตœ์‹  ๋ฆด๋ฆฌ์ฆˆ ํ™•์ธ (--apply ์—†์œผ๋ฉด ์ •๋ณด๋งŒ ์ถœ๋ ฅ)
                          (--upgrade --apply: GitHub Release ์ž์‚ฐ ๋‹ค์šด๋กœ๋“œ + SHA256 ๊ฒ€์ฆ + ์›์ž์  ๊ต์ฒด)

์ž์ฒด ์—…๊ทธ๋ ˆ์ด๋“œ

cpa --upgrade๋กœ ์ตœ์‹  GitHub Release๋ฅผ ํ™•์ธํ•˜๊ณ  (--apply์™€ ํ•จ๊ป˜ ์“ฐ๋ฉด) ์ž๊ธฐ ์ž์‹ ์„ ์•ˆ์ „ํ•˜๊ฒŒ ๊ต์ฒดํ•  ์ˆ˜ ์žˆ๋‹ค.

# 1) ์ƒˆ ๋ฒ„์ „ ํ™•์ธ๋งŒ (root ๋ถˆํ•„์š”)
cpa --upgrade

# ์ถœ๋ ฅ ์˜ˆ:
#   GitHub์—์„œ ์ตœ์‹  ๋ฆด๋ฆฌ์ฆˆ ํ™•์ธ ์ค‘...
#   ์—…๊ทธ๋ ˆ์ด๋“œ ๊ฐ€๋Šฅ: v0.2.0 โ†’ v0.2.1 (์ž์‚ฐ cpa-linux-amd64, 6342144 bytes)
#   sha256: 1a2b3c4d...

# 2) ์‹ค์ œ ๊ต์ฒด (ํ•„์š” ์‹œ sudo ์ž๋™ ์žฌ์‹คํ–‰)
sudo cpa --upgrade --apply

# ๋˜๋Š” ์‚ฌ์šฉ์ž ๋””๋ ‰ํ† ๋ฆฌ(~/bin ๋“ฑ)์— ์„ค์น˜๋ผ ์žˆ์œผ๋ฉด sudo ์—†์ด๋„ ๋™์ž‘
cpa --upgrade --apply

๋™์ž‘:

  1. GitHub /releases/latest์—์„œ ์ตœ์‹  ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ ์กฐํšŒ (์ธ์ฆ ๋ถˆํ•„์š”).
  2. ํ˜„์žฌ OS/ARCH์— ํ•ด๋‹นํ•˜๋Š” ์ž์‚ฐ ์„ ํƒ โ€” ํ˜„์žฌ ๋ฐฐํฌ ์ž์‚ฐ์€ cpa-linux-amd64 / cpa-linux-arm64๋งŒ ์ œ๊ณต. macOS/Windows์—์„œ๋Š” "unsupported platform" ์•ˆ๋‚ด.
  3. ์ž์‚ฐ๊ณผ SHA256SUMS๋ฅผ ํ•จ๊ป˜ ๋‹ค์šด๋กœ๋“œ โ†’ ์ž์‚ฐ์˜ ์‹ค์ธก SHA256๊ณผ ๊ธฐ๋Œ€ ํ•ด์‹œ ์ผ์น˜ ๊ฒ€์ฆ. ๋ถˆ์ผ์น˜ ์‹œ ์ฆ‰์‹œ ์‹คํŒจํ•˜๊ณ  ์ž„์‹œ ํŒŒ์ผ์„ ์‚ญ์ œ, ์‹คํ–‰ ์ค‘์ธ ๋ฐ”์ด๋„ˆ๋ฆฌ๋Š” ๊ทธ๋Œ€๋กœ ๋ณด์กด.
  4. os.Rename์œผ๋กœ ์›์ž์  ๊ต์ฒด. ์‹คํ–‰ ์ค‘์ด๋˜ ํ”„๋กœ์„ธ์Šค๋Š” ๊ทธ๋Œ€๋กœ ์ข…๋ฃŒ ํ›„ ๋‹ค์Œ ์‹คํ–‰๋ถ€ํ„ฐ ์ƒˆ ๋ฐ”์ด๋„ˆ๋ฆฌ ์‚ฌ์šฉ.

--apply ์‚ฌ์šฉ ์‹œ binary๊ฐ€ ์œ„์น˜ํ•œ ๋””๋ ‰ํ† ๋ฆฌ์— ์“ฐ๊ธฐ ๊ถŒํ•œ์ด ์—†์œผ๋ฉด ์ž๋™์œผ๋กœ sudo ์žฌ์‹คํ–‰. --no-elevate ์ง€์ • ์‹œ์—๋Š” ๋ช…์‹œ์  ์—๋Ÿฌ๋กœ ์ข…๋ฃŒ(์ž๋™ sudo ๋น„ํ™œ์„ฑ).

์–ธ์–ด (i18n)

  • ํ™˜๊ฒฝ ์ž๋™ ๊ฐ์ง€: LC_ALL > LC_MESSAGES > LANG. ko ๋˜๋Š” ko_*์ด๋ฉด ํ•œ๊ตญ์–ด, ๊ทธ ์™ธ(๋˜๋Š” ๋ฏธ์„ค์ •)๋ฉด ์˜์–ด.
  • --lang=ko / --lang=en์œผ๋กœ ๊ฐ•์ œ ๊ฐ€๋Šฅ. ๊ทธ ์™ธ ๊ฐ’์€ ๊ฑฐ๋ถ€ (exit 2).
  • ์‚ฌ์šฉ์ž-๋ณด์ด๋Š” ๋ชจ๋“  ๋ฉ”์‹œ์ง€(usage, CLI ์•ˆ๋‚ดยท์—๋Ÿฌ, plugin Summary, ๋งˆํฌ๋‹ค์šด ๋ฆฌํฌํŠธ ํ—ค๋”ยท๋ฐฐ์ง€)๊ฐ€ ๋‘ ์–ธ์–ด๋ฅผ ๋ชจ๋‘ ์ง€์›.
  • ๋‹จ, JSON ๋กœ๊ทธ(cpa.log)์˜ msg ํ•„๋“œ๋Š” ๊ธฐ๊ณ„ ๊ฐ€๋… ํ‚ค๋กœ ์˜๋„๋˜์–ด ๋‹ค๊ตญ์–ดํ™”ํ•˜์ง€ ์•Š์Œ.

์ฐธ๊ณ  โ€” ํ•œ๊ธ€ ์„ค๋ช…์ด ํ•„์š”ํ•œ ๋ถ„๋“ค์€ --lang=ko๋ฅผ ์ถ”๊ฐ€ํ•˜์„ธ์š”. $LANG์„ ์ž๋™์œผ๋กœ ์ฝ์–ด์„œ ์ฒ˜๋ฆฌํ•˜์ง€๋งŒ, ๋Œ€๋ถ€๋ถ„์˜ ์„œ๋ฒ„ ํ™˜๊ฒฝ์€ LANG=en_US.UTF-8 ๋˜๋Š” C.UTF-8๋กœ ์„ค์ •๋ผ ์žˆ์–ด ๊ธฐ๋ณธ์€ ์˜์–ด๋กœ ๋ณด์ž…๋‹ˆ๋‹ค. (์‹ค์ œ๋กœ ๋ณธ ์ €์žฅ์†Œ ์šด์˜์ž์˜ ํ™˜๊ฒฝ๋„ LANG=en.) ์˜ˆ์‹œ: cpa --lang=ko --help

๊ฐ€์žฅ ํ”ํ•œ ์‚ฌ์šฉ๋ฒ•

# 1) ์˜ํ–ฅ ํ‰๊ฐ€๋งŒ (root ๋ถˆํ•„์š”, ๋ณ€๊ฒฝ ์—†์Œ)
cpa --phase assess

# 2) ์ „๋ถ€ ํ•œ ๋ฒˆ์— (dry-run; ๋ฌด์—‡์ด ์ผ์–ด๋‚ ์ง€ ๋ฏธ๋ฆฌ ํ™•์ธ)
cpa

# 3) ์‹ค์ œ ์ ์šฉ โ€” sudo๋กœ ์žฌ์‹คํ–‰๋˜๋ฉฐ ๋ชจ๋“ˆ ์ฐจ๋‹จยท์–ธ๋กœ๋“œ ์ˆ˜ํ–‰
cpa --apply

# 4) ํŠน์ • CVE๋งŒ
cpa --cve CVE-2026-31431 --apply

# 5) ๋กค๋ฐฑ (์ ์šฉํ•œ ์ฐจ๋‹จ ํŒŒ์ผ ์ œ๊ฑฐ) โ€” --apply ๋˜๋Š” --dry-run ๋ช…์‹œ ํ•„์ˆ˜
cpa --rollback --dry-run --cve CVE-2026-31431      # ๋ฏธ๋ฆฌ๋ณด๊ธฐ
cpa --rollback --apply --cve CVE-2026-31431        # ์‹ค์ œ ๋กค๋ฐฑ (sudo)

# 6) ๋งˆํฌ๋‹ค์šด ๋ฆฌํฌํŠธ ์ƒ์„ฑ
cpa --report /tmp/cpa-report.md

# 7) JSON ๋ผ์ธ ์ถœ๋ ฅ (๋‹ค๋ฅธ ๋„๊ตฌยทSIEM ์—ฐ๋™)
cpa --json

# 8) ์ง€๊ธˆ ์ ์šฉ๋œ ์กฐ์น˜๋กœ "๋ค์œผ๋กœ" ํ•จ๊ป˜ ๋ง‰ํžˆ๋Š” CVE ํ™•์ธ (root ๋ถˆํ•„์š”, ๋ณ€๊ฒฝ ์—†์Œ)
cpa --covered

--covered โ€” ๋ถ€์ˆ˜ ์ฐจ๋‹จ(ยง2) ์ปค๋ฒ„๋ฆฌ์ง€

cpa์˜ ยง1 ์ž„์‹œ์กฐ์น˜๋Š” ๊ฒจ๋ƒฅํ•œ CVE ์™ธ์— ๊ฐ™์€ ๊ฒฝ๋กœ๋ฅผ ์“ฐ๋Š” ๋‹ค๋ฅธ CVE๋„ ํ•จ๊ป˜ ๋ง‰๋Š”๋‹ค (doc/CVE-STATUS.md ยง2). --covered๋Š” ๊ทธ ๊ด€๊ณ„๋ฅผ ํ˜„์žฌ ํ˜ธ์ŠคํŠธ ๊ธฐ์ค€์œผ๋กœ ๋ณด์—ฌ์ค€๋‹ค.

์ •์  ๋ชฉ๋ก์ด ์•„๋‹ˆ๋ผ ๊ฐ ยง1 ํ”Œ๋Ÿฌ๊ทธ์ธ์˜ assess๋ฅผ ์‹ค์ œ๋กœ ๋Œ๋ ค ํŒ์ •ํ•˜๋Š” ๊ฒƒ์ด ํ•ต์‹ฌ์ด๋‹ค โ€” ยง2 ๊ด€๊ณ„๋Š” ์กฐ๊ฑด๋ถ€๋ผ์„œ, ํ™œ์„ฑ ์‚ฌ์šฉ ๊ฒŒ์ดํŠธ๋กœ ์กฐ์น˜๊ฐ€ Skip๋œ ํ˜ธ์ŠคํŠธ์—์„œ๋Š” ์„ฑ๋ฆฝํ•˜์ง€ ์•Š๋Š”๋‹ค. (์˜ˆ: ํ™œ์„ฑ SMB ๋งˆ์šดํŠธ ํ˜ธ์ŠคํŠธ์—์„œ๋Š” CIFSwitch ์กฐ์น˜๊ฐ€ Skip๋˜๊ณ , ๋ฐ”๋กœ ๊ทธ ํ˜ธ์ŠคํŠธ๊ฐ€ CVE-2026-64597/-64598 ๋…ธ์ถœ ํ˜ธ์ŠคํŠธ๋‹ค.) assess๋Š” ์ฝ๊ธฐ ์ „์šฉ์ด๋ผ root ์—†์ด ์•ˆ์ „ํ•˜๊ฒŒ ์‹คํ–‰๋œ๋‹ค.

$ cpa --covered
ํ˜„์žฌ ํ˜ธ์ŠคํŠธ์˜ ยง1 ์ž„์‹œ์กฐ์น˜๋กœ ํ•จ๊ป˜ ์ฐจ๋‹จ๋˜๋Š” CVE (ยง2 ๋ถ€์ˆ˜ ์ฐจ๋‹จ)

  CVE-2026-53264  [์ ์šฉ๋จ]  net/sched tc_action UAF
    โ”” [์ฐจ๋‹จ๋จ]   CVE-2026-53362  (ipv6_frag_escape)  ** CISA KEV ๋“ฑ์žฌ **
         ์ต์Šคํ”Œ๋กœ์ž‡์ด ๋น„ํŠน๊ถŒ userns ์ƒ์„ฑ์„ ์ „์ œํ•˜๊ณ , Red Hat(RHSB-2026-009)ยทCIQ ๊ณต์‹
         ์ž„์‹œ์กฐ์น˜๊ฐ€ ๋ณธ ์กฐ์น˜์™€ ๋™์ผํ•œ user.max_user_namespaces=0 ์ด๋‹ค
         ์ฃผ์˜: ํ™œ์„ฑ userns(rootless Podmanยท์ปจํ…Œ์ด๋„ˆ) ํ˜ธ์ŠคํŠธ๋Š” ๋ณธ ์กฐ์น˜๊ฐ€ Skip ๋œ๋‹ค โ€” ...

  CVE-2026-46243  [๋ฏธ์ ์šฉ]  CIFSwitch
    โ”” [๋ฏธ์ฐจ๋‹จ]   CVE-2026-64597  (SMB ํด๋ผ์ด์–ธํŠธ double-free)
         ...

์š”์•ฝ
  ๊ด€๋ จ ยง1 ์กฐ์น˜ 8๊ฑด โ€” ์ ์šฉ๋จ 2๊ฑด / ๋ฏธ์ ์šฉ 6๊ฑด
  ๋ถ€์ˆ˜ ์ฐจ๋‹จ ๋Œ€์ƒ ยง2 CVE 16๊ฑด โ€” ์ฐจ๋‹จ๋จ 3๊ฑด / ๋ฏธ์ฐจ๋‹จ 13๊ฑด
  ์ด ํ˜ธ์ŠคํŠธ์—์„œ ๋ฏธ์ฐจ๋‹จ: CVE-2026-31635, CVE-2026-43503, ...
  โ†’ ์œ„ ํ•ญ๋ชฉ์€ ์ปค๋„/ํŒจํ‚ค์ง€ ์—…๋ฐ์ดํŠธ๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

๊ธฐ๋ณธ ์ถœ๋ ฅ(--list, ์ผ๋ฐ˜ ์‹คํ–‰)์—๋Š” ์ด ์ •๋ณด๊ฐ€ ๋‚˜์˜ค์ง€ ์•Š๋Š”๋‹ค โ€” ์กฐํšŒ ์ „์šฉ ์˜ต์…˜์ด๋‹ค.

ํ•ต์‹ฌ ์„ค๊ณ„

๊ฐ CVE๋Š” 4 ๋‹จ๊ณ„ ๋ผ์ดํ”„์‚ฌ์ดํด์„ ๊ฐ–๋Š”๋‹ค:

assess     โ†’ ํ˜ธ์ŠคํŠธ๊ฐ€ ์ทจ์•ฝํ•œ์ง€ ํŒ๋‹จ (๋น„-root ๊ฐ€๋Šฅ)
remediate  โ†’ ์กฐ์น˜ ์ ์šฉ (root ํ•„์š”. ๋ฏธ์ง€์ • ์‹œ ์ž๋™ sudo ์žฌ์‹คํ–‰)
verify     โ†’ ์กฐ์น˜ ํ›„ ์žฌํ‰๊ฐ€
rollback   โ†’ (์„ ํƒ) ์ ์šฉํ•œ ๋ณ€๊ฒฝ์˜ ์—ญ์—ฐ์‚ฐ

์˜ต์…˜์ด ์—†์œผ๋ฉด ๋‚ด์žฅ๋œ ๋ชจ๋“  CVE์— ๋Œ€ํ•ด assess โ†’ remediate โ†’ verify๋ฅผ ์ˆœ์ฐจ ์‹คํ–‰ํ•œ๋‹ค (๋‹จ, --apply๊ฐ€ ์—†์œผ๋ฉด dry-run์œผ๋กœ ๊ฐ•์ œ).

๋ณด์•ˆ ์›์น™

  • ์…ธ ์ธํ„ฐํด๋ ˆ์ด์…˜ ๊ธˆ์ง€. ์™ธ๋ถ€ ๋ช…๋ น์€ ํ•ญ์ƒ ์ธ์ž ๋ฐฐ์—ด๋กœ๋งŒ ํ˜ธ์ถœ.
  • --apply ์—†์ด๋Š” ์–ด๋–ค ๋ณ€๊ฒฝ๋„ ๋ฐœ์ƒํ•˜์ง€ ์•Š์Œ (๊ธฐ๋ณธ dry-run).
  • ์™ธ๋ถ€ ์‚ฌ์šฉ์ž ์ž‘์„ฑ ํŒŒ์ผ ๋ณดํ˜ธ: /etc/modprobe.d/์— cpa ํ‘œ์‹์ด ์—†๋Š” ํŒŒ์ผ์€ ์ ˆ๋Œ€ ๋ฎ์–ด์“ฐ๊ฑฐ๋‚˜ ์‚ญ์ œํ•˜์ง€ ์•Š์Œ.
  • ๋ชจ๋“ˆ ์ž๋™ ์žฌ๋กœ๋“œ ์•ˆ ํ•จ: rollback ์‹œ ํŒŒ์ผ๋งŒ ์ œ๊ฑฐ. modprobe๋Š” ์‹œ์Šคํ…œ ๊ด€๋ฆฌ์ž ๊ฒฐ์ •.
  • ์ž์ฒด PoC ๋ฏธ๋™๋ด‰. ์™ธ๋ถ€ PoC ์ฝ”๋“œ ์ธ์šฉยท์‹คํ–‰ ์•ˆ ํ•จ.
  • ๋ฏผ๊ฐ์ •๋ณด ๋งˆ์Šคํ‚น ์ธํ„ฐํŽ˜์ด์Šค ๋งˆ๋ จ (๋กœ๊น… ๊ณ„์ธต์—์„œ ์ผ๊ด„).

๋กœ๊น…

  • ํ•œ ์ค„๋‹น 1 JSON, ํ‚ค: ts (RFC3339Nano), level, msg, host, pid, uid, ๊ทธ๋ฆฌ๊ณ  phase๋ณ„ cve / phase / action / result / details.
  • ์œ„์น˜ ๊ฒฐ์ •: --log-file > ์‹คํ–‰ํŒŒ์ผ ์˜† cpa.log > $XDG_STATE_HOME/cve-patch-auditor/cpa.log > stderr ํด๋ฐฑ.

๋””๋ ‰ํ† ๋ฆฌ ๊ตฌ์กฐ

cve-patch-auditor/
โ”œโ”€โ”€ cmd/cpa/                          โ† CLI ์—”ํŠธ๋ฆฌ
โ”œโ”€โ”€ internal/
โ”‚   โ”œโ”€โ”€ cve/                          โ† Plugin ์ธํ„ฐํŽ˜์ด์Šค, ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ, ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ดํ„ฐ
โ”‚   โ”œโ”€โ”€ plugins/                      โ† CVE๋ณ„ ํ”Œ๋Ÿฌ๊ทธ์ธ (cve_<id>/ โ€” CVE 1๊ฐœ๋‹น 1 ๋””๋ ‰ํ† ๋ฆฌ). ์ง€์› ๋ชฉ๋ก์€ ์œ„ "์ง€์›ํ•˜๋Š” CVE" ํ‘œ / `cpa --list` ์ฐธ์กฐ
โ”‚   โ”œโ”€โ”€ privilege/                    โ† root ํ™•์ธ + sudo ์žฌ์‹คํ–‰
โ”‚   โ”œโ”€โ”€ exec/                         โ† ์™ธ๋ถ€ ๋ช…๋ น ์•ˆ์ „ ๋ž˜ํผ (์ธ์ž ๋ฐฐ์—ด, ํƒ€์ž„์•„์›ƒ, dry-run)
โ”‚   โ”œโ”€โ”€ system/                       โ† uname / /proc/modules / /etc/os-release / ํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ € / built-in ๊ฐ์ง€
โ”‚   โ”œโ”€โ”€ upgrade/                      โ† ์ž์ฒด ์—…๊ทธ๋ ˆ์ด๋“œ (GitHub Release + SHA256 + atomic rename, Stage 10)
โ”‚   โ”œโ”€โ”€ i18n/                         โ† KO/EN ๋ฉ”์‹œ์ง€ (--lang, env ์ž๋™ ๊ฐ์ง€)
โ”‚   โ””โ”€โ”€ audit/
โ”‚       โ”œโ”€โ”€ log/                      โ† slog ๊ธฐ๋ฐ˜ JSON ๋ผ์ธ ๋กœ๊น…
โ”‚       โ””โ”€โ”€ report/                   โ† ๋งˆํฌ๋‹ค์šด ๋ฆฌํฌํ„ฐ
โ”œโ”€โ”€ doc/
โ”‚   โ”œโ”€โ”€ PLAN.md                       โ† ๋งˆ์Šคํ„ฐ ๊ณ„ํš (Stage๋ณ„ ์ง„ํ–‰ ๊ธฐ๋ก)
โ”‚   โ”œโ”€โ”€ CVE-STATUS.md                 โ† CVE ๋ถ„๋ฅ˜ยท์ƒํƒœ ๋งˆ์Šคํ„ฐ ์ƒ‰์ธ (ยง1 ์ฒ˜๋ฆฌ ๋ฐ˜์˜ / ยง2 ์ด๋ฏธ ์ฐจ๋‹จ๋จ / ยง3 ์ฒ˜๋ฆฌ ์˜ˆ์ • / ยง4 ์กฐ์น˜ ์•ˆ ํ•จ)
โ”‚   โ”œโ”€โ”€ references.md                 โ† ์™ธ๋ถ€ ์ธ์šฉ ์ž๋ฃŒ ์ธ๋ฑ์Šค
โ”‚   โ”œโ”€โ”€ cve/                          โ† CVE ๋ณ„ ์‚ฌ์‹ค ์ •๋ฆฌ + ์ž๋™ํ™” ๊ณ„์•ฝ
โ”‚   โ””โ”€โ”€ stages/                       โ† Phase ๋ณ„ ๊ฒฐ์ •ยท๊ฒ€์ฆ ๊ธฐ๋ก (stage-N-*.md)
โ””โ”€โ”€ .github/workflows/                โ† ci / release

๊ฐœ๋ฐœ

make build            # ๋นŒ๋“œ
make test             # ๋‹จ์œ„ ํ…Œ์ŠคํŠธ
make vet              # go vet
make cover            # ์ปค๋ฒ„๋ฆฌ์ง€
make dist             # ๋ฐฐํฌ์šฉ (linux amd64/arm64 + SHA256SUMS)
make clean

CI๋Š” push/PR๋งˆ๋‹ค vet + test -race + ํฌ๋กœ์Šค ๋นŒ๋“œ๋ฅผ ์ˆ˜ํ–‰ (.github/workflows/ci.yml).

ํ˜ธํ™˜์„ฑ / ์ œ์•ฝ

  • Linux ์ „์šฉ ์‹ค ๋™์ž‘ (kernel modules, /proc/modules, /etc/modprobe.d ์˜์กด).
  • macOS/Windows์—์„œ๋Š” ๋นŒ๋“œยท๋‹จ์œ„ ํ…Œ์ŠคํŠธ๋งŒ ๊ฐ€๋Šฅ; ์‹ค phase ๋ฉ”์„œ๋“œ๋Š” ErrUnsupported.
  • ํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ €๋ฅผ ํ†ตํ•œ ์˜๊ตฌ ์ปค๋„ ํŒจ์น˜ ์ž๋™ ์ ์šฉ์€ ๋ณธ ๋„๊ตฌ ๋ฒ”์œ„ ์™ธ (์‚ฌ์šฉ์ž ์•ˆ๋‚ด๋งŒ).
  • ์ž์ฒด PoC ๋น„ํฌํ•จ.

๋ผ์ด์„ ์Šค

Apache License 2.0. Copyright 2026 skshin. ๊ฒฐ์ • ์‚ฌ์œ ์™€ ๊ฒ€ํ† ํ•œ ๋Œ€์•ˆ์€ doc/license-decision.md ์ฐธ์กฐ.

์ฐธ๊ณ 

  • ์™ธ๋ถ€ ์ธ์šฉ ์ž๋ฃŒ ์ „์ฒด: doc/references.md
  • ์ƒ์„ธ ๊ณ„ํšยท๊ฒฐ์ • ์ด๋ ฅ: doc/PLAN.md, doc/stages/
  • CVE ๋ถ„๋ฅ˜ยท์ƒํƒœ ๋งˆ์Šคํ„ฐ ์ƒ‰์ธ: doc/CVE-STATUS.md

About

Audit CVE impact, patch status, remediation progress, and verification results across systems.

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages