공개 사이트를 확인하고 로컬 설정과 로그를 검토하거나 공개 대응 도구를 찾으세요. 각 결과는 근거와 한계를 설명합니다.
01 / URL
내 사이트 확인
본인의 공개 사이트를 입력하세요. 한 페이지와 최대 두 번의 이동에서 PHP 헤더와 플랫폼 단서를 찾습니다. 취약점 악용은 시도하지 않습니다.
PHP / ?
PHP 버전을 모르시나요?
WordPress: 도구 > 사이트 건강 > 정보 > 서버. 패널에서는 기본값 대신 해당 도메인과 PHP 처리기를 선택하세요. SSH의 php -v를 실제 FPM/Apache나 컨테이너와 비교하세요. 사이트, CLI와 복제본은 다를 수 있습니다. phpinfo 페이지를 공개하지 마세요.
02 / LOG
의심스러운 로그 신호 검토
발췌문이나 텍스트 파일을 선택하세요. 메모리 오류, 프로세스 충돌, HTTP 오류와 비정상 PHPSESSID의 횟수와 줄 번호를 표시합니다. 일치가 침입을 증명하지 않으며, 일치가 없어도 배제하지 못합니다.
공격 시도인가, 침입 성공인가? →03 / PHP INI
PHP 설정 검토
php.ini 또는 FPM 풀 설정을 붙여 넣으세요. 텍스트만 분석하므로 상속, 요청별 변경과 실제 적용 여부는 알 수 없습니다. 패치를 대체하지 않습니다.
메모리와 재활용의 한계 →GitHub 대응 도구 목록
OpenAI PHP 검사기
Apache-2.0. 로컬 또는 공개 헤더의 버전 목록을 만드는 Node.js 도구로 JSON을 지원합니다. 승인된 자산에서 README를 읽고 사용하세요. 숨긴 헤더, 백포트와 CLI/Web 차이가 한계이며 악용 불가 증명이 아닙니다.
openai/php2shell-checker ↗Corelight Zeek / Suricata
BSD-3-Clause. 방어 규칙이며 Zeek 7+는 요청/세션 상관과 별도 버전 목록을 제공합니다. Zeek 설치는 Suricata를 로드하지 않습니다. 설정, TLS 가시성과 오탐을 확인하고 notice_body_sample_bytes=0으로 민감 본문 샘플을 끄세요.
corelight/php2shell-detect ↗NCSC-NL 대응 정보
EUPL-1.2. 책임자와 공급업체 패치를 추적하는 대응 자료와 소프트웨어 목록입니다. 자동 일괄 스캐너가 아니며 목록은 불완전할 수 있습니다. 자체 패키지/배포 증거를 보존하세요.
NCSC-NL/php2shell ↗Trivy 이미지와 SBOM
Apache-2.0. 내장 PHP와 재빌드를 확인하는 일반 이미지/패키지 목록 및 취약점 도구입니다. DB, 식별과 공급업체 데이터에 의존하며 깨끗한 보고서는 두 PHP2Shell 패치를 증명하지 못합니다.
aquasecurity/trivy ↗Composer audit
MIT. Composer 앱 의존성 공지를 확인합니다. PHP 인터프리터는 Composer 라이브러리가 아닙니다. 정상 audit는 PHP 업데이트, 호스트 조사나 침입 배제가 아닙니다.
composer/composer ↗Syhunt Apache 예제
MIT. 커뮤니티 요청 제한과 multipart 차단 예제입니다. 부분 경로만 다루고 업로드를 망칠 수 있으므로 시험하세요. Apache php_value를 CGI/FastCGI에 그대로 쓸 수 없습니다. 검토된 임시 조치로만 쓰세요.
syhunt/php2shell-protection ↗무료 스캐너가 침입을 입증하나요?
확정할 수 없습니다. 헤더와 패턴은 전체 런타임, 잃은 이력과 메모리 유출을 보지 못합니다. 목록 작성, 증거 보존, 로그 연결부터 시작하세요. 무단 계정, 프로세스나 설명 안 되는 유출이 있으면 격리하고 호스팅/대응팀에 연락하세요.
호스팅 업체에 증거 요청
제 도메인의 Web PHP에 CVE-2026-109618 및 CVE-2026-109619 두 수정이 모두 적용됐는지 확인해 주세요. 전체 패키지/빌드 버전, 공급업체 공지나 변경 기록, 모든 FPM/Apache 작업자, 복제본 및 상주 프로세스의 교체/재시작 확인이 필요합니다. 보관된 접근, PHP와 프로세스 로그도 검토할 수 있나요?일차 출처 및 추가 자료
PHP security team원문 읽기 ↗CVE-2026-109618원문 읽기 ↗CVE-2026-109619원문 읽기 ↗연구 해설과 실용 가이드
PHP2Shell 도구
공개 사이트를 확인하고 로컬 설정과 로그를 검토하거나 공개 대응 도구를 찾으세요. 각 결과는 근거와 한계를 설명합니다.
01PHP2Shell 쉽게 이해하기
PHP는 WordPress, Laravel과 플러그인을 실행하는 엔진입니다. 플러그인 업데이트는 PHP를 업데이트하지 않습니다. 두 메모리 결함은 비정상 요청 정리를 정보 유출이나 코드 실행으로 바꿀 수 있습니다. 공개 확인은 단서만 제공하며 실제 Web 런타임과 패치는 관리자가 확인해야 합니다.
02공격 시도인가, 침입 성공인가?
이상 multipart나 WAF 경고는 시도일 수 있습니다. OOM, SIGSEGV/SIGABRT와 HTTP 500 급증에는 정상 장애 원인도 있습니다. 예기치 않은 PHP 자식 프로세스, 외부 연결, 파일 변경과 계정은 조사해야 합니다. 메모리 유출은 웹셸이나 파일을 남기지 않을 수 있어 깨끗한 파일 검사로 배제할 수 없습니다.
03변경 전 증거 보존
발견 시간, 도메인, 인스턴스, 런타임, 증상과 마지막 신뢰 상태를 기록하세요. 원본 로그와 시간대, 클라우드 감사, 승인된 스냅샷을 보존하고 접근을 제한해 해시를 남기세요. 쿠키, 토큰과 고객 데이터를 공개 스캐너에 보내지 마세요. 보존 전 로그나 의심 파일을 삭제하지 마세요.
04Wiz와 Calif 정확히 읽기
연구는 요청을 넘어 남는 오류를 설명합니다. CVE-2026-109618은 mod_php RCE를 실증했고 FPM은 소스 분석상 영향으로, 이 CVE의 완전한 FPM 공격 실증은 없습니다. CVE-2026-109619는 앱 의존 FPM upload-progress 경로를 별도로 확인합니다. SAPI별 근거는 각 GHSA에서 확인하세요.
05Cloudflare: 응답도 중요함
Cloudflare는 요청과 원본 응답을 결합해 유출 전 의심 응답을 차단하는 방법을 설명합니다. 셸이 없어도 의미가 있습니다. 과거 배포 시간이 내 계정 보호를 보장하지 않으므로 규칙, 경로, 예외와 이벤트를 확인하세요. 직접 원본과 프록시 밖 호스트도 패치해야 합니다.