Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

피드문의개인정보© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
wp2shell-scan — wp2shell (CVE-2026-63030) WordPress 침해 탐지 및 정리 — 대량 실행 가능, 기본적으로 읽기 전용 | Kitploit
도구/GitHubGitHub/instawp/wp2shell-scan
Defensive ToolsVulnerability ScannersScripting & AutomationWeb Application ExploitationForensicsWeb SecurityMalware AnalysisIncident Response
GitHubinstawp/wp2shell-scan

wp2shell-scan

wp2shell (CVE-2026-63030) WordPress 침해 탐지 및 정리 — 대량 실행 가능, 기본적으로 읽기 전용

저장소 보기
6473개월 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

wp2shell-scan

하나 또는 여러 WordPress 사이트에서 wp2shell (CVE‑2026‑63030) 침해를 탐지하고 정리합니다.

wp2shell은 WordPress 7.0.2 / 6.9.5 / 6.8.6 (2026‑07‑17)에서 수정된 인증 전 원격 코드 실행 취약점입니다. 하루 만에 공개 PoC가 등장했고 약 48시간 이내에 대규모 악용이 이어졌습니다. 패치는 구멍을 막아주지만, 패치 이전에 악용된 사이트는 이미 침해된 상태이며, 업데이트해도 공격자의 지속성(persistence)이 제거되지 않습니다.

이 도구는 그 지속성을 찾아 제거합니다. 의존성이 적은 단일 Bash 스크립트로, 기본적으로 읽기 전용으로 실행되며 한 번에 수천 개의 사이트를 스캔할 수 있습니다.

⚠️ 이 도구는 방어용입니다. 익스플로잇 코드는 포함되어 있지 않습니다. --clean을 실행하기 전에 사이트를 스냅샷하십시오.

탐지 대상

침해 이후 wp2shell 도구는 일반적으로 두 가지 지속성 아티팩트를 남기며, 이 도구는 둘 다 찾아냅니다:

  1. 악성 관리자 계정 — 여러 변형이 관찰되었습니다: user_login = wpsvc_<hex> / wp2_<hex> / w2s_<hex>, 또는 공격자 도메인의 이메일(@wp2shell.*, @shellcode.*, @wordpress-svc.internal, @wordpress-noreply.net, @x.lol)과 함께 administrator 역할을 가진 계정. (참고: @system.local은 일부 관리형 호스트에서 정상적인 자리표시자 관리자 이메일입니다 — 의도적으로 IOC로 취급하지 않습니다.)
  2. 플러그인으로 위장한 웹셸 — wp-content/plugins/<그럴듯한-이름>-<6hex>/<동일한-이름>.php: 위조된 Author: WordPress.org Community 헤더를 가진 작은(~1.3 KB) PHP 파일로, 토큰으로 보호되며 ?c=<command> 인터페이스를 노출합니다.

또한 일반적인 경우도 탐지합니다: wp-content/ 아래에서 $_GET['c']를 명령/eval 싱크로 전달하는 모든 작은 PHP 파일입니다.

설치

curl -fsSLO https://raw.githubusercontent.com/InstaWP/wp2shell-scan/main/wp2shell-scan.sh
chmod +x wp2shell-scan.sh

bash, find, grep 및 mysql/mariadb 클라이언트가 필요합니다. WP‑CLI는 존재할 경우 사용되지만(더 깔끔한 사용자 삭제) 필수는 아닙니다 — 웹셸 탐지에는 데이터베이스가 전혀 필요하지 않습니다.

사용법

# Scan ONE site (read-only)
./wp2shell-scan.sh --path /var/www/example.com

# Scan EVERY WordPress install under a base directory (bulk)
./wp2shell-scan.sh --base /var/www
./wp2shell-scan.sh --base /home            # shared hosting

# Auto-detect common layouts (/var/www/*, /home/*/public_html, ...)
./wp2shell-scan.sh

# Machine-readable
./wp2shell-scan.sh --base /var/www --json > report.json

# CLEAN — quarantine + remove backdoors, rotate wp-config salts (logs everyone out)
./wp2shell-scan.sh --base /var/www --clean --yes

# Vet a BACKUP / SNAPSHOT / TEMPLATE dump before restoring it (see warning below)
./wp2shell-scan.sh --sql /path/to/backup.sql

제거된 아티팩트는 격리 디렉터리로 이동되며(완전히 삭제되지 않음) 증거를 보존할 수 있습니다. 종료 코드는 감염이 발견되거나(scan) 정리되었을 때(clean) 1, 깨끗할 때 0이며, cron/CI에 유용합니다.

샘플 출력

[COMPROMISED] /var/www/example.com  — 2 backdoor admin(s), 2 webshell(s)
      admin: ID=41 wpsvc_2e1487df8abb <[email protected]> (2026-07-19 06:41:48)
      webshell: .../wp-content/plugins/security-headers-manager-8d1d21/security-headers-manager-8d1d21.php
[clean] /var/www/other-site.com
----------------------------------------------------------------
scanned=812  clean=811  compromised=1  cleaned=0

⚠️ 백업, 스냅샷, 템플릿을 잊지 마세요

운영 중인 사이트를 정리해도 백업은 정리되지 않습니다. 사이트가 침해된 상태에서 캡처된 백업, 스냅샷 또는 스테이징/블루프린트 템플릿에는 여전히 공격자의 관리자 계정이 포함되어 있습니다. 이를 복원하거나(또는 이를 기반으로 새 사이트를 프로비저닝하면) 즉시 재감염됩니다. 우리는 이를 뼈저리게 경험했습니다. 영향을 받은 모든 운영 사이트를 정리한 후에도 백도어가 포함된 새 사이트가 계속 나타났는데, 이는 오염된 템플릿 스냅샷에서 프로비저닝되고 있었기 때문입니다.

덤프를 복원하기 전에 검증하세요:

./wp2shell-scan.sh --sql /path/to/backup.sql
./wp2shell-scan.sh --sql backup1.sql --sql backup2.sql.gz   # repeatable, .gz supported

종료 코드는 덤프 중 하나라도 오염되었으면 1입니다. 그런 경우: 복원하지 마세요 — 먼저 라이브 사이트를 정리한 다음, 새로운 백업을 생성하고, 노출 기간 동안 생성된 스냅샷이나 템플릿은 삭제하거나 교체하세요.

정리 후

--clean은 관리자 계정과 웹셸을 제거하고 salts를 교체합니다. 그래도 다음을 반드시 수행해야 합니다:

  1. WordPress 코어를 업데이트하세요 — 7.0.2 / 6.9.5 / 6.8.6 (실제 수정 사항).
  2. 모든 관리자 비밀번호를 재설정하고 코어와 플러그인을 재설치/검증하세요 (wp core verify-checksums).
  3. 사이트가 읽을 수 있었던 모든 시크릿을 교체하세요 — DB 비밀번호, API 키, SMTP 자격 증명 — 유출되었다고 가정하세요.
  4. 셸이 실행한 내용을 검토하세요 — 액세스 로그에 ?c= 명령 값이 기록되어 있습니다.
  5. 모든 사이트가 패치될 때까지 엣지/오리진에서 배치 경로를 차단하세요 (/wp-json/batch/v1, ?rest_route=/batch/v1, %2f 인코딩 포함). CDN이 REST 경로를 통과시킬 수 있다면 오리진에 차단을 설정하세요.

수동으로 확인 (도구 없이)

악성 관리자 계정:

SELECT u.ID,u.user_login,u.user_email,u.user_registered
FROM wp_users u JOIN wp_usermeta m ON u.ID=m.user_id
WHERE m.meta_key='wp_capabilities' AND m.meta_value LIKE '%administrator%'
ORDER BY u.user_registered DESC;

웹셸 플러그인:

find wp-content/plugins -maxdepth 1 -type d -regextype posix-extended -regex '.*-[0-9a-f]{6}$'
grep -rl "\$_GET\['c'\]" wp-content/plugins/

AI 에이전트를 선호하시나요?

단일 사이트에서 동일한 탐지 및 정리를 Claude Code(또는 유능한 코딩 에이전트)로 수행하도록 안내하는, 바로 붙여넣을 수 있는 프롬프트는 CLEANUP-WITH-CLAUDE.md를 참조하세요. 각 파괴적 단계 전에는 사람의 확인을 거칩니다.

라이선스

MIT — LICENSE를 참조하세요. 있는 그대로 제공되며 보증은 없습니다. InstaWP 팀이 실제 인시던트 대응 중에 구축하고 실전 검증했습니다.

도구 다운로드