UK — The Register
PHP2Shell 익스플로잇, 원격 코드 실행을 막기 위한 보호 장치 우회
보안2분 읽기
PHP2Shell라고 불리는 PHP 보안 결함을 공격하는 새로운 방법이 나왔습니다. 이 방법은 서버를 지키는 기본 보호 기능을 우회할 수 있다고 합니다.
무슨 일이 있었나
보안 회사 VulnCheck의 연구자들이 새로운 공격 코드(익스플로잇)를 만들었습니다. 이 코드는 ASLR이라는 보호 기능이 켜진 x86-64 서버에서도 원격 코드 실행(RCE)을 일으킬 수 있다고 합니다. RCE는 해커가 멀리서 서버에 자신의 명령을 몰래 실행시키는 것을 말합니다. 이 코드는 VulnCheck의 일부 고객에게만 공개되었습니다.
주요 숫자와 사실
- 공격 대상은 CVE-2026-109618 결함이며, 이 결함은 PHP2Shell 쌍의 하나입니다. 다른 하나는 CVE-2026-109619입니다.
- PHP 재단은 10월 22일 수요일에 두 결함을 공개하고 패치를 내놓았습니다.
- 새 방법은 PHP 8.4.26 버전에서 확인되었습니다.
- 연구자들은 GitHub에서 PHP2Shell 관련 자료 저장소를 '수백' 개 보았지만, 실제로 작동하는 공격 코드는 매우 적다고 말했습니다.
ASLR이란 무엇인가
ASLR은 프로그램이 실행될 때마다 중요한 데이터가 메모리의 어디에 놓일지를 무작위로 섞는 보호 기능입니다. 해커가 목표 주소를 미리 맞히기 어렵게 만들어, 메모리 손상 결함을 악용하기 힘들게 합니다. 이번 연구는 메모리 정보를 먼저 빼내는 방법을 써서 이 보호를 넘었다고 합니다.
왜 중요한가
이 연구는 PHP2Shell을 실제 운영 서버에서 공격하기가 훨씬 쉬워질 수 있다는 뜻입니다. 연구자는 공격이 어려웠던 이유 중 하나가 ASLR이었는데, 이제 그 장벽이 무너질 수 있다고 말했습니다. 또한 연구자는 공격자들이 이미 이 결함에 많은 시간과 AI 도구를 쓰고 있다고 경고했습니다. 그래서 보호 설정만 믿지 말고, PHP를 최신 버전으로 빨리 고치는 것이 중요합니다.
앞으로 지켜볼 점
- 공격 코드가 더 널리 퍼지고 실제 공격에 쓰이는지 살펴봐야 합니다.
- ARM64 시스템에서는 아직 원격 코드 실행이 작동하지 않는다고 합니다. 이 부분이 고쳐질지 지켜볼 필요가 있습니다.
- 사용 중인 PHP가 취약한 버전인지 확인하고 패치를 적용해야 합니다.
용어 풀이
- PHP2Shell
- PHP 프로그램에서 발견된 두 가지 보안 결함을 함께 부르는 이름입니다.
- VulnCheck
- 보안 취약점 정보를 조사하고 고객에게 제공하는 보안 회사입니다.
- ASLR
- 프로그램의 메모리 위치를 실행할 때마다 무작위로 바꿔 해커의 공격을 어렵게 하는 보호 기능입니다.
- RCE
- 원격 코드 실행의 줄임말로, 해커가 멀리서 서버에 명령을 실행하는 것을 뜻합니다.
- PHP
- 웹사이트와 서버에서 널리 쓰이는 프로그래밍 언어입니다.
- 익스플로잇
- 보안 결함을 이용해 시스템을 공격하는 코드나 방법입니다.