## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-STR1KEBOO-CVE-2025-49132
# CVE-2025-49132 κ°λ
μ¦λͺ
(PoC)
μ΄ μ μ₯μλ Pterodactyl Panel λ²μ 1.11.11 μ΄μ μμ λ°μνλ μ€μ μΈμ¦λμ§ μμ μ격 μ½λ μ€ν(RCE) μ·¨μ½μ μΈ CVE-2025-49132μ λν κ°λ
μ¦λͺ
(PoC)μ ν¬ν¨ν©λλ€.
## μ·¨μ½μ μμΈ μ 보
* **CVE ID** : CVE-2025-49132
* **μ¬κ°λ** : 10.0 (μΉλͺ
μ ) - CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
* **μν₯λ°λ λ²μ ** : < 1.11.11 (μ: 1.9.0 ~ 1.11.10)
* **μ€λͺ
** : Pterodactyl Panelμ `/locales/locale.json` μλν¬μΈνΈλ₯Ό ν΅ν΄ μΈμ¦λμ§ μμ μμμ μ격 μ½λ μ€ν μ·¨μ½μ μ΄ μ‘΄μ¬νλ©°, `locale` λ° `namespace` 쿼리 λ§€κ°λ³μλ₯Ό ν΅ν΄ μ
μ© κ°λ₯ν©λλ€. μ΄λ₯Ό ν΅ν΄ 곡격μλ μμ μ½λ μ€ν, λ―Όκ° νμΌ μ½κΈ°(μ: configs, .env), λ°μ΄ν°λ² μ΄μ€ λ€ν, κ΄λ¦¬ μλ² μ κ·Όμ΄ κ°λ₯ν©λλ€.
* **κΆκ³ ** : GitHub Security Advisory GHSA-24wv-6c99-f843
* **ν¨μΉ** : v1.11.11μμ μμ λμμ΅λλ€. μ»€λ° 24c82b0μμ ν¨μΉλ₯Ό μ μ©νκ±°λ μ¦μ μ
κ·Έλ μ΄λνμΈμ.
* **ν΄κ²° λ°©λ²** : μΈλΆ WAF(μ: Cloudflare)λ₯Ό μ¬μ©νμΈμ. μννΈμ¨μ΄ ν΄κ²° λ°©λ²μ μμ΅λλ€. κ°λ₯νλ€λ©΄ μΉ μλ² μμ€μμ μλν¬μΈνΈλ₯Ό λΉνμ±ννμΈμ(λ‘컬λΌμ΄μ μ΄μ
μ΄ κΉ¨μ§λλ€).
## PoC μ€ν¬λ¦½νΈ
`CVE-2025-49132-PoC.py` μ€ν¬λ¦½νΈλ λ€μμ μνν μ μλ μλν λꡬμ
λλ€:
* λμμ΄ μ·¨μ½νμ§ ν
μ€νΈ (κ΅¬μ± νμΌλ‘μ κ²½λ‘ νμ νμΈ)
* μ νλ RCE μ
μ© (λ°λͺ¨λ‘ 5μ΄ sleep; PEAR μ€μΉ νμ)
* λ°μ΄ν°λ² μ΄μ€ μ격 μ¦λͺ
λ€ν (config/databaseμμ)
κ²½λ‘ κ΅¬λΆμλ₯Ό μ‘°μ νμ¬ Linux λ° Windows λμμ λͺ¨λ μ§μν©λλ€. λ λμ μ¬μ©μ±μ μν΄ μμ μΆλ ₯ λ° μ€λ₯ μ²λ¦¬λ₯Ό ν¬ν¨ν©λλ€.
### μ¬μ©λ²
root@kitploit:~
python CVE-2025-49132-PoC.py <mode> <http://host> [--os <linux|windows>] [--traversal-level <int>]
#λͺ
λ Ήμ΄ μμ
root@kitploit:~
python CVE-2025-49132-PoC.py test http://sub.domain.com
python CVE-2025-49132-PoC.py dump http://domain.com
python CVE-2025-49132-PoC.py exploit http://sub.domain.com --os linux
python CVE-2025-49132-PoC.py test http://sub.domain.com --os linux --traversal-level 3
κ²μ¬κ° μ€ν¨νλ©΄ μΆλ ₯λ URL, μν λ° μλ΅μ κ²ν νμΈμ. μλν¬μΈνΈκ° μ°¨λ¨λμκ±°λ μ·¨μ½νμ§ μμ κ²½μ° μλ΅μ΄ HTMLμΌ μ μμ΅λλ€. νΈμ€νΈκ° μ ννκ³ μ κ·Ό κ°λ₯νμ§ νμΈνμΈμ.
## λͺ¨λ:
* test: μ·¨μ½μ νμΈ
* exploit: RCE μν (PoCλ‘ 5μ΄ sleep)
* dump: μ격 μ¦λͺ
λ€ν
* \--os: linux (κΈ°λ³Έκ°) λλ windows
* \--traversal-level: '../' κ°μ (config/dumpμ κΈ°λ³Έκ° 3, RCEμ κΈ°λ³Έκ° 5). κ²½λ‘κ° λ€λ₯Έ κ²½μ° μ‘°μ νμΈμ (μ: 4 λλ 6).
## OpSec κ³ λ €μ¬ν
* RCE μ
μ©μ λ‘κ·Έλ₯Ό ν΅ν΄ νμ§ κ°λ₯: cat /var/www/pterodactyl/storage/logs/laravel-2025-_-_.log | grep 'Illuminate\Translation\FileLoader->load()'
* μ‘μΈμ€ λ‘κ·Έκ° νμ±νλ κ²½μ° locale=.. νλͺ©μ μ°ΎμΌμΈμ.
* κΈ°λ³Έ ꡬμ±(SSL μμ)μ μ격 μ¦λͺ
μ μ½κ² κΈ°λ‘νμ§ μμ μ μμ΅λλ€.
## λ²μ λ©΄μ±
μ‘°ν
μ΄ PoCλ κ΅μ‘ λͺ©μ μΌλ‘λ§ μ 곡λκ±°λ, λͺ
μμ νκ°λ₯Ό λ°μ CTF(μΊ‘μ² λ νλκ·Έ)μ κ°μ μΈμ¦λ μ±λ¦°μ§ λλ μΉ¨ν¬ ν
μ€νΈμ μ¬μ©νκΈ° μν΄ μ 곡λ©λλ€. μμ μμ μ¬μ μλ©΄ λμ μμ΄ μμ€ν
μ λν΄ μ΄λ₯Ό μ¬μ©νλ κ²μ λΆλ²μ
λλ€. μ μλ μ΄ μ½λμ μ€μ©μ λν΄ μ΄λ ν μ±
μλ μ§μ§ μμ΅λλ€.
## μ€μΉ
Python 3 λ° requests νμ (pip install requestsλ‘ μ€μΉ).
## μ’
μμ±
* requests (pip install requests)
* colorama (pip install colorama)
* urllib3 (pip install urllib3)
* argparse (νμ€ λΌμ΄λΈλ¬λ¦¬)
## λΌμ΄μ μ€
MIT λΌμ΄μ μ€. LICENSE νμΌ μ°Έμ‘°.
## κΈ°μ¬
κ°μ μ μν ν 리νμ€νΈλ₯Ό νμν©λλ€. λ¨, κ΅μ‘μ λͺ©μ μ λΆν©νλμ§ νμΈνμΈμ.