🇰🇷 한글 설명
PHP 3과 4의 형식 문자열 취약점으로, 사용자 입력이 적절히 정제되지 않아 오류 로그에 기록될 때 원격 공격자가 임의 코드를 실행할 수 있습니다. 형식 문자열 공격을 통해 메모리 조회 및 조작이 가능합니다.
💡 쉬운 설명
PHP 프로그램이 사용자의 잘못된 입력을 그대로 오류 메시지에 표시할 때, 해커가 특수한 형식의 입력으로 프로그램을 조종할 수 있습니다. 이를 통해 서버에서 원하는 명령을 실행하거나 중요 정보를 탈취할 수 있습니다.
🇺🇸 원문 (English)
PHP 3 and 4 do not properly cleanse user-injected format strings, which allows remote attackers to execute arbitrary commands by triggering error messages that are improperly written to the error logs.
📍 영향받는 시스템
PHP 3.x, PHP 4.x (패치 전 모든 버전)
⚔️ 공격 벡터
오류 로그 기록 함수에 형식 문자열을 포함한 요청을 전송하여 메모리 조작 및 임의 코드 실행 유도
🛡️ 대응 방법
PHP를 최신 패치 버전으로 업그레이드하고, 사용자 입력을 형식 문자열 함수에 직접 전달하지 않기
🔧 검증 코드
PHP 버전이 5.0 이상이면 안전, 4.x 이하면 취약 상태입니다.
php -v | grep -oE 'PHP [0-9]+\.[0-9]+' | awk '{if ($2 < 5.0) print "Vulnerable: " $2; else print "Patched: " $2}'