<?php 독립적인 PHP 보안 점검
사용 중인 PHP가 PHP2Shell의 영향을 받습니까?
PHP 자체에 있는 두 가지 심각한 취약점으로 인해 원격 코드 실행이 가능합니다. 이 취약점은 2026년 10월 21일에 수정되었습니다. 웹사이트가 PHP 버전에 대해 무엇을 드러내는지 확인하거나 버전 문자열을 붙여 넣으십시오. 정확히 무엇을 해야 하는지 안내해 드립니다.
- 수동 방식: 일반 요청 1회, 공격 없음
- 무료, 가입 불필요, 광고 없음
- php.net 및 공식 권고 기반
2버전 검사
브라우저에서 판정되며 저희에게는 아무것도 전송되지 않습니다. 한 줄에 버전 하나, 최대 20개까지 가능합니다.
01 · php.net · 2026-10-23
수정된 버전
| 브랜치 | 수정 버전 | 브랜치 상태 |
|---|---|---|
| PHP 8.5 | 8.5.12 | 정식 지원 중 |
| PHP 8.4 | 8.4.27 | 정식 지원 중 |
| PHP 8.3 | 8.3.36 | 보안 수정만 제공 |
| PHP 8.2 | 8.2.35 | 보안 수정만 제공 — 2026년 12월 31일 지원 종료 |
| PHP 8.1 · 8.0 · 7.x · 5.x | 공식 릴리스 없음 | 지원 종료 — PHP 프로젝트의 릴리스 없음 |
출처: php.net 보안 권고, 2026년 10월 21일. 최종 확인일 2026-10-23.
PHP2Shell이란 무엇입니까?
PHP2Shell은 연구자들이 PHP 엔진의 두 가지 취약점에 붙인 이름입니다. CVE-2026-109618(요청을 파싱하는 중 PHP의 메모리가 부족해질 때 발생하는 메모리 손상)과 CVE-2026-109619(같은 워커에서 한 요청의 내부 상태가 다음 요청까지 남는 문제)입니다. 두 취약점 모두 CVSS v4.0 기준 9.2로 평가되었습니다.
인증되지 않은 공격자가 서버에서 코드를 실행하거나, 코드를 전혀 실행하지 않고도 다른 요청에 속한 비밀번호, 세션 토큰, API 키, 인증서를 포함한 PHP 프로세스 메모리를 읽을 수 있습니다. php.net에 따르면 웹 요청을 처리하는 PHP, 즉 PHP-FPM, mod_php를 사용하는 Apache, php-cgi, FrankenPHP, LiteSpeed가 영향을 받습니다. 연구자들은 WordPress, Drupal, Joomla에 대한 공격을 시연했지만 특정 애플리케이션이 필요한 것은 아닙니다. 영향받는 PHP에서는 간단한 "Hello World" 페이지조차 노출됩니다.
지금 해야 할 일
- 8.5.12, 8.4.27, 8.3.36 또는 8.2.35로, 또는 배포판의 패치된 패키지로 업데이트하십시오.
- PHP-FPM, Apache, 큐 워커, 컨테이너 등 모든 PHP 프로세스를 재시작하십시오. 재시작하기 전까지는 업데이트가 적용되지 않습니다.
- 서버의 모든 PHP를 확인하십시오. 컨트롤 패널은 여러 버전을 나란히 설치하는 경우가 많습니다.
02 · shell
서버에서 직접 확인
웹사이트 검사로는 서버가 공개하기로 한 정보만 볼 수 있습니다. 서버에서 다음 명령을 실행하면 정확한 답을 얻을 수 있습니다.
# 기본 PHP의 버전
php -v
# 패널이나 패키지로 설치된 다른 PHP 버전
ls -d /usr/bin/php* /usr/sbin/php-fpm* /opt/alt/php*/usr/bin/php /opt/cpanel/ea-php*/root/usr/bin/php /opt/plesk/php/*/bin/php 2>/dev/null
# 부분 완화 조치와 관련된 설정
php -i | grep -E 'session.upload_progress.enabled|post_max_size|memory_limit|fatal_error_backtraces'
# 사이트가 방문자에게 드러내는 정보
curl -sI https://your-site.com/ | grep -i -E '^(x-powered-by|server):'
03 · FAQ
자주 묻는 질문
어떤 PHP 버전이 영향을 받습니까?
지원되는 브랜치에서 8.5.12, 8.4.27, 8.3.36 및 8.2.35 이전의 모든 버전입니다. PHP 8.1 이하는 지원이 종료되어 PHP 프로젝트의 릴리스가 없습니다. 공급업체가 백포트된 수정을 확인해 주지 않는 한 영향을 받는 것으로 간주하십시오.
사이트에 PHP 버전이 표시되지 않습니다. 안전합니까?
반드시 그렇지는 않습니다. 버전을 숨기는 것(expose_php = Off)은 좋은 관행이지만 아무것도 패치하지 않습니다. 서버에서 php -v로 확인하거나 호스팅 업체에 문의하십시오.
검사기에는 오래된 버전이 표시되지만 호스팅 업체는 패치되었다고 합니다. 누가 맞습니까?
둘 다 맞을 수 있습니다. Debian, Ubuntu, RHEL 같은 Linux 배포판은 버전 번호를 바꾸지 않고 보안 수정을 백포트하는 경우가 많습니다. 어떤 패키지 빌드가 설치되어 있는지, 그 변경 기록에 CVE-2026-109618 및 CVE-2026-109619가 언급되어 있는지 호스팅 업체에 문의하십시오.
WordPress, Laravel 또는 사용 중인 CMS가 영향을 받습니까?
취약점이 PHP 자체에 있으므로 영향받는 PHP에서 실행되는 모든 애플리케이션이 노출됩니다. 연구자들은 WordPress, Drupal, Joomla에 대한 인증 없는 공격을 시연했지만 이는 예시일 뿐이며, 간단한 "Hello World" 페이지만으로도 충분합니다. WordPress나 플러그인만 업데이트해서는 해결되지 않으며, PHP를 업데이트해야 합니다.
코드가 실행되지 않아도 데이터가 유출될 수 있습니까?
예. CVE-2026-109619는 공격자가 코드를 실행하지 않고도 PHP 프로세스 메모리, 즉 다른 요청의 비밀번호, 세션 토큰, API 키, 인증서를 노출할 수 있습니다. 이러한 유출은 파일을 남기지 않아 탐지하기 어려우므로, 영향받는 버전으로 인터넷에서 운영된 사이트의 비밀 정보는 변경하십시오.