## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-B5NULL-CVE-2026-31431-C
# Copy-Fail Exploit (CVE-2026-31431)
ΠΠΊΡΠΏΠ»ΠΎΠΉΡ Π΄Π»Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΉ, Π½Π°ΡΠ΅Π»Π΅Π½Π½ΡΠΉ Π½Π° ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡ ΠΌΠ΅Ρ
Π°Π½ΠΈΠ·ΠΌΠ° copy-on-write Π² ΡΠ΄ΡΠ΅ Linux ΡΠ΅ΡΠ΅Π· ΡΠΎΠΊΠ΅ΡΡ AF_ALG ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ splice.
* * *
## ΠΠ±Π·ΠΎΡ
ΠΡΠΎΡ ΡΠΊΡΠΏΠ»ΠΎΠΉΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ ΠΏΠΎΠ²ΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ ΠΏΠ°ΠΌΡΡΠΈ Π½Π° ΡΡΠΎΠ²Π½Π΅ ΡΠ΄ΡΠ° Π² ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΊΡΠΈΠΏΡΠΎΠ³ΡΠ°ΡΠΈΠΈ Linux (`AF_ALG`) Π² ΡΠΎΡΠ΅ΡΠ°Π½ΠΈΠΈ Ρ ΠΌΠ΅Ρ
Π°Π½ΠΈΠ·ΠΌΠ°ΠΌΠΈ zero-copy (`splice`) Π΄Π»Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π±ΠΈΠ½Π°ΡΠ½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° Π² ΠΏΠ°ΠΌΡΡΠΈ.
ΠΠ°ΡΡΠ° `/usr/bin/su` Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΎΠ²ΡΡΠΈΡΡ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ Π΄ΠΎ root Π±Π΅Π· Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ Π² Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΡΡ
ΡΡΡΡΠ½ΡΡ
Π΄Π°Π½Π½ΡΡ
.
* * *
## ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅
Π‘ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠΉΡΠ΅ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ, ΡΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π² Π»ΡΠ±ΠΎΠΉ ΡΡΠ΅Π΄Π΅ Linux Π±Π΅Π· Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ Π² Python ΠΈΠ»ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ
Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°Ρ
.
root@kitploit:~
gcc -o exploit exploit.c -lz -static
./exploit
* * *
## ΠΠ°ΠΊ ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ
1. ΠΡΠΊΡΡΠ²Π°Π΅Ρ `/usr/bin/su`
2. Π‘ΠΎΠ·Π΄Π°ΡΡ ΡΠΎΠΊΠ΅Ρ `AF_ALG` AEAD
3. ΠΡΠ·ΡΠ²Π°Π΅Ρ ΠΏΠΎΠ²ΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡΠΈ ΡΠ΄ΡΠ° Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎ ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½Π½ΡΡ
ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Ρ ΡΠΎΠΊΠ΅ΡΠΎΠΌ
4. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ Π²ΡΠ·ΠΎΠ²Ρ `splice()` Π΄Π»Ρ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΡΡΠΈΠΈ ΠΏΠ°ΠΌΡΡΡΡ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ zero-copy
5. ΠΠ΅ΡΠ΅Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅Ρ Π»ΠΎΠ³ΠΈΠΊΡ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Π² ΠΏΠ°ΠΌΡΡΠΈ
6. ΠΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΏΡΠΎΠΏΠ°ΡΡΠ΅Π½Π½ΡΠΉ `su` Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ root-ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ
* * *
## Π’ΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ
* Π£ΡΠ·Π²ΠΈΠΌΠ°Ρ Π²Π΅ΡΡΠΈΡ ΡΠ΄ΡΠ° Linux
* ΠΠΊΠ»ΡΡΡΠ½Π½ΡΠΉ `CONFIG_CRYPTO_USER_API_AEAD`
* Π Π°Π·ΡΠ΅ΡΡΠ½Π½ΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠ΅ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π° ΠΈΠΌΡΠ½
* ΠΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠ΅
* * *
## ΠΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΠ΅ ΠΈ ΡΠΌΡΠ³ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠΉ
* Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π΄ΠΎ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½Π½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ ΡΠ΄ΡΠ°, ΠΊΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ½ΠΎ ΡΡΠ°Π½Π΅Ρ Π΄ΠΎΡΡΡΠΏΠ½ΠΎ
* ΠΡΠΊΠ»ΡΡΠΈΡΠ΅ Π½Π΅ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠ΅ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π° ΠΈΠΌΡΠ½, Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΈ Π½Π΅ ΡΡΠ΅Π±ΡΡΡΡΡ:
sysctl -w kernel.unprivileged_userns_clone=0
* ΠΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΠΉΡΠ΅ ΠΏΠΎΠ΄ΠΎΠ·ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅:
* ΡΠΎΠΊΠ΅ΡΠΎΠ² `AF_ALG`
* ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ
Π²ΡΠ·ΠΎΠ²ΠΎΠ² `splice()`
* ΠΡΠΈΠΌΠ΅Π½ΡΠΉΡΠ΅ ΡΡΠΈΠ»Π΅Π½ΠΈΠ΅ ΡΠ΄ΡΠ° (LSM, seccomp ΠΈ Ρ. Π΄.)
* * *
## ΠΡΠΊΠ°Π· ΠΎΡ ΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎΡΡΠΈ
**Π’ΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΡ
ΡΠ΅Π»Π΅ΠΉ ΠΈ ΡΠ°Π½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ
ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠΉ Π² ΠΎΠ±Π»Π°ΡΡΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ.**
ΠΠ΅ΡΠ°Π½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠΎΠ³ΠΎ ΡΠΊΡΠΏΠ»ΠΎΠΉΡΠ° ΠΌΠΎΠΆΠ΅Ρ Π½Π°ΡΡΡΠ°ΡΡ Π΄Π΅ΠΉΡΡΠ²ΡΡΡΠ΅Π΅ Π·Π°ΠΊΠΎΠ½ΠΎΠ΄Π°ΡΠ΅Π»ΡΡΡΠ²ΠΎ. **Π― Π½Π΅ ΡΠ²Π»ΡΡΡΡ Π°Π²ΡΠΎΡΠΎΠΌ ΠΈΡΡ
ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΈ Π½Π΅ Π±ΡΠ» ΡΠ΅ΠΌ, ΠΊΡΠΎ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ» CVE.**
* * *
## Π‘ΡΡΠ»ΠΊΠ°
* CVE: CVE-2026-31431
* ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ: ΡΠ΄ΡΠΎ Linux (`AF_ALG` / ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ° ΠΊΡΠΈΠΏΡΠΎΠ³ΡΠ°ΡΠΈΠΈ)
* ΠΠ»Π°ΡΡ: Use-After-Free / ΠΏΠΎΠ²ΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ Copy-On-Write