긴급 보안 공지 · 2026-10-21 공개

PHP 로 만든 홈페이지라면
지금 PHP 버전을 확인하세요

PHP2Shell(CVE-2026-109618 · CVE-2026-109619)는 PHP 엔진 자체의 결함으로, 로그인 없이 인터넷에서 서버 명령을 실행할 수 있습니다. 그누보드 · 워드프레스 같은 프로그램 패치로는 막히지 않고 서버의 PHP 를 바꿔야 합니다.

위험도
CVSS 4.0 9.2
두 취약점 모두
공격 조건
로그인 불필요
인터넷에서 바로 요청
공격 현황
실제 공격 관측
공개 전부터 시도됨
수정 버전
8.5.12 · 8.4.27 · 8.3.36 · 8.2.35
이 버전 이상

호스팅 관리 화면, phpinfo 의 PHP Version, 또는 서버에서 php -v 결과를 그대로 붙여 넣으세요.

입력하면 바로 판정합니다. 입력한 값은 상담을 신청하기 전까지 어디에도 보내지 않습니다.

무엇이 문제인가

버전에 따라 할 일이 다릅니다

영향 범위는 PHP 5.4 부터입니다. 웹 요청을 처리하는 모든 실행 방식(PHP-FPM · Apache mod_php · php-cgi · LiteSpeed 등)이 대상이며, PHP 측은 앱 코드가 실행되기 전에 공격이 들어오는 Apache mod_php 구성을 가장 위험하다고 봤습니다.

PHP 계열상태할 일
8.2 · 8.3 · 8.4 · 8.5수정 버전 있음같은 계열의 수정 버전(8.2.35 · 8.3.36 · 8.4.27 · 8.5.12) 이상으로 올립니다. 사이트 코드 수정은 거의 필요 없습니다.
7.4 · 8.0 · 8.1공식 수정 릴리스 없음PHP 보안팀이 최소한의 소스 백포트만 냈습니다. 직접 빌드하지 않는 한 8.4.27 같은 지원 계열로 옮겨야 합니다.
5.4 ~ 7.3수정 없음 (지원 종료)PHP 8 으로 전환해야 합니다. 오래된 스킨 · 플러그인은 호환 수정이 함께 필요할 수 있습니다.
5.3 이하이번 취약점 대상 아님다만 지원이 끝난 지 오래되어 다른 공개 취약점이 많습니다. 전환을 권합니다.

우리 사이트가 PHP 인지 확인하는 법

  • 주소가 .php 로 끝나는 페이지가 있다 (예: /bbs/board.php, /shop/item.php)
  • 그누보드 · 영카트 · 제로보드 · XE(라이믹스) · 워드프레스 같은 설치형 프로그램으로 만들었다
  • 호스팅 관리 화면에 「PHP 버전」 선택 메뉴가 있다

하나라도 해당하면 PHP 일 가능성이 높습니다. 주소가 .do · .jsp · .aspx 로 끝나면 대개 Java 나 ASP.NET 입니다.

배포판 패키지는 숫자만으로 판단하지 마세요

Ubuntu · Debian · RHEL 의 기본 PHP 패키지는 버전 숫자를 그대로 두고 보안 수정을 넣습니다(예: 8.1.2-1ubuntu2.19). 서버를 직접 운영한다면 배포판 보안 공지(USN · DSA · RHSA)에서 지금 패키지가 수정본인지 확인하세요. 명령줄의 php -v 와 웹에서 쓰는 PHP 가 다른 경우도 많아, phpinfo 기준으로 봐야 정확합니다.

조치 패키지

한 서버 · 한 사이트 기준 정찰가

금액은 부가가치세 별도입니다. 견적서와 같은 식(공수 × 인력 등급 단가 × 난이도 계수 + 관리비 10%)으로 계산했고, 근거를 카드마다 적었습니다. 작업 동의서에 서명하기 전에는 비용이 발생하지 않습니다.

긴급 확인 · 임시 차단

버전을 모르거나, 당장 올릴 수 없을 때

330,000원
VAT 별도 · VAT 포함 363,000원

지금 쓰는 PHP 가 위험한지 확인하고, 수정 버전을 올리기 전까지 공격 경로를 임시로 막습니다.

  • PHP 버전과 실행 방식(mod_php · PHP-FPM 등) 확인
  • 임시 완화 설정 적용 후 PHP 재시작 (업로드 진행 표시 끄기 · 메모리 제한 고정)
  • 웹셸 · 변조 파일 1차 점검
  • 결과 보고서와 다음 조치 안내

산정 근거: 2시간 × 전문가 150,000원 × 설정 변경 1.0 + 관리비 10%

수정 버전 패치

8.2 ~ 8.5 를 쓰고 있을 때

693,000원
VAT 별도 · VAT 포함 762,300원

같은 계열의 수정 버전(8.2.35 · 8.3.36 · 8.4.27 · 8.5.12 이상)으로 올리고 사이트가 정상인지 확인합니다.

  • 긴급 확인 · 임시 차단 포함
  • 백업과 되돌리기 준비
  • 수정 버전으로 업데이트 (호스팅 관리 화면 변경 또는 서버 패키지 업데이트)
  • 주요 화면 · 글쓰기 · 주문 동작 확인
  • 외부에서 다시 확인하고 조치 완료 보고서 발급

산정 근거: 3.5시간 × 전문가 150,000원 × 패치 1.2 + 관리비 10%

PHP 8 전환 · 호환 수정

7.x 또는 8.0 · 8.1 을 쓰고 있을 때

1,815,000원부터
VAT 별도 · 사이트 규모 확인 후 확정

수정 버전이 없는 PHP 5.4~8.1 을 8.4 로 옮기고, 그누보드 · 영카트 · 워드프레스 스킨과 플러그인 오류를 고칩니다.

  • 긴급 확인 · 임시 차단 포함
  • 그누보드 · 영카트 · 워드프레스 본체를 PHP 8 지원 버전으로 업데이트
  • 스킨 · 플러그인 호환 오류 수정 (직접 만든 스킨 3개 이하 기준)
  • 사본(스테이징)에서 먼저 검증한 뒤 운영 반영
  • 외부에서 다시 확인하고 조치 완료 보고서 발급

산정 근거: 10시간 × 선임 110,000원 × 코드 수정 1.5 + 관리비 10%

침해 흔적 정밀 점검

이미 공격받았을까 걱정될 때 (추가 선택)

825,000원부터
VAT 별도 · 사이트 규모 확인 후 확정

이미 공격을 받았는지 원본 코드 · 로그 · 계정을 대조해 확인합니다. 패치 전 노출 기간이 길었다면 함께 권합니다.

  • 원본 코드와 비교해 웹셸 · 변조 파일 전수 확인
  • 웹 접근 로그 · PHP 오류 로그 분석 (최근 30일)
  • 관리자 계정 · DB 이상 변경 확인
  • 침해가 확인되면 KISA(118) · 개인정보 유출 신고 절차 안내

산정 근거: 5시간 × 전문가 150,000원 × 설정 변경 1.0 + 관리비 10%

  • · 야간 · 주말 착수가 필요하면 긴급 할증 30% 가 붙습니다.
  • · 같은 서버의 사이트를 함께 맡기면 추가 1곳당 기본 금액의 35% 입니다.
  • · 침해가 확인되면 복구 · 신고 지원은 범위를 정해 별도 견적을 드립니다.
직접 할 수 있는 일

수정 버전을 올리기 전까지의 임시 조치

PHP 측이 안내한 임시 완화책입니다. 완전한 해결이 아니므로 수정 버전 적용까지 시간을 버는 용도로만 쓰세요. 서버 설정을 직접 바꿀 수 있는 경우에 해당합니다.

  1. 1
    업로드 진행 표시 끄기

    CVE-2026-109619 대상. session.upload_progress.enabled 를 끕니다. PHP 8.5 는 fatal_error_backtraces 도 끕니다.

  2. 2
    메모리 제한 고정

    CVE-2026-109618 대상. memory_limit 을 앱이 바꾸지 못하게 고정(-1)하고, 메모리는 컨테이너 · cgroup 으로 제한합니다.

  3. 3
    PHP 재시작

    설정을 바꾼 뒤 모든 PHP 프로세스(PHP-FPM 또는 Apache)를 재시작해야 적용됩니다.

  4. 4
    흔적 점검

    최근 바뀐 .php 파일, 업로드 폴더 안의 .php 파일, 비정상적인 PHP 프로세스 종료 기록을 확인합니다.

PHP-FPM 풀 설정 (예: /etc/php/8.3/fpm/pool.d/www.conf)
; php_admin_* 는 앱이 ini_set 으로 덮어쓸 수 없다
php_admin_flag[session.upload_progress.enabled] = off
php_admin_value[memory_limit] = -1

; Apache mod_php 라면 httpd 설정에
;   php_admin_flag  session.upload_progress.enabled off
;   php_admin_value memory_limit -1
재시작과 흔적 점검 (그누보드 기준 경로)
sudo systemctl restart php8.3-fpm   # mod_php 는 apache2 · httpd
php -i | grep -E 'upload_progress.enabled|memory_limit'

# 최근 7일 안에 바뀐 PHP 파일, 업로드 폴더 안의 PHP 파일
find /var/www -name '*.php' -mtime -7 -ls
find /var/www -path '*/data/*' -name '*.php' -ls

공유 호스팅은 이 설정을 직접 바꿀 수 없는 경우가 많습니다. 호스팅 관리 화면에서 PHP 버전을 수정 버전으로 바꾸거나 업체에 문의하세요. Cloudflare 를 거치는 사이트는 WAF 룰이 적용되지만 임시 방편입니다.

진행 절차

동의한 범위에서만 작업합니다

고객 서버에서 하는 작업이므로 작업 동의서에 범위와 시간대를 정한 뒤 시작합니다.

  1. 01
    상담 신청

    사이트 주소 · PHP 버전 · 호스팅 업체를 알려 주시면 영업일 1일 안에 연락드립니다.

  2. 02
    작업 범위 · 접속 방법 합의

    작업 동의서에 범위와 작업 시간대를 정하고 서명합니다. 서버 · 호스팅 접속 정보는 메일 · 메신저로 받지 않고 전화 · 대면으로 전달받습니다.

  3. 03
    임시 차단

    수정 버전을 올리기 전에 공격 경로부터 막고 웹셸 · 변조 파일을 1차 점검합니다.

  4. 04
    패치 또는 PHP 8 전환

    백업과 되돌리기를 준비한 뒤 수정 버전으로 올립니다. 전환이 필요하면 사본에서 먼저 검증합니다.

  5. 05
    재확인 · 보고서

    외부에서 다시 확인하고 조치 완료 보고서를 드립니다. 작업이 끝나면 접속 비밀번호를 바꿔 주세요.

자주 묻는 질문

많이 물어보시는 내용

그누보드(또는 워드프레스)를 최신으로 올렸는데도 해당되나요?

해당됩니다. PHP2Shell 은 그누보드 같은 프로그램이 아니라 그 아래에서 돌아가는 PHP 엔진의 결함입니다. 프로그램 · 플러그인 패치로는 막히지 않고, 서버의 PHP 를 수정 버전으로 바꿔야 합니다.

호스팅 업체가 알아서 고쳐 주지 않나요?

공유 호스팅은 업체가 PHP 를 관리하지만, 사이트별로 고른 PHP 버전은 고객이 바꿔야 하는 경우가 많습니다. 업체 공지에서 수정 버전 제공 여부를 확인하고, 오래된 버전을 고른 상태라면 직접 바꾸거나 맡겨 주세요.

외부에서 우리 사이트 PHP 버전을 대신 확인해 줄 수 있나요?

많은 사이트가 버전 표시를 숨겨 두어 바깥에서는 정확히 알 수 없습니다. 서버 안에서 확인하는 것이 가장 정확합니다. 외부 진단이 필요하면 소유권 확인과 진단 동의서 서명 뒤 Quick 외부 진단으로 진행합니다 — 동의 없는 진단은 하지 않습니다.

Java(JSP) · ASP.NET 으로 만든 사이트도 해당되나요?

이번 취약점은 PHP 에만 해당합니다. 다만 같은 기관의 하위 사이트(관광 · 행사 · 쇼핑몰 등)는 따로 PHP 로 만든 경우가 많으니 각각 확인하세요.

임시 조치만 해 두면 안전한가요?

아닙니다. PHP 측이 안내한 임시 완화책은 알려진 공격 경로를 줄일 뿐 완전한 해결이 아닙니다. 수정 버전 적용까지의 시간을 버는 용도로만 쓰세요.

공공기관 · 출자기관도 계약할 수 있나요?

견적서 · 사업자등록증 · 세금계산서를 발행하고, 기관 양식의 작업 동의서 · 보안 서약서에도 서명합니다. 상담 때 필요한 서류를 알려 주세요.

상담 신청

버전과 서버 형태만 알려 주세요

영업일 1일 안에 연락드립니다. 급하면 전화 주세요.

이메일
tjdwlals011@gmail.com
응대 시간
평일 10:00~18:00 (토·일·공휴일 제외)
원하는 조치
서버 형태
서버 접속 정보는 이 폼에 적지 마세요. 상담 때 안전한 전달 방법을 안내합니다.

근거: PHP 보안 공지와 Tenable 정리(2026-10-22 확인) — www.tenable.com · www.php.net. 수정 버전이 추가로 나오면 이 페이지를 갱신합니다.