
빠른 WordPress 플러그인 열거 도구
"왜 맹목적으로 스캔하나요? WordPress가 스스로를 노출하는데."
REST API 열거를 통해 설치된 플러그인을 감지하고 HTML 탐색을 통해 테마를 감지한 다음 알려진 취약점에 매핑하는 빠른 WordPress 플러그인 및 테마 스캐너입니다. 무차별 대입 없이 5000개 이상의 플러그인을 감지할 수 있으며, 무차별 대입을 사용하면 수천 개 이상을 감지할 수 있습니다.
2026년 3월 9일부터 Wordfence는 v2 API를 폐지했습니다. v0.10.16 이전의 모든 WPProbe 버전은 update-db 기능이 손상되었습니다. WPProbe를 업데이트해야 합니다.
기본적으로 wpprobe update-db는 이 저장소에서 사전 빌드된 데이터베이스를 가져오므로(CI를 통해 2시간마다 업데이트) API 키가 필요 없습니다. Wordfence에서 직접 가져오려면 무료 API 키를 선택적으로 설정할 수 있습니다:
--api-key 플래그를 통해 설정하세요.go install github.com/Chocapikk/wpprobe@latest
wpprobe update-db
wpprobe scan -u https://example.com
wpprobe scan -u https://example.com --mode stealthy
wpprobe scan -u https://example.com --mode bruteforce
wpprobe scan -u https://example.com --mode hybrid
# Kali Linux (kali-rolling에 포함됨)
sudo apt install wpprobe
# Go (1.22+ 필요)
go install github.com/Chocapikk/wpprobe@latest
# Nix
nix-shell -p wpprobe
# Docker
docker run -it --rm wpprobe scan -u https://example.com
# 소스에서 빌드
git clone https://github.com/Chocapikk/wpprobe && cd wpprobe && go build -o wpprobe
# 입력/출력 파일을 위해 현재 디렉터리 마운트
docker run -it --rm -v $(pwd):/data wpprobe scan -f /data/targets.txt -o /data/results.csv
# 취약점 데이터베이스 유지
docker run -it --rm \
-v $(pwd):/data \
-v wpprobe-config:/config \
wpprobe scan -f /data/targets.txt -o /data/results.json
# 데이터베이스 업데이트
docker run -it --rm \
-v wpprobe-config:/config \
-e WORDFENCE_API_KEY=your_key \
-e WPSCAN_API_TOKEN=your_token \
wpprobe update-db
# 단일 대상
wpprobe scan -u https://example.com
# 스레딩을 사용한 여러 대상
wpprobe scan -f targets.txt -t 20
# 사용자 지정 옵션
wpprobe scan -u https://example.com \
--header "User-Agent: CustomAgent" \
--proxy http://proxy:8080 \
--rate-limit 10 \
--no-check-version
# 출력 형식
wpprobe scan -u https://example.com -o results.csv
wpprobe scan -u https://example.com -o results.json
# 데이터베이스 업데이트 (Wordfence는 무료 API 키 필요, WPScan은 Enterprise API 토큰 필요)
wpprobe update-db --api-key your_wordfence_key
# 또는 환경 변수 사용
export WORDFENCE_API_KEY=your_key_here
wpprobe update-db
# 취약점 검색
wpprobe search --cve CVE-2024-1234
wpprobe search --plugin woocommerce
wpprobe search --severity critical
wpprobe search --auth Unauth
wpprobe search --title "SQL Injection" --details
# 데이터베이스 통계
wpprobe list
Wordfence 데이터베이스 업데이트를 위해 WORDFENCE_API_KEY를 설정하세요(무료). WPScan 데이터베이스 업데이트를 위해 WPSCAN_API_TOKEN을 설정하세요(Enterprise 플랜 전용).
wpprobe update
릴리스에서 설치된 바이너리만 자체 업데이트됩니다. 소스에서 빌드한 것은 일반적으로 마지막 릴리스보다 앞서 있으므로 이를 교체하면 다운그레이드가 됩니다. 대신 저장소에서 다시 빌드하거나 --force를 전달하여 릴리스 바이너리를 설치하세요.
시작 시 WPProbe는 배너를 표시하기 위해 게시된 최신 릴리스를 확인합니다. 이 응답은 24시간 동안 캐시되며, 확인을 완전히 끌 수 있습니다:
export WPPROBE_NO_UPDATE_CHECK=1
은밀 모드는 노출된 REST API 경로(?rest_route=/)를 쿼리하고 발견된 엔드포인트를 알려진 플러그인 서명의 사전 컴파일된 데이터베이스와 매칭합니다. 또한 페이지 HTML에서 wp-content/themes/ 참조를 구문 분석하여 활성 테마를 발견하고 style.css에서 해당 버전을 가져옵니다. 이는 최소한의 요청을 생성하고 WAF에 의한 탐지를 피합니다.
무차별 대입 모드는 GET 요청을 통해 플러그인 디렉터리를 직접 확인합니다. 403 응답은 플러그인이 존재함을 확인합니다(디렉터리 목록 금지). 200 응답은 모든 경로에 대해 200을 반환하는 WordPress 인스턴스의 오탐을 피하기 위해 디렉터리 목록에서 readme.txt를 확인하여 검증합니다.
하이브리드 모드는 두 가지를 결합합니다: 먼저 은밀하게 저소음 탐지를 수행한 다음 나머지 플러그인에 대해 무차별 대입을 수행합니다. 테마는 모드에 관계없이 항상 HTML을 통해 발견됩니다.
감지된 플러그인과 테마는 Wordfence 및 WPScan 데이터베이스의 알려진 CVE와 상호 연관되며, 버전 범위 매칭을 통해 취약한 설치를 식별합니다.
CSV:
URL,Plugin,Version,Severity,AuthType,CVEs,CVE Links,CVSS Score,CVSS Vector,Title
http://example.com,give,2.20.1,critical,Unauth,CVE-2025-22777,https://www.cve.org/CVERecord?id=CVE-2025-22777,9.8,CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H,GiveWP <= 3.19.3 - Unauthenticated PHP Object Injection
JSON 출력은 항상 배열이며 스캔된 각 대상에 대해 하나의 객체를 포함하므로, 하나의 URL을 스캔하든 -f로 여러 개를 스캔하든 단일 파일이 유효하게 유지됩니다.
JSON:
[
{
"url": "http://example.com",
"plugins": {
"give": [
{
"version": "2.20.1",
"severities": [
{
"critical": [
{
"auth_type": "Unauth",
"vulnerabilities": [
{
"cve": "CVE-2025-22777",
"cve_link": "https://www.cve.org/CVERecord?id=CVE-2025-22777",
"title": "GiveWP <= 3.19.3 - Unauthenticated PHP Object Injection",
"cvss_score": 9.8,
"cvss_vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H"
}
]
}
]
}
]
}
],
"wordpress-seo": [
{
"version": "27.1.1"
}
]
}
}
]
기여는 환영합니다. 이슈를 열거나 풀 리퀘스트를 제출해 주세요.
MIT 라이선스 - 자세한 내용은 LICENSE 파일을 참조하세요.
취약점 데이터는 Defiant, Inc.가 제공하는 Wordfence Intelligence에서 제공됩니다. Copyright (c) Defiant, Inc. All rights reserved. 이 저장소의 db 릴리스에 게시된 사전 빌드된 데이터베이스는 해당 데이터의 처리된 사본이며, Wordfence Intelligence 이용 약관에 부여된 라이선스에 따라 재배포됩니다. 복사본을 만들 때는 NOTICE에 있고 update-db 실행 시 디스크의 데이터베이스 옆에 기록된 Defiant, Inc.의 저작권 표시와 해당 라이선스를 재현해야 합니다.
WPProbe는 Defiant, Inc.와 제휴, 보증 또는 후원 관계가 아닙니다.
@Chocapikk이(가) 개발했습니다.
| 모드 | 방법 | 은밀성 | 범위 |
|---|
stealthy (기본값) | REST API 엔드포인트 매칭 + HTML 테마 탐색 | 높음 | 5000개 이상의 플러그인 + 테마 |
bruteforce | 직접 디렉터리 확인 | 낮음 | 10k개 이상의 플러그인 |
hybrid | 먼저 은밀하게, 그 다음 무차별 대입 | 중간 | 최대 |
| 변수 | 설명 |
|---|
WORDFENCE_API_KEY | 데이터베이스 업데이트용 Wordfence API 키 (무료, 여기서 받기) |
WPSCAN_API_TOKEN | 데이터베이스 업데이트용 WPScan Enterprise API 토큰 |
HTTP_PROXY / HTTPS_PROXY / ALL_PROXY | 프록시 구성 |
NO_PROXY | 프록시 우회 규칙 |