Sploitus

Exploit for CVE-2026-31431-Copy-Fail-add-arm64

kitploit ยท 2026-08-27

Exploit Code

MARKDOWN100 lines
## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-0XER0-CVE-2026-31431-COPY-FAIL-ADD-ARM64
## ์ทจ์•ฝ์  ๊ฐœ์š”

ํ•ญ๋ชฉ| ๋‚ด์šฉ  
---|---  
CVE ๋ฒˆํ˜ธ| CVE-2026-31431  
์ทจ์•ฝ์  ์ด๋ฆ„| Copy Fail  
์ทจ์•ฝ์  ์œ ํ˜•| Linux ์ปค๋„ ๋กœ์ปฌ ๊ถŒํ•œ ์ƒ์Šน (LPE)  
CVSS 3.1 ์ ์ˆ˜| 7.8 (HIGH)  
CWE| CWE-669: Incorrect Resource Transfer Between Spheres  
์˜ํ–ฅ ๋ฒ”์œ„| 2017๋…„๋ถ€ํ„ฐ 2026๋…„ 4์›”๊นŒ์ง€ ๋นŒ๋“œ๋œ ๋ชจ๋“  Linux ์ปค๋„  
CISA KEV| ๋“ฑ์žฌ๋จ, ์ˆ˜์ • ๊ธฐํ•œ 2026-05-15  
๊ณต๊ฐœ ์‹œ๊ฐ„| 2026-04-29  
  
### ์ทจ์•ฝ์  ์›๋ฆฌ

2017๋…„ ์ปค๋„์€ `algif_aead` ์•”ํ˜ธํ™” ๋ชจ๋“ˆ์— ์ œ์ž๋ฆฌ ์•”ํ˜ธํ™” ์ตœ์ ํ™”(in-place optimization)๋ฅผ ๋„์ž…ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด ์ตœ์ ํ™”๋กœ ์ธํ•ด page-cache ํŽ˜์ด์ง€๊ฐ€ ์ž˜๋ชปํ•˜์—ฌ ์“ฐ๊ธฐ ๊ฐ€๋Šฅํ•œ ๋Œ€์ƒ scatterlist์— ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ๊ณต๊ฒฉ์ž๋Š” `AF_ALG` ์†Œ์ผ“๊ณผ `splice()` ์‹œ์Šคํ…œ ์ฝœ์„ ์กฐํ•ฉํ•˜์—ฌ ์ž„์˜ ํŒŒ์ผ(root ์†Œ์œ ์˜ ์ฝ๊ธฐ ์ „์šฉ ํŒŒ์ผ ํฌํ•จ)์˜ page cache์— ๋ฐ์ดํ„ฐ๋ฅผ ์“ธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

**๊ณต๊ฒฉ ์ฒด์ธ** : `AF_ALG socket` โ†’ `splice()` โ†’ page-cache ์“ฐ๊ธฐ ํ”„๋ฆฌ๋ฏธํ‹ฐ๋ธŒ โ†’ setuid ๋ฐ”์ด๋„ˆ๋ฆฌ page cache ๋ณ€์กฐ โ†’ ํ•ด๋‹น ํŒŒ์ผ ์‹คํ–‰์œผ๋กœ root ๊ถŒํ•œ ํš๋“

**๊ณต๊ฒฉ ํŠน์ง•** :

  * ๊ฒฝ์Ÿ ์กฐ๊ฑด ์—†์Œ(race condition์ด ์•„๋‹Œ ์ง์ ‘์ ์ธ ๋…ผ๋ฆฌ ๊ฒฐํ•จ)
  * ์ปค๋„ ๋””๋ฒ„๊ทธ ๊ธฐ๋Šฅ ๋ถˆํ•„์š”
  * ํŠน์ • ์•„ํ‚คํ…์ฒ˜ ์˜คํ”„์…‹ ์กฐ์ • ๋ถˆํ•„์š”
  * ๋ฒ”์šฉ ์ต์Šคํ”Œ๋กœ์ž‡ ์Šคํฌ๋ฆฝํŠธ๋Š” ์•ฝ 732๋ฐ”์ดํŠธ์— ๋ถˆ๊ณผํ•˜๋ฉฐ ๋ชจ๋“  ์ฃผ์š” ๋ฐฐํฌํŒ์—์„œ ์œ ํšจ



* * *

## ์˜ํ–ฅ ๋ฒ”์œ„

### ๊ฒ€์ฆ๋œ ์˜ํ–ฅ ๋ฐฐํฌํŒ

๋ฐฐํฌํŒ| ์˜ํ–ฅ ์ปค๋„ ๋ฒ„์ „  
---|---  
Ubuntu 24.04 LTS| 6.17.0-1007-aws  
Amazon Linux 2023| 6.18.8-9.213.amzn2023  
RHEL 10.1| 6.12.0-124.45.1.el10_1  
SUSE 16| 6.12.0-160000.9-default  
  
Debian, Arch, Fedora, Rocky, Alma, Oracle ๋“ฑ์˜ ๋ฐฐํฌํŒ์—์„œ๋„ ๋™์ผํ•œ ์ปค๋„ ๋ฒ”์œ„๊ฐ€ ์˜ํ–ฅ์„ ๋ฐ›์Šต๋‹ˆ๋‹ค.

### ์˜ํ–ฅ ์ปค๋„ ๋ฒ„์ „ ๋ฒ”์œ„

์ปค๋„ ๋ฒ„์ „์ด ์•„๋ž˜ ์ˆ˜์ • ๋ฒ„์ „๋ณด๋‹ค ๋‚ฎ์€ ๊ฒฝ์šฐ ๋ชจ๋‘ ์˜ํ–ฅ ๋ฒ”์œ„์— ํ•ด๋‹นํ•ฉ๋‹ˆ๋‹ค:

* * *

## ์ง„๋‹จ ๋ฐฉ๋ฒ•

### 1\. ์ปค๋„ ๋ฒ„์ „ ํ™•์ธ

root@kitploit:~
    
    
    uname -r
    

์ถœ๋ ฅ ๊ฒฐ๊ณผ๋ฅผ ์œ„ ํ‘œ์˜ ์ˆ˜์ • ๋ฒ„์ „๊ณผ ๋น„๊ตํ•˜์—ฌ, ์ˆ˜์ • ๋ฒ„์ „๋ณด๋‹ค ๋‚ฎ์œผ๋ฉด ์˜ํ–ฅ ๋ฒ”์œ„์— ํ•ด๋‹นํ•ฉ๋‹ˆ๋‹ค.

### 2\. AF_ALG ์—ฐ๊ฒฐ ํ™•์ธ

root@kitploit:~
    
    
    # ํ˜„์žฌ AF_ALG ์—ฐ๊ฒฐ์ด ์žˆ๋Š”์ง€ ํ™•์ธ
    lsof | grep AF_ALG
    
    # AF_ALG socket ์ƒํƒœ ํ™•์ธ
    ss -xa | grep alg
    

### 3\. algif_aead ๋ชจ๋“ˆ ๋กœ๋“œ ์—ฌ๋ถ€ ํ™•์ธ

root@kitploit:~
    
    
    lsmod | grep algif_aead
    

์ถœ๋ ฅ์ด ์žˆ์œผ๋ฉด ๋ชจ๋“ˆ์ด ๋กœ๋“œ๋œ ๊ฒƒ์ด๋ฉฐ, ์•…์šฉ ์œ„ํ—˜์ด ์กด์žฌํ•ฉ๋‹ˆ๋‹ค.

### 4\. ์ทจ์•ฝ์  ๊ฒ€์ฆ(์Šน์ธ๋œ ํ…Œ์ŠคํŠธ ํ™˜๊ฒฝ์—์„œ๋งŒ)

root@kitploit:~
    
    
    # PoC ์ €์žฅ์†Œ ํด๋ก 
    git clone https://github.com/cx330zer0/CVE-2026-31431-Copy-Fail-add-arm64.git
    cd CVE-2026-31431-Copy-Fail-add-arm64
    
    # PoC ์‹คํ–‰(๋น„ํŠน๊ถŒ ์‚ฌ์šฉ์ž ๊ถŒํ•œ ํ•„์š”)
    python3 copy-fail-dual-arch.py
    

![image](https://assets.kitploit.com/production/public/readmes/52901/a4c8ef507aa631adbe751b10490504a499550f4b7ab256f676880fb623a62df6/126df33e381f60a40f38644f67207ce1ec3288d8a14e8eb2cdaec21340633f10-display-v1.webp)

PoC๊ฐ€ ์„ฑ๊ณต์ ์œผ๋กœ root ์…ธ์„ ํš๋“ํ•˜๋ฉด ์‹œ์Šคํ…œ์— ํ•ด๋‹น ์ทจ์•ฝ์ ์ด ์กด์žฌํ•จ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.