경영진 요약
CVE-2023-3824의 버퍼 오버플로 취약점은 공식 권고에서는 PHP 8 이상 버전만 언급하고 있지만 PHP 7 설치에도 영향을 미칩니다. 이 취약점은 개념 증명(PoC) 익스플로잇이 GitHub에 공개되어 있어 잠재적 공격자의 진입 장벽이 크게 낮아졌기 때문에 특히 우려되는 취약점입니다.
이 취약점에 대한 위험 점수:
9.8 CVSS 3.x부터 NVD
9.4 CVSS 3.x부터 PHP 그룹
취약점 설명
CVE-2023-3824는 PHP의 PHAR 확장에서 발생하는 버퍼 오버플로 취약점으로, 부적절한 범위 검사로 인해 발생하는 phar_dir_read() 함수 내에서 부적절한 바운드 검사로 인해 발생하는 취약점입니다. PHP 애플리케이션이 특수하게 만들어진 .phar 아카이브를 열면 이 취약점이 트리거될 수 있습니다:
- 스택 버퍼 오버플로
- 메모리 손상
- 스택에서 정보 유출
- 원격 코드 실행(RCE) 가능성
- 서비스 거부 조건
이 취약점의 심각성은 악성 PHAR 파일을 여는 것만으로도 익스플로잇을 실행할 수 있어 취약한 시스템에 대한 무기화가 비교적 쉽다는 점에서 더욱 심각합니다.
PHP 7: 취약하고 패치되지 않음
CVE-2023-3824에 대한 공식 권고에 따르면 이 취약점이 영향을 미친다고 명시되어 있습니다:
- PHP 8.0.* 8.0.30 이전 버전
- PHP 8.1.* 8.1.22 이전 버전
- PHP 8.2.* 8.2.8 이전 버전
하지만 보안 조사 결과, PHP 7 시리즈 설치도 동일한 문제에 취약한 것으로 확인되었습니다. 이는 상당한 보안 공백을 의미합니다:
- PHP 7이 수명 종료(EOL) 상태에 도달했습니다.
- PHP 관리자가 제공하는 공식 패치는 없습니다.
- 이 취약점은 공개 익스플로잇으로 인해 패치가 적용되지 않은 시스템에서 특히 위험합니다.
기술적 세부 사항 및 공개 익스플로잇 위험
CVE-2023-3824가 특히 우려되는 이유는 GitHub에서 공개 개념 증명을 사용할 수 있어 악용 장벽이 크게 낮아졌다는 점입니다. 이 취약점은 간단한 2단계 프로세스를 통해 익스플로잇할 수 있습니다:
- 첫째, 공격자는 PHP의 최대 경로 길이(PHP_MAXPATHLEN)에 근접하거나 초과하는 특별히 조작된 디렉토리 항목 이름을 사용하여 악성 PHAR 파일을 만들 수 있습니다.
- 그런 다음 이 조작된 파일이 PHP의 PHAR 스트림 래퍼를 통해 액세스되면 취약점이 트리거됩니다.
이 기술적 문제는 phar_dir_read() 함수가 스택 버퍼에 쓰기 전에 입력 길이를 제대로 검증하지 못하기 때문에 발생합니다. 취약한 PHP 설치에서 신중하게 조작된 디렉토리 항목이 포함된 악성 PHAR 파일을 처리할 때 길이 검사가 불충분하면 스택 버퍼 오버플로우가 발생합니다. 이로 인해 메모리 손상이 발생하고 공격자가 이를 악용할 수 있습니다:
- 메모리에서 민감한 데이터 읽기
- 영향을 받는 시스템에서 임의의 코드를 실행합니다.
- 애플리케이션 충돌 및 서비스 중단의 원인
CVE-2023-0568과의 비교
이 취약점은 메모리 손상으로 이어질 수 있는 버퍼 오버플로 문제를 포함한다는 점에서 이전 글에서 설명한 CVE-2023-0568과 유사점을 공유합니다. 하지만 CVE-2023-3824는 다음과 같은 이유로 더 즉각적인 위협이 됩니다:
- 작동 중인 익스플로잇의 공개 가용성
- 원격 코드 실행 가능성
- 비교적 간단한 공격 벡터(PHAR 파일 처리)
당사의 솔루션: PHP 7에 대한 무한 라이프사이클 지원
CVE-2023-0568과 마찬가지로 많은 조직에서 호환성 요구 사항 또는 리소스 제약으로 인해 PHP 7 애플리케이션을 계속 실행하고 있는 것으로 알고 있습니다. 저희는 이러한 격차를 해소하기 위해 ELS(엔드리스 라이프사이클 지원) 서비스를 제공합니다:
- 맞춤형 보안 패치: CVE-2023-3824 및 기타 알려진 취약점을 해결하는 PHP 7용 패치를 개발했습니다.
- PHP 7 패키지 업데이트: Windows 및 Linux 환경에서 모두 사용 가능
- 사전 예방적 보안 모니터링: 공식적으로 인정되지 않은 경우에도 PHP 7에 영향을 미치는 취약점을 지속적으로 식별합니다.
권장 조치
조직에서 PHP 7을 실행 중인 경우 다음과 같은 즉각적인 조치를 취할 것을 강력히 권장합니다:
- 보안 패치 적용: 이 취약점으로부터 보호하려면 패치된 PHP 7 패키지를 설치하세요.
- 필요하지 않은 경우 PHAR 지원 비활성화: 애플리케이션에 PHAR 기능이 필요하지 않은 경우 일시적인 완화 조치로 비활성화하는 것을 고려하세요.
- 추가 보안 제어 구현: 익스플로잇 시도를 탐지하고 차단할 수 있는 웹 애플리케이션 방화벽 또는 기타 보안 조치를 고려하세요.
최종 생각
PHP 7에 영향을 미치는 CVE-2023-3824의 발견과 익스플로잇 코드의 공개로 인해 EOL PHP 버전을 실행하는 조직에 완벽한 폭풍이 몰아치고 있습니다. 이 취약점은 최신 PHP 버전으로 즉시 업그레이드할 수 없는 조직에 확장 보안 지원이 중요한 이유를 잘 보여줍니다.
Windows 및 Linux용 PHP 7에 대한 무한 수명 주기 지원은 비즈니스 요구 사항에 적합한 속도로 마이그레이션 전략을 계획하고 실행하는 동안 시스템을 보호하는 데 필요한 보안 업데이트를 제공합니다.

