
Plex2Shell 및 php2shell에 대한 방어적 노출 감사 도구 — 공격자가 찾기 전에 먼저 자신의 취약점을 찾으세요.
____ _ _ _____ _ _ ____ ____ _____ ______
/ ___|| | | | ____| | | | / ___| / ___|| _ \| ____|
\___ \| |_| | _| | | | | \___ \| | | |_) | |__
___) | _ | |___| |___ | |___ ___) | |___ | _ <| __|
|____/|_| |_|_____|_____|_____||____/ \____||_| \_\_____|
2shell 노출 감사기 — 공격자가 찾기 전에 스스로 찾으세요.
shellscope는 승인된 네트워크에서 2026년 CVE 클러스터 두 개를 점검합니다:
session.upload_progress)버전 배너와 HTTP 헤더를 읽습니다. 익스플로잇, 인증, 업로드, 메모리 버그 트리거는 하지 않습니다.
pipx install shellscope
# or
python -m pip install shellscope
기타 기능
git clone https://github.com/kitploit/tool.git
cd tool
pip install -r requirements.txt
pip install tool
docker pull kitploit/tool:latest
docker run -it kitploit/tool:latest
python tool.py -u https://example.com
python tool.py -u https://example.com -p 8080 --threads 10 --timeout 30
# config.yaml
target: https://example.com
threads: 10
timeout: 30
proxy:
enabled: true
url: http://proxy.example.com:8080
| 옵션 | 설명 | 기본값 |
|---|---|---|
-u, --url | 대상 URL | 필수 |
-p, --port | 대상 포트 | 80 |
-t, --threads | 스레드 수 | 5 |
--timeout | 타임아웃(초) | 30 |
--proxy | 프록시 URL | 없음 |
-v, --verbose | 상세 출력 | false |
-o, --output | 출력 파일 | 없음 |
python tool.py -u https://example.com
python tool.py -u https://example.com --proxy http://127.0.0.1:8080
python tool.py -u https://example.com -o results.txt
from tool import Scanner
scanner = Scanner(
target="https://example.com",
threads=10,
timeout=30
)
results = scanner.scan()
print(results)
export TOOL_TARGET=https://example.com
export TOOL_THREADS=10
export TOOL_TIMEOUT=30
# config.yaml
target: https://example.com
threads: 10
timeout: 30
proxy:
enabled: true
url: http://proxy.example.com:8080
auth:
type: basic
username: user
password: pass
연결 시간 초과
# 타임아웃 증가
python tool.py -u https://example.com --timeout 60
프록시 연결 실패
# 프록시 설정 확인
curl -x http://proxy.example.com:8080 https://example.com
권한 거부
# 권한 확인
ls -la tool.py
chmod +x tool.py
python tool.py -u https://example.com -v
git checkout -b feature/amazing-feature)git commit -m 'Add amazing feature')git push origin feature/amazing-feature)이 프로젝트는 MIT 라이선스에 따라 라이선스가 부여됩니다. 자세한 내용은 LICENSE 파일을 참조하세요.
이 도구는 교육 및 테스트 목적으로만 제공됩니다. 이 도구의 사용은 전적으로 사용자의 책임입니다. 허가 없이 시스템을 스캔하거나 테스트하는 것은 불법일 수 있습니다. 항상 적절한 허가를 받았는지 확인하세요.
python -m pip install -e ".[dev]"
# prove the install works, no network traffic
shellscope --self-test
# see what would be scanned
shellscope --cidr 192.168.1.0/24 --dry-run
# audit your network
shellscope --cidr 10.0.0.0/24 --authorized
# inventory CSV: host,port,owner,environment
shellscope --inventory-csv assets.csv --authorized --html report.html
# CI gate
shellscope --inventory-csv assets.csv --authorized --fail-on high --quiet
--authorized는 실제 스캔에 필요합니다. 이는 해당 네트워크를 소유하고 있거나 테스트에 대한 서면 허가를 받았음을 진술하는 것입니다.
| CVE 세트 | 프로브 | 판정 |
|---|---|---|
| Plex2Shell | GET /identity → version | < 1.43.3.10861 → CRITICAL |
| php2shell | GET / → Server, X-Powered-By, PHPSESSID | Apache + PHP가 수정 버전 미만 → HIGH |
| php2shell | 동일 | nginx/LiteSpeed + 수정 버전 미만 → MEDIUM |
| php2shell | 동일 | Apache + 버전 숨김 → MEDIUM (확인 필요) |
| — | 열린 포트, 핑거프린트 없음 | INFO |
PHP 수정 버전 (공식 권고 전까지는 유출 기반): 8.2.35 / 8.3.36 / 8.4.27 / 8.5.12.
HIGH/MEDIUM 구분은 의도된 것입니다. 잔존하는 php2shell 버그는 일반적인 PHP RCE가 아니라 Apache prefork + mod_php에 한해서만 보고됩니다.
--out audit.csv — 발견 항목당 한 행 (기본값 shellscope-results.csv)--json audit.json — 메타데이터 + 발견 항목--html audit.html — 필터와 정렬 기능이 포함된 다크 테마의 자체 포함 보고서$ shellscope --cidr 127.0.0.1/32 --ports 32400,8888 --force-checks --authorized
[scope] 1 assets / 2 checks
CRITICAL 127.0.0.1:32400 Plex Media Server 1.43.2.10664 Vulnerable to Plex2Shell
HIGH 127.0.0.1:8888 PHP 8.2.34 PHP 8.2.34 < 8.2.35 on Apache
SUMMARY
CRITICAL 1 #
HIGH 1 #
TOTAL 2
--authorized가 필수입니다.--allow-public이 필요합니다.--max-hosts, --workers, --delay가 스캔 범위를 제한합니다.소유한 네트워크 또는 서면으로 테스트 허가를 받은 네트워크에서만 사용하십시오. 버그 바운티 범위는 인터넷을 스캔할 수 있는 라이선스가 아니며, 해당 프로그램의 규칙에 따라 나열된 자산에 대해서만 권한을 부여합니다.
Server 헤더는 PHP 빌드가 아니라 Cloudflare를 나타낼 수 있습니다.X-Powered-By는 종종 비활성화되어 있습니다. 헤더가 없다고 해서 패치되었다는 증거는 아닙니다.| 코드 | 의미 |
|---|---|
| 0 | 스캔 완료, --fail-on 이상의 발견 사항 없음 |
| 1 | --fail-on 이상의 발견 사항 존재 |
| 2 | 사용법 또는 권한 가드 |
python -m pip install -e ".[dev]"
python -m pytest
python -m ruff check src tests
python -m shellscope --self-test
MIT. 승인된 사용만 허용됩니다.