## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-K3YSTR0K3R-CVE-2026-24061
## CVE-2026-24061 - GNU InetUtils telnetd μΈμ μ£Όμ
μΈμ¦ μ°ν
GNU InetUtils λ²μ 1.9.3λΆν° 2.7κΉμ§λ telnetd μλ²μμ μ격 μΈμ¦ μ°ν μ·¨μ½μ μ μν₯μ λ°μ΅λλ€. telnetd λ°λͺ¬μ `USER` νκ²½ λ³μλ₯Ό `login(1)` νλ‘κ·Έλ¨μ λͺ
λ Ήμ€ μΈμλ‘ μ λ¬νκΈ° μ μ μ μ ν μ 리(sanitize)νμ§ λͺ»ν©λλ€. ν
λ· ν΄λΌμ΄μΈνΈκ° λͺ
λ Ήμ€ νλκ·Έ(μ: `-f root`)λ₯Ό ν¬ν¨ν USER νκ²½ λ³μλ₯Ό 보λ΄λ©΄, telnetdλ μ΄ μ 리λμ§ μμ κ°μ login νλ‘κ·Έλ¨μ μ§μ μ λ¬ν©λλ€. login μ νΈλ¦¬ν°λ `-f` νλκ·Έλ₯Ό μΈμ¦μ μ°ννλΌλ λͺ
λ ΉμΌλ‘ ν΄μνμ¬, 곡격μκ° μ격 μ¦λͺ
μ μ 곡νμ§ μκ³ λ κΆν μλ λ£¨νΈ μ‘μΈμ€λ₯Ό μ»μ μ μμ΅λλ€.
* * *
## κΈ°λ₯
* **μ 체 ν
λ· νλ‘ν μ½ κ΅¬ν**
* `DO`, `DONT`, `WILL`, `WONT` νμμ μ²λ¦¬ν©λλ€.
* νμ νμ(subnegotiation) ꡬ문 λΆμ λ° μ°κ²° μ μ§(keepalive) λ©μ»€λμ¦μ μ§μν©λλ€.
* **μλ νμ΄λ‘λ μ£Όμ
**
* `USER=-f root` μ£Όμ
μ ν¬ν¨ν μ‘°μλ `ENVIRON` μ΅μ
νμ΄λ‘λλ₯Ό ꡬμ±νμ¬ μ μ‘ν©λλ€.
* **λνν μ
Έ**
* λͺ
λ Ή μ€νμ μν μλ°©ν₯ λνν μΈμ
μ μ 곡ν©λλ€.
* **μ°κ²° κ΄λ¦¬**
* μμΌ μ°κ²° μ μ§, νμμμ μ²λ¦¬ λ° μ μμ μΈ μΈμ
μ 리λ₯Ό ꡬνν©λλ€.
* **μμΈ λλ²κΉ
**
* νλ‘ν μ½ λΆμ λ° λ¬Έμ ν΄κ²°μ μν μ νμ λλ²κ·Έ μΆλ ₯.
* * *
## μ¬μ©λ²
root@kitploit:~
python3 exploit.py <λμ> -p <ν¬νΈ> [μ΅μ
]
### νμ μΈμ
μΈμ| μ€λͺ
---|---
`target`| λμ IP μ£Όμ λλ νΈμ€νΈλͺ
### μ νμ μΈμ
* * *
## μμ
### κΈ°λ³Έ ν
λ· ν¬νΈ μ΅μ€νλ‘μ
root@kitploit:~
python3 exploit.py 192.168.1.100
### μ¬μ©μ μ μ ν¬νΈ λ° μμΈ μΆλ ₯ μ΅μ€νλ‘μ
root@kitploit:~
python3 exploit.py 192.168.1.100 -p 2323 -v
### λΆμμ ν μ°κ²°μ μν νμ₯λ μ°κ²° μ μ§ κ°κ²© μ¬μ©
root@kitploit:~
python3 exploit.py 10.0.0.5 -p 2323 -k 60 -t 10
* * *
## μ΅μ€νλ‘μ μν¬νλ‘
1. **μ°κ²° μ립**
* μ μ ν μμΌ μ΅μ
λ° μ°κ²° μ μ§ μ€μ μΌλ‘ TCP μ°κ²°μ μμν©λλ€.
2. **νλ‘ν μ½ νμ**
* ν
λ· μ΅μ
νμ(`SGA`, `ECHO`, `ENVIRON`)μ μ²λ¦¬ν©λλ€.
3. **νμ΄λ‘λ μ λ¬**
* `WILL ENVIRON`μ λ³΄λΈ ν μ‘°μλ νμ νμ νμ΄λ‘λλ₯Ό μ μ‘ν©λλ€.
4. **μΈμ¦ μ°ν**
* `-f root` μΈμκ° `login(1)`μ μ£Όμ
λμ΄ μ격 μ¦λͺ
κ²μ¬λ₯Ό μ°νν©λλ€.
5. **λνν μΈμ
**
* μ€μκ° λͺ
λ Ή μ€νκ³Ό ν¨κ» μμ ν μλ°©ν₯ μ
Έ μ‘μΈμ€λ₯Ό μ 곡ν©λλ€.
* * *
## κΈ°μ μΈλΆ μ¬ν
μ΄ μ΅μ€νλ‘μμ `ENVIRON` ν
λ· μ΅μ
(RFC 1572)μ νμ©νμ¬ λͺ
λ Ήμ€ μΈμλ₯Ό `USER` νκ²½ λ³μμ μ£Όμ
ν©λλ€.
`telnetd`κ° μ΄ μ 리λμ§ μμ κ°μ `login -f root`μ μ λ¬νλ©΄, login νλ‘κ·Έλ¨μ `-f`λ₯Ό μΈμ¦ μ°νλ₯Ό κ°μ νλ νλκ·Έλ‘ ν΄μνμ¬ μνΈ νμΈ μμ΄ λ£¨νΈ μ‘μΈμ€λ₯Ό λΆμ¬ν©λλ€.
### νλ‘ν μ½ μ²λ¦¬
μ΅μ€νλ‘μ μ€ν¬λ¦½νΈλ λ€μμ ꡬνν©λλ€:
* IAC (Interpret As Command) λ°μ΄νΈ μ΄μ€μΌμ΄ν
* νμ νμ ꡬ문 λΆμ λ° κ΅¬μ±
* μ΅μ
νμ μλ΅(`WILL`, `WONT`, `DO`, `DONT`)
* μΈμ
μμ μ± μ μ§λ₯Ό μν μ°κ²° μ μ§ `NOP` λͺ
λ Ή
* * *
## μμ μΆλ ₯
root@kitploit:~
$ python3 exploit.py 127.0.0.1 -p 2323
[!] Coded By: K3ysTr0K3R
[*] Telnet Authentication Bypass
[*] Connecting to 127.0.0.1:2323
[+] Connection established
[+] Exploit payload sent (19 bytes)
# id
uid=0(root) gid=0(root) groups=0(root)
# whoami
root
#
* * *
## μꡬ μ¬ν
* Python 3.7 μ΄μ
* μΈλΆ μ’
μμ± μμ
* Python νμ€ λΌμ΄λΈλ¬λ¦¬λ§ μ¬μ©
* * *
## νμ§ λ° μν
μμ€ν
κ΄λ¦¬μλ λ€μμ λͺ¨λν°λ§νμ¬ μ΅μ€νλ‘μ μλλ₯Ό νμ§ν μ μμ΅λλ€:
* `ENVIRON` μ΅μ
νμμ μννλ ν
λ· μ°κ²°
* `-f` λλ κΈ°ν λͺ
λ Ήμ€ νλκ·Έλ₯Ό ν¬ν¨ν `USER` νκ²½ λ³μ
* μμ€ν
λ‘κ·Έμ μΈμ¦ μ°ν μ΄λ²€νΈ
### μν
GNU InetUtils λ²μ **2.8** λ‘ μ
κ·Έλ μ΄λνκ±°λ, νκ²½ λ³μλ₯Ό `login(1)`μ μ λ¬νκΈ° μ μ μ 리νλ 곡μ 보μ ν¨μΉλ₯Ό μ μ©νμμμ€.
* * *
## λ©΄μ±
μ‘°ν
μ΄ κ°λ
μ¦λͺ
μ 보μ μ°κ΅¬, μ·¨μ½μ κ²μ¦ λ° μΉμΈλ ν
μ€νΈ νκ²½μμλ§ μ¬μ©νκΈ° μν κ²μ
λλ€. 보μ νκ°λ₯Ό μνν λͺ
μμ κΆνμ΄ μλ μμ€ν
μλ§ μ¬μ©νμμμ€.