
A Python 기반 보안 스캐너로, SAP Visual Composer 시스템에서 CVE-2025-31324 취약점을 식별하고 악성 .jsp와 같은 알려진 침해 지표(IOC)를 탐지합니다.
SAP Visual Composer 시스템에서 CVE-2025-31324 취약점을 식별하고 악성 .jsp와 같은 알려진 침해 지표(IOC)를 탐지하는 Python 기반 보안 스캐너입니다.
.jsp 파일(웹쉘) 스캔requests 라이브러리 (requirements.txt로 설치)# 1. Clone the repository
git clone https://github.com/youruser/CVE-2025-31324.git
cd CVE-2025-31324
# 2. Create and activate virtual environment
python3 -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# 3. Install dependencies
pip install -r requirements.txt
scan.py # 메인 스캐너
targets.csv # 대상 목록 입력
ioc_list.txt # 선택적 IOC 시그니처 목록
results.csv # 출력 보고서 (--output 사용 시)
requirements.txt # Python 의존성
다음 세미콜론으로 구분된 형식으로 targets.csv 파일을 생성합니다. IP, 포트 및 SSL 옵션 포함:
192.168.1.10;50000;false
myunsafelocation.example.com;443;true
10.0.0.5;8080;false
true, false, yes, 또는 no 사용ioc_list.txt 파일을 생성합니다:
# Default IOCs
cache.jsp
helper.jsp
nzwcnktc.jsp
# Add your own signatures
shell.jsp
webadmin.jsp
python3 scan.py --input targets.csv
| Flag | Description |
|---|---|
--iocfile | 사용자 정의 IOC 목록 경로 (.txt) |
python3 scan.py --input targets.csv --iocfile ioc_list.txt --output results.csv --verbose
스크립트는 각 호스트에 대한 결과 블록을 출력합니다:
__________________________________
✅ Target 1 : 192.168.1.10:50000
Connection: Online
Status: Not Vulnerable
IOC: None detected
__________________________________
| Icon | Meaning |
|---|---|
| ✅ | 안전 (취약하지 않음, IOC 없음) |
| ❗ | 취약하지만 IOC 발견 안 됨 |
| 💥 | 취약 및 IOC 탐지됨 |
| ❌ | 호스트에 연결할 수 없음 / 연결 실패 |
로컬에서 테스트하려면 취약한 SAP 시스템을 시뮬레이션하는 Python HTTP 서버를 실행하십시오:
mkdir -p test/developmentserver
mkdir -p test/irj
echo "" > test/developmentserver/metadatauploader
echo "<%-- fake webshell --%>" > test/irj/cache.jsp
cd test
python3 -m http.server 8000
targets.csv에 다음 추가:
0.0.0.0;8000;false
이 도구는 승인된 보안 테스트 및 연구 목적으로만 제공됩니다. 귀하가 소유하지 않거나 명시적 스캔 권한이 없는 시스템에 대해 사용하지 마십시오.
제안이나 개선 사항이 있으면 이슈를 열거나 PR을 제출해 주세요.
이 프로젝트는 MIT 라이선스에 따라 라이선스가 부여됩니다.
상업적 또는 개인적으로 자유롭게 사용, 수정 및 배포할 수 있습니다.
면책 조항:
이 도구는 있는 그대로 제공되며, 어떠한 보증이나 보장도 없습니다.
저자는 이 도구의 사용으로 인한 어떠한 손해나 법적 문제에 대해서도 책임지지 않습니다.
시스템을 스캔하고 테스트할 명시적 권한이 있는 환경에서만 사용하십시오.
--output 또는 -o |
| 결과를 CSV로 저장 |
--verbose 또는 -v | 상세 디버그 출력 활성화 |