
MegaQuagga Publishing에 대한 침투 테스트 보고서로, CVE-2019-9978과 CVE-2023-4842를 연쇄적으로 활용하여 인증 없는 원격 코드 실행(Remote Code Execution)과 지속적인 Meterpreter 세션을 달성한 6단계 공격 작업을 문서화합니다. 전체 방법론, 악용 증거, 우선순위별 수정 권장 사항을 포함합니다.
분석가: Samuel Weiss 조직: 0x2A Security 날짜: 2026년 4월 20일 고객: MegaQuagga Publishing 대상: www.megaquagga.local 분류: 기밀
이 프로젝트는 MegaQuagga Publishing 웹 환경을 대상으로 수행된 구조화된 침투 테스트를 문서화합니다. 이번 침투 테스트에서 5개의 악용 가능한 취약점이 확인되었으며, 그중 2개는 체이닝되어 인증 없는 원격 코드 실행(RCE)을 달성하고 대상 호스트에 지속적인 Meterpreter 세션을 구축하는 데 사용되었습니다.
| 파일 | 설명 |
|---|---|
_VULN_EXPLOITATION__MegaQuagga_Pentesting_Report__Samuel_Weiss_.docx | 범위, 6단계 방법론, 발견 사항, 악용 증거 및 우선순위별 수정 권장 사항을 포함한 전체 침투 테스트 보고서 |
범위 내:
www.megaquagga.local범위 외 / 금지 사항:
| 단계 | 활동 |
|---|---|
| 0단계 — 사전 준비 | 공식 범위 설정, 참여 규칙, 상호 NDA |
| 1단계 — 정찰 | ICMP 호스트 발견; TCP/80의 HTTP가 기본 진입 벡터로 확인됨 |
| 2단계 — 스캐닝 | Metasploit을 통한 db_nmap -A; OS 탐지, 서비스 핑거프린팅, NSE 스크립트 |
| 3단계 — 취약점 식별 | NVD, WPScan DB 및 Exploit-DB에 대한 플러그인 버전 교차 참조 |
| 4단계 — 악용 | 인증 없는 RCE 및 지속적인 Meterpreter 세션을 위한 CVE 체이닝 |
| 5단계 — 사후 악용 | 호스트 프로파일링, 접근 확인, 폭발 반경 문서화 |
swp_url POST 매개변수를 서버 측 eval()에 전달하기 전에 검증하지 못함. 인증되지 않은 공격자는 자격 증명 없이 임의의 PHP 코드를 실행할 수 있음.www-data 권한으로 완전한 인증 없는 RCE; wp-config.php(데이터베이스 자격 증명), 모든 호스팅 파일에 대한 읽기 접근 및 네트워크 피벗 지점.[Attacker] → CVE-2019-9978 (swp_url injection)
→ PHP payload executed server-side
→ CVE-2023-4842 (reverse shell delivery)
→ Meterpreter session established as www-data
→ Read access to wp-config.php, all hosted files, potential lateral movement
확인된 접근 수준: megaquagga-web(Ubuntu x86_64)의 www-data 웹 서버 사용자
| 우선순위 | 권장 사항 | 일정 |
|---|---|---|
| Critical — 즉시 | social-warfare를 v3.5.3+로 업데이트; 사용하지 않으면 제거 | 48~72시간 |
| Critical — 즉시 | galactic-file-uploader가 비즈니스 핵심이 아닌 경우 감사 및 제거 | 48~72시간 |
| 단기 | TLS 배포 및 HTTPS 강제 적용; 포트 80에서 HTTP 비활성화 | 30일 |
| 단기 | XML-RPC 인터페이스 비활성화 또는 제한 | 30일 |
| 중기 | 월별 감사가 포함된 공식 WordPress 패치 관리 정책 구현 | 90일 |
MegaQuagga Publishing에 대한 침투 테스트 보고서로, CVE-2019-9978과 CVE-2023-4842를 체이닝하여 인증 없는 원격 코드 실행과 지속적인 Meterpreter 세션을 달성한 6단계 계약을 문서화합니다. 전체 방법론, 악용 증거 및 우선순위별 수정 권장 사항을 포함합니다.