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

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

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

피드문의개인정보© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
plex2scan — Plex2Shell(CVE-2026-96652 및 3건 추가)의 영향을 받는 Plex Media Server 찾기 | Kitploit
도구/GitHubGitHub/akaihigurashi/plex2scan
Defensive ToolsReconnaissanceVulnerability ScannersNetwork MappingPort ScanningDNS & Subdomain EnumerationInformation GatheringWeb Security
GitHubakaihigurashi/plex2scan

plex2scan

Plex2Shell(CVE-2026-96652 및 3건 추가)의 영향을 받는 Plex Media Server 찾기

저장소 보기
508일 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
웹사이트

plex2scan

Plex2Shell의 영향을 받는 Plex Media Server를 찾습니다. Plex2Shell은 네 가지 취약점(CVE-2026-96652, CVE-2026-96654, CVE-2026-96655, CVE-2026-96656)의 연쇄로, 공격자가 로그인 없이 1.43.3.10861보다 오래된 Plex Media Server를 탈취할 수 있게 합니다. shouldipanic.ch의 일부입니다.

Plex2Shell은 2026년 10월 17일부터 악용되어 왔으며(크립토마이너, 프록시), CISA의 알려진 악용 취약점 목록에 올라 있습니다. 인터넷에서 접근 가능한 1.43.3.10861보다 오래된 모든 Plex Media Server가 위험에 처해 있습니다.

plex2scan은 두 가지 형태로 제공됩니다:

  • plex2scan.py: 자체 서버를 점검하기 위한 의존성 없는 단일 Python 파일입니다. IP 범위, Plex의 포트 32400을 포함한 포트 스캔, vhost 탐색 및 Plex 버전 확인을 수행합니다.
  • 웹 페이지(Docker 이미지)로, 누구나 남용 방지 기능과 함께 하나의 서버를 점검할 수 있습니다. plex2scan.shouldipanic.ch에서 실행됩니다.

포트 32400의 Plex Media Server 1.42.2에 대한 결과

버전을 찾는 방법

모든 Plex Media Server는 로그인 없이 GET /identity에 응답하며 그곳에서 버전을 알려줍니다. plex2scan은 시작 페이지를 로드하여(X-Plex-Protocol 헤더 또는 Plex Web 페이지로 Plex를 인식) /identity를 한 번 요청합니다. 그 외에는 아무것도 전송하지 않습니다: 로그인도, 익스플로잇도 없습니다.

명령줄

curl -LO https://github.com/akaihigurashi/plex2scan/releases/latest/download/plex2scan.py
python3 plex2scan.py 203.0.113.0/24

Python 3.8 이상, 설치할 필요 없음. 예시:

python3 plex2scan.py 203.0.113.10                     # 21 ports incl. 32400 + every vhost on the IP
python3 plex2scan.py 203.0.113.10:32400               # only Plex's own port
python3 plex2scan.py plex.example.ch                  # a Plex behind a reverse proxy
python3 plex2scan.py 203.0.113.0/24 --names domains.txt    # + hostnames from your own data
python3 plex2scan.py 203.0.113.10 -p all -o out.csv   # all 65535 ports, CSV output
python3 plex2scan.py -h                               # all options
상태의미
VULNERABLE1.43.3.10861보다 오래된 Plex Media Server
POSSIBLY VULNERABLEPlex Media Server가 발견되었으나 버전이 숨겨짐
PATCHEDPlex Media Server 1.43.3.10861 이상
NOT DETECTEDPlex Media Server가 보이지 않음

결과는 심각한 순서대로 나열되며 짧은 사유가 함께 표시됩니다. 숨겨진 결과(닫힌 포트, 오류, 기본 사이트만 보여주는 vhost)는 -a로, 증거는 -v로 표시됩니다.

옵션기능
-p LIST포트: web(일반 포트 20개 + 32400, 기본값), all, 또는 80,443,32400
-n포트 스캔 없이 443과 80만 사용
--names FILE직접 만든 호스트명 목록을 vhost로 검사
--no-vhosts같은 IP의 다른 웹사이트를 찾지 않음
-a / -v숨겨진 결과 표시 / 증거 표시
-o FILE모든 결과를 CSV로도 기록
-d디버그: 모든 요청, 헤더, 매치
-q배너 없음 (스크립트용)
-V버전 출력
-h모든 옵션

서버가 취약한 경우

  1. Plex Media Server를 1.43.3.10861 이상으로 업데이트하세요. Windows 32비트는 수정판이 없습니다(마지막 릴리스 1.42.2.10156): 64비트로 옮기세요.
  2. 외부에서 시청하는 사람이 없다면 Remote Access를 끄고 32400 포트 포워딩을 제거하세요 (UPnP도 확인하세요).
  3. 공격 흔적을 확인하세요: myawesomeproxy, mylovelyminer, x12345 같은 낯선 프로세스, Plex의 Codecs 폴더에 있는 알 수 없는 .so/.dll 파일, proxystream.st로의 연결, 아무것도 재생하지 않는데 높은 CPU 부하. 업데이트만으로는 이미 침입한 공격자를 제거하지 못합니다.

더 많은 수동 DNS 소스를 위한 API 키

AlienVault OTX와 HackerTarget은 키 없이 작동합니다. VirusTotal, Shodan, SecurityTrails는 API 키가 필요하며, 환경 변수에서 읽습니다:

변수소스
PANIC_VT_KEYVirusTotal 수동 DNS
PANIC_SHODAN_KEYShodan 호스트명
PANIC_SECURITYTRAILS_KEYSecurityTrails 역방향 IP

본인만 읽을 수 있는 .env 파일에 보관하고, 스캔할 때만 로드하세요:

( set -a; . ./.env; set +a; python3 plex2scan.py 203.0.113.10 )

--vt-key, --shodan-key, --securitytrails-key도 작동하지만, 명령줄 인수는 다른 로컬 사용자에게(ps를 통해) 보이고 셸 기록에 남습니다. 키 값은 오류 메시지에서 마스킹됩니다. (이 점을 알려준 Jonas Hüsser에게 감사드립니다.)

Docker를 사용한 웹 페이지

docker run -d --name plex2scan --restart unless-stopped \
  -p 127.0.0.1:8091:8091 \
  -e PANIC_ORIGIN=https://plex2scan.example.ch \
  -v plex2scan-data:/data \
  ghcr.io/akaihigurashi/plex2scan:latest

또는 Compose로: docker-compose.yml을 다운로드하고 PANIC_ORIGIN을 설정한 다음 docker compose up -d를 실행하세요. 컨테이너는 localhost에서만 수신하므로, 앞단에 TLS를 적용한 리버스 프록시를 두세요 (nginx 예시).

변수기본값용도
PANIC_ORIGIN–공개 주소. 다른 오리진에서의 요청은 거부됩니다. 반드시 설정하세요.
PANIC_OPERATOR / PANIC_CONTACT–페이지 하단의 선택적 연락처 섹션
PANIC_IMPRINT_URL–기존 임프린트로의 선택적 링크
PANIC_TRUSTED_PROXY127.0.0.1,::1X-Real-IP 헤더가 신뢰되는 프록시
PANIC_DENY_HOSTS / PANIC_DENY_IPS–절대 검사하지 않을 도메인 / 주소
PANIC_AUDIT_DIR/data/audit일별 감사 로그 파일
PANIC_RETENTION_DAYS30이 기간보다 오래된 감사 파일은 삭제됩니다

이 페이지는 php2scan과 동일한 보호 기능을 갖추고 있습니다: 동의 체크박스, 감사 로그, VPN/Tor/데이터센터 클라이언트 거부, 속도 제한, 결과 캐시, 연결이 검사 대상 주소에 고정된 공개 호스트명만 허용, 절대 검사하지 않는 웹사이트(잘 알려진 서비스, 가장 많이 방문한 100개 사이트, 정부 사이트, 제재 대상 국가), 그리고 제재 대상 국가로부터의 접근 차단. 웹사이트 자체(443, 그다음 80) 외에도 페이지는 포트 32400만 확인하며, 그것도 열려 있는 경우에만 확인합니다.

구축 방식

스캐너 엔진(가져오기, 핑거프린팅, 포트 스캔, vhost 탐색, 웹 서버)은 panic-core에 있습니다. Plex2Shell에 특화된 모든 것은 check.py에 있습니다. plex2scan.py와 web.py는 둘 모두로부터 생성됩니다:

git clone https://github.com/akaihigurashi/panic-core ../panic-core
python3 ../panic-core/bundle.py check.py

라이선스

GPL-3.0, LICENSE 참조. 폰트: Inter 및 JetBrains Mono (SIL Open Font License). Plex, Inc.와 제휴하거나 이들의 보증을 받지 않았으며, "Plex"는 이들의 상표입니다.

도구 다운로드