🇰🇷 한글 설명
PHP 7.0.x(7.0.22 이하) 및 7.1.x(7.1.8 이하)의 var_unserializer.re에서 발생하는 힙 메모리 사용 후 해제(use-after-free) 취약점입니다. 신뢰할 수 없는 데이터를 역직렬화할 때 잘못된 배열 크기로 인해 메모리 해제 후 접근이 발생하여 PHP 무결성 침해를 야기할 수 있습니다.
💡 쉬운 설명
PHP가 온라인에서 받은 데이터를 복원할 때, 메모리에서 삭제된 영역에 다시 접근하는 문제가 발생합니다. 공격자가 특수 제작된 데이터를 보내면 서버 메모리를 손상시켜 서버를 장악하거나 정보를 탈취할 수 있습니다.
🇺🇸 원문 (English)
ext/standard/var_unserializer.re in PHP 7.0.x through 7.0.22 and 7.1.x through 7.1.8 is prone to a heap use after free while unserializing untrusted data, related to improper use of the hash API for key deletion in a situation with an invalid array size. Exploitation of this issue can have an unspecified impact on the integrity of PHP.
📍 영향받는 시스템
PHP 7.0.0~7.0.22, PHP 7.1.0~7.1.8
⚔️ 공격 벡터
untrusted 데이터를 unserialize() 함수로 처리하는 애플리케이션에 악의적 직렬화 객체 전송
🛡️ 대응 방법
PHP를 7.0.23 이상 또는 7.1.9 이상으로 업그레이드
🔧 검증 코드
7.0.22 이하 또는 7.1.8 이하 버전이 출력되면 취약합니다. 7.0.23 또는 7.1.9 이상이면 안전합니다.
php -v | grep -oE '(7\.[01]\.[0-9]+)' | head -1