🇰🇷 한글 설명
PHP의 Fileinfo 컴포넌트에 포함된 readelf.c 파일에서 pread 호출이 데이터를 부분적으로만 읽을 수 있다는 점을 고려하지 않는 취약점입니다. 공격자가 조작된 ELF 파일을 업로드하면 초기화되지 않은 메모리 접근을 유발할 수 있습니다.
💡 쉬운 설명
PHP가 파일 정보를 분석할 때 특정 파일 형식 처리 중 메모리 오류가 발생합니다. 특수하게 만든 파일을 서버에 보내면 서버가 오동작하거나 중지될 수 있습니다.
🇺🇸 원문 (English)
readelf.c in file before 5.22, as used in the Fileinfo component in PHP before 5.4.37, 5.5.x before 5.5.21, and 5.6.x before 5.6.5, does not consider that pread calls sometimes read only a subset of the available data, which allows remote attackers to cause a denial of service (uninitialized memory access) or possibly have unspecified other impact via a crafted ELF file.
📍 영향받는 시스템
PHP 5.4.x (5.4.37 이전), 5.5.x (5.5.21 이전), 5.6.x (5.6.5 이전), file 라이브러리 5.22 이전
⚔️ 공격 벡터
네트워크를 통해 조작된 ELF 파일을 서버에 업로드하여 메모리 처리 오류 및 서비스 거부 유발
🛡️ 대응 방법
PHP를 5.4.37, 5.5.21, 5.6.5 이상으로 업그레이드하거나 file 라이브러리를 5.22 이상으로 패치
🔧 검증 코드
PHP 버전이 5.4.37, 5.5.21, 5.6.5 미만이면 취약 상태입니다. 각 버전 대역에서 지정된 패치 버전 이상으로 업그레이드해야 합니다.
php -v | grep -oP 'PHP \K[0-9]+\.[0-9]+\.[0-9]+' || dpkg -l | grep -E 'php|libfile'