보안 공지
PHP2Shell: 서버에서 원격 코드 실행이 가능한 PHP 심각 취약점 2건
2026년 10월 21일 PHP 프로젝트는 심각 취약점 2건을 해결한 긴급 보안 업데이트를 발표했습니다. 공격자는 인터넷을 통해 인증 없이 PHP 웹 서버에서 코드를 실행할 수 있습니다. 이미 공격 시도가 보고되었습니다. PHP를 운영하는 모든 조직은 오늘 중으로 사용 중인 버전을 확인하십시오.
게시일 · 최종 수정일
- 심각도
- 심각(CVSS 9.2)
- CVE 번호
- CVE-2026-109618, CVE-2026-109619
- 보안 업데이트 버전
- PHP 8.5.12, 8.4.27, 8.3.36, 8.2.35
- 현황
- 보안 업데이트가 공개되었습니다. 공격 시도가 보고되었습니다.
웹사이트 즉시 점검
웹사이트 주소를 입력하십시오. 서버가 모든 방문자에게 표시하는 PHP 버전을 읽어 보안 업데이트 버전과 비교합니다.
누구나 볼 수 있는 응답 헤더만 확인합니다. 취약점을 직접 시험하거나 공격 트래픽을 보내지 않습니다. 입력하신 주소는 저장하지 않습니다.
영향받는 PHP 버전
아래 보안 업데이트 버전 이전의 모든 PHP 버전이 영향을 받습니다. 이 취약점은 PHP 5.4부터 존재합니다.
| PHP 버전 | 영향받는 버전 | 보안 업데이트 버전 | 보안 지원 종료일 |
|---|---|---|---|
| 8.5 | 8.5.12 미만 | 8.5.12 | 2029년 12월 31일 |
| 8.4 | 8.4.27 미만 | 8.4.27 | 2028년 12월 31일 |
| 8.3 | 8.3.36 미만 | 8.3.36 | 2027년 12월 31일 |
| 8.2 | 8.2.35 미만 | 8.2.35 | 2026년 12월 31일 |
| 8.1 이하 | 전체 버전 | 패치 없음 | 종료 |
PHP 8.2는 2026년 12월 31일에 보안 지원이 종료됩니다. 지금 8.2 서버를 업데이트한다면 8.4 또는 8.5로 업그레이드하는 계획도 함께 세우십시오.
서버 구성별 위험도
위험도는 서버에서 PHP를 실행하는 방식에 따라 다릅니다.
- mod_php를 사용하는 Apache
- 가장 위험코드 실행 공격이 확인되었습니다. 공격은 웹 애플리케이션 코드가 실행되기 전 단계에서 이루어집니다.
- PHP-FPM(nginx, FPM을 사용하는 Apache)
- 위험보안 권고는 일부 조건에서 공격이 가능하다고 평가합니다. 영향받는 것으로 간주하십시오.
- LiteSpeed(LSAPI)
- 위험 가능성 높음확인되지는 않았지만 영향받을 가능성이 높습니다. 영향받는 것으로 간주하십시오.
- FrankenPHP
- 위험 가능성 있음두 취약점 중 하나의 영향을 받을 가능성이 높습니다. 안전을 위해 업데이트하십시오.
서버 점검 방법
각 서버에서 아래 명령을 실행하거나, 호스팅 업체에 확인을 요청하십시오.
1. PHP 버전 확인
php -v2. 웹 서버의 PHP 실행 방식 확인
php -i | grep "Server API"3. 명령줄뿐 아니라 웹 서버의 PHP 버전도 확인(아래 코드를 넣은 페이지를 만들어 한 번 열어 본 후 삭제하십시오)
<?php echo PHP_VERSION; ?>
명령줄(CLI)의 PHP와 웹 서버의 PHP는 버전이 다를 수 있습니다. 반드시 둘 다 확인하십시오.
조치 방법
- PHP를 8.5.12, 8.4.27, 8.3.36, 8.2.35 또는 그 이후 버전으로 업데이트하십시오.
- Apache, PHP-FPM, LiteSpeed, 모든 컨테이너를 포함해 모든 PHP 프로세스를 재시작하십시오. 재시작하지 않은 서버는 계속 이전 코드로 실행됩니다.
- 공유 호스팅이나 cPanel 환경에서는 MultiPHP Manager에서 보안 업데이트 버전을 선택하거나, 호스팅 업체에 업데이트 적용 여부를 확인하십시오.
- Docker 환경에서는 업데이트된 php 기본 이미지로 이미지를 다시 빌드한 후 재배포하십시오.
- PHP 8.1 이하를 사용 중이라면 PHP 8.4 또는 8.5로 업그레이드하십시오. 기술 지원이 종료된 버전에는 패치가 제공되지 않습니다.
즉시 업데이트할 수 없는 경우
아래 설정은 업데이트 전까지 위험을 줄이는 임시 조치입니다. 취약점을 완전히 해결하지는 않습니다.
업로드 진행 상황 추적 비활성화
session.upload_progress.enabled = 0시연된 공격 경로를 차단합니다. PHP 프로젝트는 이 기능이 필요하지 않다면 업데이트 후에도 비활성화 상태로 유지할 것을 권고합니다.
PHP 8.5 한정: 치명적 오류 백트레이스 비활성화
fatal_error_backtraces = 0취약점을 유발하는 것으로 확인된 경로 하나를 제거합니다.
웹 서버 앞단에서 대용량·비정상 업로드 차단
post_max_size, max_input_nesting_level요청 크기 제한을 낮게 유지하십시오. 파일 업로드를 받지 않는 사이트라면 프록시나 방화벽에서 multipart 요청을 차단하십시오.
설정을 변경한 후에는 모든 PHP 워커를 재시작하십시오.
참고 자료
도움이 필요한 경우
서버가 안전한지 확실하지 않다면 질문을 보내 주십시오. 영업일 기준 2일 이내에 이해하기 쉬운 말로 답변드립니다.
보안 질문하기