🔍 CVE-2015-4021

5.0
CVSS Score
MEDIUM
2015-06-09
2026-05-06 22:30
✅ 완료

🇰🇷 한글 설명

PHP의 phar_parse_tarfile 함수가 tar 아카이브 파일명의 null 바이트 검증을 수행하지 않아 발생하는 취약점입니다. 조작된 tar 파일을 통해 정수 언더플로우와 메모리 손상을 야기할 수 있으며, 서비스 거부(DoS) 공격으로 이어집니다.

💡 쉬운 설명

PHP가 tar 형식 파일을 처리할 때 파일명 첫 글자가 특수 문자인지 확인하지 않습니다. 악의적으로 조작된 tar 파일을 업로드하면 프로그램이 메모리 오류로 인해 충돌할 수 있습니다.

🇺🇸 원문 (English)

The phar_parse_tarfile function in ext/phar/tar.c in PHP before 5.4.41, 5.5.x before 5.5.25, and 5.6.x before 5.6.9 does not verify that the first character of a filename is different from the \0 character, which allows remote attackers to cause a denial of service (integer underflow and memory corruption) via a crafted entry in a tar archive.

📍 영향받는 시스템

PHP 5.4.41 미만, PHP 5.5.0-5.5.24, PHP 5.6.0-5.6.8

⚔️ 공격 벡터

파일명이 null 바이트(\0)로 시작하는 특수한 tar 아카이브를 업로드하거나 처리하도록 유도

🛡️ 대응 방법

PHP를 5.4.41, 5.5.25, 5.6.9 이상의 버전으로 업그레이드

🔧 검증 코드

vulnerable이 출력되면 취약 버전입니다. 버전 번호가 위의 권장 버전 이상이면 패치 완료

Shell / Script
php -v | grep -oE '5\.(4|5|6)\.[0-9]+' | awk -F. '{if($2==4 && $3<41 || $2==5 && $3<25 || $2==6 && $3<9) print "vulnerable"}'

📊 CVSS Vector String

CVSS Vector
AV:N/AC:L/Au:N/C:N/I:N/A:P

💻 영향받는 소프트웨어

PHP