📌 요약: PHP 코어의 원격코드실행(RCE) 취약점 2건(CVE-2026-109618, CVE-2026-109619)에 대해 Mallory.ai Rapid Response 글을 분석하고, 거가대교 운영사 공개 사이트 gklink.com을 비파괴 헤더·핑거프린트 점검만으로 관찰한 결과를 정리했음. 공식 패치·기술 상세가 아직 공개되지 않은 상태이므로, 확인된 사실과 2차 출처·일반 추정을 엄격히 분리했음.

  • 작성·점검일: 2026-10-21 KST
  • 침투 테스트·익스플로잇·퍼징·브루트포스는 일절 수행하지 않았음
  • gklink.com에 대해 “취약하다/안전하다”를 단정하지 않음. 관찰된 PHP 버전 배너와 EOL 이슈를 바탕으로 점검·이전 우선순위만 제시함

1. 표기 원칙

표기의미
[확인]php.net 공식 공지, 응답 헤더, DNS·인증서 등 직접 확인한 사실
[2차 출처]Mallory·Huntress·Beazley 등 보안업체 공개 글. 공식 확인 전 수치·버전은 잠정값
[추정]메커니즘 미공개 상태에서 일반적으로 가정하는 공격·탐지 경로. 단정 금지

2. 취약점 개요

Mallory.ai PHP RCE Rapid Response 글 화면

Mallory.ai 「PHP RCE in 8.5 and Earlier」 글 상단 · 출처: https://mallory.ai/blog/php-rce-rapid-response (캡처 2026-10-21 KST)

php.net Upcoming Critical PHP Security Release 공지

PHP 공식 뉴스 「Upcoming Critical PHP Security Release」 · 출처: https://www.php.net/archive/2026.php#2026-10-20-1 (캡처 2026-10-21 KST)

2.1 [확인] PHP 공식 공지

  • 발표일: 2026-10-20
  • 긴급 보안 릴리스 예정: 2026-10-21 14:00 UTC (한국 시간 23:00)
  • 대상: 중요도 높은 취약점 2건, 각각 CVSS v4.0 9.2
  • 영향받는 버전·수정 버전·기술 상세는 릴리스와 함께 공개한다고 명시함
  • 세부 내용이 유출되거나 실제 공격이 확인되면 일정을 앞당길 수 있다고 함

2.2 [확인] CVE 식별자와 NVD 상태

  • 보안업계·CERT-EU 등에서 인용하는 식별자: CVE-2026-109618, CVE-2026-109619
  • 본 글 작성 시점(2026-10-21 KST) NVD REST API·MITRE CVE API 조회 결과: 레코드 없음(RESERVED/미동기화)
  • NVD 웹 UI도 “CVE ID Not Found”를 반환함

NVD에서 CVE-2026-109618 조회 시 Not Found

NVD CVE-2026-109618 조회 결과(레코드 미공개) · 출처: https://nvd.nist.gov/vuln/detail/CVE-2026-109618 (캡처 2026-10-21 KST)

2.3 [2차 출처] Mallory·Huntress 등 정리값

항목내용출처 성격
성격PHP 코어 원격코드실행(RCE) 2건2차 출처 (공식은 “critical 2건”만 확인)
CVSSv4.0 9.2 (양쪽)확인 (php.net·php.announce와 일치)
수정 버전 후보8.5.12, 8.4.27, 8.3.36, 8.2.352차 출처 (Mallory). 공식 발표 전 잠정값
패치 미제공 후보PHP 8.1 이하(EOL)2차 출처. 공식 영향 범위 미공개
공개 익스플로잇작성 시점 기준 공개 PoC·대규모 ITW 보고 없음2차 출처 (Huntress 등)
실존 확인watchTowr가 엠바고 취약점 실존 및 CVE-2026-109618 재현을 언급2차 출처
  • Mallory는 Shodan X-Powered-By: PHP 배너 기준으로 인터넷 노출 PHP 호스트 중 EOL 비중이 높다고 집계함(약 88만 대 수준). 집계 방법·시점은 Mallory 원문 기준임
  • KISA 보호나라: 본 글 작성 시점 검색에서는 본 CVE 전용 신규 공지를 확인하지 못했음. 릴리스 이후 보호나라·KNVD 공지를 재확인할 것

2.4 [추정 금지 구간] RCE 메커니즘

  • 공식·공개 자료 기준으로 어떤 함수·확장·SAPI·설정에서 트리거되는지 공개되지 않음
  • 인증 필요 여부, 기본 설정에서의 원격 도달 가능성도 미확인임
  • 따라서 본 글에서는 페이로드·재현 절차를 다루지 않음. “요청 → PHP 워커 이상 동작 → 셸·웹셸” 수준의 일반적 추정 시나리오만 제시함

3. 공격 시나리오와 대응 흐름

PHP RCE 대응 흐름 및 gklink.com 비파괴 점검 요약

PHP 코어 RCE 대응 흐름 · 메커니즘 미공개 구간은 [추정] · 출처: php.net·Mallory·Huntress 및 직접 HEAD/GET 관찰 기반 작성 (2026-10-21 KST)

  • [추정] 공격자가 인터넷 노출 PHP(Apache/Nginx + mod_php·php-fpm·php-cgi)에 원격 요청을 보내 코어 취약점을 트리거함
  • [추정] 성공 시 PHP 워커가 sh/bash/cmd/powershell·다운로드 도구 등 비정상 자식 프로세스를 생성함 (Huntress·Florian Roth process-watcher 권고와 동일한 탐지 관점)
  • [추정] 이후 웹셸 드롭, 채굴, 권한 상승, 데이터 유출로 이어질 수 있음
  • 공개 PoC가 나오면 수 시간 내 자동 스캔이 붙는 것이 일반적임 → 패치 창을 미리 잡아두는 것이 핵심임

4. gklink.com 비파괴 점검 결과

gklink.com 메인 화면

거가대교(GK해상도로) 공식 사이트 메인 · 출처: https://www.gklink.com/page/index.php (캡처 2026-10-21 KST)

  • 대상: gklink.com / www.gklink.com (거가대교 운영 공개 웹)
  • 방법: DNS 조회, HTTPS HEAD/GET(홈·robots·로그인 경로 각 1~2회), TLS 인증서 확인, HTML 공개 시그니처 확인
  • 하지 않은 것: 익스플로잇 시도, 포트 대량 스캔, 폼 제출, 인증 우회, 퍼징

4.1 [확인된 관찰]

항목관찰값
DNS A58.151.200.232 (Google DoH)
네임서버Gabia (ns.gabia.net 등)
리다이렉트https://gklink.com/ → https://www.gklink.com/page/index.php (301)
ServerApache/2.4.54 (codeit) OpenSSL/1.1.1o+quic PHP/7.3.33
X-Powered-ByPHP/7.3.33
세션PHPSESSID 쿠키 발급 (Secure·SameSite=None 병행)
TLSTLS 1.3, Sectigo DV, SAN: gklink.com / www.gklink.com (유효: 2026-04-30 ~ 2026-11-14 UTC)
앱 시그니처HTML에 Gnuboard5 계열 전역변수(g5_url, g5_bbs_url 등), 경로 /page/bbs/*.php
로그인 경로/page/bbs/login.php HTTP 200 (정상 응답 확인만, 로그인 시도 없음)
robots.txt / security.txt404

4.2 [일반적 추정] — 취약 단정 금지

  • 응답 배너상 PHP 7.3.33을 사용함. PHP 7.3은 이미 EOL 브랜치임
  • 2차 출처(Mallory·Huntress)는 “8.1 이하는 공식 패치가 없을 수 있다”고 보고함. 이는 공식 영향 범위 발표 전 잠정 정보임
  • 배너 버전이 실제 바이너리와 일치하는지는 서버 내부 php -v·패키지 버전으로만 확정 가능함 (배너 위장·프록시 가능)
  • RCE 전제 조건(특정 SAPI·설정·인증)이 공개되지 않았으므로, 현재 관찰만으로 “원격에서 바로 뚫린다/안전하다”를 말할 수 없음
  • 실무적으로는 “인터넷 노출 + EOL PHP” 조합이므로 버전 이전·격리·탐지를 최우선으로 두는 것이 타당함

5. 대응방안

5.1 즉시(패치 전)

  • 인터넷 노출 PHP 호스트 전수 인벤토리: 버전, SAPI(php-fpm/mod_php/php-cgi), 호스팅·어플라이언스 번들 PHP 포함
  • 관리·비공개 PHP 앱은 VPN·IP 허용목록으로 격리
  • WAF에 가상 패치 룰 배포 준비(상세 시그니처는 공식/벤더 룰 발표 후 적용). 현재는 과도한 커스텀 시그니처보다 이상 트래픽·이상 응답 모니터링이 안전함
  • 웹서버·PHP 워커의 비정상 자식 프로세스 알림 (Huntress·process-watcher 권고와 동일 관점)
  • 웹루트·임시 디렉터리의 신규·변조 PHP 파일 감시

5.2 패치 직후

  • php.net 릴리스 노트에서 공식 수정 버전 확인 후 지원 브랜치(현행 지원은 8.2~8.5)에 긴급 적용
  • 배포판(Debian/Ubuntu/RHEL 등) 백포트 패키지·호스팅사 일정을 별도 확인
  • EOL(배너상 7.x 포함)은 패치 대기가 아니라 지원 버전으로의 이전 프로젝트로 전환

5.3 gklink.com 관점 점검 항목 (방어적)

  • 운영 서버에서 실제 php -v·Apache 모듈 구성 확인 (배너와 교차)
  • PHP 7.3 → 지원 8.x 이전 계획(Gnuboard5·커스텀 테마 호환성 회귀 테스트 포함)
  • expose_php=Off로 버전 배너 최소화(보안 강화이지 패치 대체 아님)
  • 웹셸·이상 프로세스·이상 아웃바운드 점검 루틴을 패치 창 전후로 강화
  • 개인정보·결제·미납조회 등 민감 기능은 WAF·접근통제·입력값 검증을 재확인

5.4 ISMS-P 인증기준 연계 (실무 매핑)

영역(대표)이번 이슈에서 점검할 포인트
2.5.x 취약점 점검긴급 취약점 공지 접수 → 자산 매핑 → 조치 기한 관리
2.6.x / 2.7.x 시스템·응용프로그램 보안지원 종료 SW 사용 현황, 패치·버전 관리, 웹 서버 하드닝
2.9.x 시스템 및 서비스 운영관리변경관리(긴급 패치 창), 롤백 계획
2.10.x 사고 예방 및 대응웹셸·이상 프로세스 탐지, 초동 격리·로그 보존
2.11.x 재해복구패치 실패 시 서비스 연속성·백업 복구 검증
  • 항목 번호는 조직이 쓰는 ISMS-P 인증기준 버전에 맞게 내부 통제표와 대조할 것

6. 실무자 체크리스트

  • □ 인터넷 노출 PHP 버전·SAPI 목록을 확보했는가
  • □ 호스팅·CDN·어플라이언스 번들 PHP까지 포함했는가
  • □ php.net 14:00 UTC 릴리스 직후 적용할 담당·창을 정해 두었는가
  • □ EOL PHP(배너상 7.x 등)의 격리 또는 이전 일정이 있는가
  • □ PHP/웹서버 자식 프로세스·웹루트 신규 파일 알림이 켜져 있는가
  • □ 침해 의심 시 네트워크 격리·로그 보존·KISA 118 신고 절차가 준비돼 있는가
  • □ gklink.com처럼 버전 배너가 노출된 자산은 내부 php -v로 재검증했는가

7. 미확인·주의 사항

  • 공식 영향 버전·수정 버전·루트코즈는 릴리스 전까지 미공개임
  • NVD/CVE 본문은 작성 시점 미동기화임
  • 공개 PoC·확정 IoC 없음 → 본 글에 공격 페이로드를 기재하지 않음
  • gklink.com 관찰은 외부 헤더·공개 HTML에 한정됨. 실제 취약 여부는 내부 점검 없이는 판정 불가

8. 출처