Struts2 File Upload (CVE-2024-53677)
SonicWall Capture Labs 위협 연구팀은 Apache Struts 2 프레임워크의 인증되지 않은 원격 코드 실행 취약점을 발견하고 그 영향을 평가한 후 완화 조치를 개발했습니다. Apache Struts는 IT 인프라에서 Java 웹 애플리케이션을 구축하기 위한 오픈소스 모델-뷰-컨트롤러(MVC) 프레임워크입니다. 플러그인 아키텍처를 사용하여 확장 가능하며 REST, AJAX, JSON을 지원하는 플러그인을 제공합니다.
CVE-2024-53677로 식별된 Apache Struts 2.0.0 버전부터 6.4.0 이전 버전은 인증되지 않은 위협 행위자가 파일 업로드 메커니즘을 통해 경로 탐색을 수행할 수 있도록 허용하며, 이는 원격 코드 실행으로 이어질 수 있습니다. 이 취약점은 CVSS 9.8점의 '중요' 점수를 받았습니다. 이 권고에 따르면 Apache Struts 2 사용자는 인스턴스를 최신 수정 버전으로 업그레이드하고 새로운 파일 업로드 메커니즘으로 마이그레이션할 것을 권장합니다.
| 설명 | |
| 영향 범위 | Apache Struts 버전 2.0.0 이상부터 6.4.0 이전 버전까지 (즉, 6.4.0 미만) |
| 취약 유형 | |
| 취약점 설명 | 파일 업로드 처리 로직에서 파라미터를 조작해 경로 순회(Path Traversal)를 유도하고, 경우에 따라 악성 파일을 업로드하여 원격 코드 실행(Remote Code Execution, RCE) |

Burp Suite를 통한 취약점 시연
임의의 파일 "JSP" 업로드 가능한 것을 확인

POC 패킷을 분석하여 Burp Suite를 통해 취약점 테스트 시연한 결과, 파일 업로드 및 저장 경로 변경 가능한 것을 확인

JSP 파일 업로드뿐만 아니라, 저장 경로도 변경 가능한 것을 확인

POC를 통한 취약점 시연
gituhb를 통해 "CVE-2024-53677" POC 파일을 다운로드한 후 CVE 공격 시도
https://github.com/EQSTLab/CVE-2024-53677

정상적으로 test1.jsp 저장 경로 및 악성 파일 업로드되는 것을 확인

WireShark 도구를 통해 패킷이 대량으로 전송되는게 아닌 소수로 날아가고 날아가는 패킷 정보는 아래와 같음

악성 파일 정상 동작 확인

참고 사이트
| https://www.skshieldus.com/kor/eqstinsight/cve2501.html https://github.com/EQSTLab/CVE-2024-53677 |
'Hacking > 침투 테스트(Pen Test)' 카테고리의 다른 글
| [침투 테스트] 인터넷 연결 공유(ICS) 차단 정책 설정 (지니안 NAC) (0) | 2026.01.21 |
|---|---|
| [침투 테스트] React2Shell (CVE-2025-55182) (0) | 2026.01.12 |
| [침투 테스트] CCTV 및 DVR 취약점(CVE-2018-9995, CVE-2018-10676) (0) | 2025.07.01 |
| [침투 테스트] Apache Solr RCE 취약점(CVE-2019-17558) (1) | 2025.06.05 |
| [침투 테스트] crackmapexec 도구(SMB 서비스) (3) | 2024.07.30 |