
CyberDefenders JetBrains Lab
분석자: Belal Abdelsalam
날짜: 2026년 7월
Lab/환경: CyberDefenders JetBrains
본 보고서는 침해된 JetBrains TeamCity 서버(버전 2023.11.3)에 대한 포렌식 분석 내용을 기록합니다. 제공된 네트워크 패킷 캡처 파일(.pcap)을 분석한 결과, 외부 위협 행위자가 경로 탐색 취약점(CVE-2024-27198)을 이용하여 인증 메커니즘을 우회한 것이 확인되었습니다. 이후 공격자는 악성 플러그인(Java Server Page(JSP) 웹쉘 포함)을 업로드하여 원격 코드 실행(RCE)을 달성하고 추가 시스템 정찰을 수행했습니다.
조사는 비정상 트래픽의 출처를 식별하는 것으로 시작되었습니다. Wireshark에서 Statistics > Conversations > IPv4로 이동하여 웹 서버와 가장 많은 통신량을 보인 엔드포인트를 확인했습니다.
23.158.56.1962023.11.3HTTP POST 요청(http.request.method == "POST")으로 트래픽을 필터링한 결과 초기 익스플로잇 벡터를 식별했습니다. 공격자는 REST API 엔드포인트에 구조적 세미콜론을 추가하여 알려진 인증 우회 결함을 악용했습니다:
POST /app/rest/users;.jsp이를 통해 공격자는 유효한 자격 증명 없이 관리 액세스 토큰을 생성할 수 있었습니다.
관리자 접근 권한을 확보한 공격자는 지속성을 유지하기 위한 작업에 착수했습니다. http.content_type contains "multipart/form-data"를 사용하여 파일 업로드에 대한 네트워크 스트림을 필터링했습니다.
이러한 요청의 TCP 스트림을 추적한 결과, 공격자가 .zip 아카이브 형식의 악성 TeamCity 플러그인을 업로드한 것이 확인되었습니다.
NSt8bHTg.zipNSt8bHTg.jsp라는 JSP 백도어가 포함되어 있음이 확인되었습니다.침해 범위를 파악하기 위해 새로 배포된 웹쉘과 공격자의 상호 작용을 추적했습니다.
http.request.uri contains "cmd=" 필터를 적용하여 명령 및 제어(C2) 트래픽을 성공적으로 분리했습니다. 공격자는 URL 매개변수를 통해 운영 체제 명령을 직접 전달했습니다.
이 HTTP GET 요청들의 TCP 스트림을 추적하여 서버의 평문 응답을 읽을 수 있었으며, 이를 통해 공격자의 정찰 단계를 확인했습니다:
whoami 명령 실행으로 권한 수준 확인ls 명령 실행으로 내부 파일 탐색C:\TeamCity 및 C:\Windows 경로에 대한 디렉터리 예외를 명시적으로 추가하여 흔적을 은폐하려 시도했습니다.위협 행위자는 CVE-2024-27198을 성공적으로 악용하여 초기 접근 권한을 획득하고, 지속성을 위해 커스텀 웹쉘을 업로드했으며, 시스템 명령을 실행하여 호스트를 정찰하고 로컬 방어를 우회했습니다.
권장 조치:
면책 조항: 이 저장소는 통제된 CyberDefenders 실습실 환경의 일부로서 교육 목적으로만 제공됩니다. 소유하지 않거나 명시적 테스트 권한이 없는 시스템에서는 이러한 기법을 사용하지 마십시오.
| 유형 | 지표 | 설명 | MITRE ATT&CK |
|---|
| IP 주소 | 23.158.56.196 | 공격 출발지 | T1190 |
| URL 경로 | /app/rest/users;.jsp | 인증 우회 익스플로잇 벡터 | T1190 |
| 파일 | NSt8bHTg.zip | 악성 TeamCity 플러그인 | T1505.003 |
| 파일 | NSt8bHTg.jsp | 웹쉘 백도어 | T1505.003 |