2026년 10월 21일, PHP 프로젝트가 PHP의 심각한 취약점 2건을 발표하고 수정 버전을 공개했습니다. 로그인하지 않은 외부 공격자가 조작된 요청을 한 번 보내는 것만으로 서버에서 코드를 실행할 수 있는 취약점입니다. 언론에서는 이 두 취약점을 'PHP2Shell'이라고 부르고 있습니다.
PHP는 WordPress를 비롯해 많은 중소기업 홈페이지와, 직접 설치해 쓰는 뉴스레터 도구를 움직이는 프로그래밍 언어입니다. 이 글에서는 뉴스레터를 보내는 회사가 오늘 확인해야 할 것을 정리합니다.
PHP2Shell(CVE-2026-109618, CVE-2026-109619)이란
PHP의 공식 보안 공지에 따르면 내용은 다음과 같습니다.
| 항목 | 내용 |
|---|---|
| 취약점 | CVE-2026-109618(메모리 부족 상황 처리 중의 메모리 손상)과 CVE-2026-109619(메모리를 해제한 뒤에도 내부 상태가 남는 문제) 2건 |
| 심각도 | 둘 다 CVSS v4.0 기준 9.2(긴급) |
| 영향 | 인증 없이 원격에서 웹 서버 사용자 권한으로 코드 실행 |
| 영향 범위 | 웹 요청을 처리하는 모든 PHP 설치 환경. 특히 Apache의 mod_php가 가장 위험하다고 설명 |
| 수정 버전 | PHP 8.5.12, 8.4.27, 8.3.36, 8.2.35(10월 21일 공개) |
| 구버전 | PHP 8.1 이하는 공식 지원이 끝남. 7.4, 8.0, 8.1용으로는 최소한의 수정 패치가 공개됨 |
PHP는 업데이트만이 완전한 해결책이며, 설정 변경은 위험을 줄일 뿐이라고 밝혔습니다.
보안 연구자와 언론 보도에 따르면 공식 발표 이전부터 공격 시도가 있었고, 공격 코드도 돌아다니고 있습니다.
국내에서는 한국인터넷진흥원(KISA)이 보호나라를 통해 'PHP 제품 보안 업데이트 권고'(10월 21일)와 'PHP 보안취약점(PHP2Shell) 관련 기업 보안 대응 수칙'(10월 22일)을 발표했습니다. KISA는 인터넷에 노출된 서버부터 수정 버전으로 업데이트하고 PHP 관련 웹 서비스를 재시작할 것, 공개된 날 이후의 로그를 점검할 것, 침해 흔적이 있으면 서버를 외부 접속에서 분리하고 보호나라로 신고할 것을 안내하고 있습니다.
PHP2Shell이 뉴스레터에 미치는 영향
뉴스레터를 보내는 회사에는 두 가지 위험이 있습니다.
1. 홈페이지가 장악된다
WordPress 등 PHP로 만든 홈페이지가 장악되면, 공지사항이나 블로그 글에 가짜 안내문이나 악성 사이트로 가는 링크가 심어질 수 있습니다.
그 글을 바탕으로 뉴스레터를 만들어 보내면, 우리 회사 뉴스레터가 독자를 위험한 사이트로 안내하게 됩니다. 독자의 신뢰를 잃을 뿐 아니라 스팸 신고가 늘어 이후 메일이 잘 도착하지 않게 됩니다.
2. 발송 시스템이 장악된다
PHP로 동작하는 뉴스레터 도구나 WordPress용 뉴스레터 플러그인을 자체 서버에서 쓰고 있다면, 공격자가 다음과 같은 일을 할 수 있습니다.
- 구독자 명단(이메일 주소와 이름)을 훔친다
- 회사 서버에서 스팸이나 피싱 메일을 대량으로 보낸다(경유지로 악용)
- 그 결과 회사 도메인의 평판이 떨어져, 정상적인 뉴스레터까지 받은편지함에 도착하지 않게 된다
WordPress나 뉴스레터 플러그인을 쓰고 있다면
WordPress도, 뉴스레터 플러그인도 PHP 위에서 동작합니다. WordPress와 플러그인을 최신으로 업데이트해도 PHP 자체가 오래된 버전이면 이번 취약점은 막을 수 없습니다. PHP 버전은 호스팅 업체의 관리 화면이나 공지에서 확인하세요.
오늘 할 일 체크리스트
| 할 일 | 확인 방법 |
|---|---|
| PHP 버전 확인 | 호스팅 업체의 관리 화면이나 공지에서 위의 수정 버전인지 확인합니다. 아니라면 호스팅 업체에 문의하거나 관리자에게 업데이트를 요청합니다 |
| 바로 업데이트할 수 없을 때 | PHP가 안내한 임시 설정(위험을 줄일 뿐 없애지는 못함)을 관리자와 상의합니다. KISA는 임시 조치도 어렵다면 외부 접속 차단이나 서비스 일시 중단을 검토하라고 안내합니다 |
| WordPress와 플러그인 업데이트 | 이번 취약점의 해결책은 아니지만 다른 침입 경로를 줄입니다 |
| 홈페이지 글 점검 | 최근에 모르는 글이나 낯선 링크가 늘지 않았는지 확인합니다 |
| 발송량 확인 | 예약한 적 없는 발송이나 발송량 급증이 없는지 확인합니다 |
| 스팸 신고와 반송 확인 | 갑자기 늘었다면 장악이나 경유지 악용을 의심합니다 |
| DMARC 보고서 확인 | 우리 도메인을 사칭한 메일이 모르는 서버에서 발송되고 있지 않은지 확인합니다 |
구독자 명단이 유출됐다면(개인정보 보호법)
구독자의 이메일 주소와 이름은 개인정보 보호법상 개인정보입니다. 개인정보가 유출등이 되었음을 알게 되면 다음 의무가 있습니다.
| 의무 | 내용 |
|---|---|
| 정보주체에게 통지 | 알게 된 때부터 72시간 이내에 서면등의 방법으로 유출된 항목, 시점과 경위, 피해를 줄이기 위한 방법, 회사의 대응 조치, 담당 부서와 연락처 등을 알려야 합니다(법 제34조 제1항, 시행령 제39조) |
| 개인정보보호위원회 또는 KISA에 신고 | 1천 명 이상의 개인정보가 유출된 경우, 민감정보나 고유식별정보가 유출된 경우, 외부로부터의 불법적인 접근(해킹 등)으로 유출된 경우에는 알게 된 때부터 72시간 이내에 신고해야 합니다(법 제34조 제4항, 시행령 제40조) |
해킹으로 인한 유출은 인원수와 관계없이 신고 대상입니다. 구체적인 내용이 아직 확인되지 않았더라도 그때까지 확인된 내용을 먼저 통지·신고하고, 추가로 확인되는 내용은 확인되는 즉시 알려야 합니다. 또한 2026년 9월 11일부터 시행된 개정법은 유출등의 '가능성'을 알게 된 경우에도, 대통령령으로 정하는 경우에는 가능성이 있는 모든 정보주체에게 지체 없이 알리도록 하고 있습니다(법 제34조 제2항).
자세한 내용은 아래 출처의 조문을 확인하고, 구독자 정보가 유출됐다고 의심되면 전문가의 도움을 받으세요.
발송 시스템을 직접 운영하지 않는다는 선택
뉴스레터 발송 시스템을 자체 서버에서 운영하면, 이번과 같은 취약점에 대응하는 것도 회사의 몫이 됩니다. 클라우드 뉴스레터 서비스를 쓰면 발송 인프라를 최신 상태로 유지하는 것은 서비스 제공자의 책임입니다.
Newsletter Ready는 PHP를 사용하지 않으므로 이번 취약점의 영향을 받지 않습니다. 다만 뉴스레터의 재료가 되는 회사 홈페이지의 보안은 홈페이지를 운영하는 회사의 책임입니다. 홈페이지의 PHP 버전도 함께 확인하세요.
출처
- PHP: Security advisory: Critical remote code execution vulnerabilities, update now(2026년 10월 21일)
- GitHub: GHSA-w8hw-w9fx-j79w(CVE-2026-109618)
- GitHub: GHSA-6wmf-4rv5-p3rp(CVE-2026-109619)
- Help Net Security: PHP2Shell: Critical PHP vulnerabilities patched, update now
- KISA 보호나라: PHP 제품 보안 업데이트 권고
- KISA 보호나라: PHP 보안취약점(PHP2Shell) 관련 기업 보안 대응 수칙
- 개인정보 보호법 제34조(국가법령정보센터)
- 개인정보 보호법 시행령 제39조(국가법령정보센터)
- 개인정보 보호법 시행령 제40조(국가법령정보센터)
이 글은 일반적인 정보이며 법률 자문이 아닙니다.