🇰🇷 한글 설명
PHP 5.2.1 이전 버전의 format string 취약점으로, 64비트 시스템에서 print 함수들(*printf 등)과 odbc_result_all 함수가 영향받습니다. 공격자가 포맷 스트링 지정자를 통해 메모리를 읽거나 임의의 코드를 실행할 수 있습니다.
💡 쉬운 설명
PHP의 출력 함수들이 사용자 입력의 특수 문자를 제대로 처리하지 못해, 공격자가 특별한 문자열을 보내면 서버 메모리 접근이나 명령 실행이 가능합니다. 이를 통해 민감한 데이터 유출이나 시스템 장악이 발생할 수 있습니다.
🇺🇸 원문 (English)
Multiple format string vulnerabilities in PHP before 5.2.1 might allow attackers to execute arbitrary code via format string specifiers to (1) all of the *print functions on 64-bit systems, and (2) the odbc_result_all function.
📍 영향받는 시스템
PHP 5.2.1 이전 버전 (64비트 시스템 우선 영향, 32비트 시스템도 일부 함수 영향)
⚔️ 공격 벡터
포맷 스트링 지정자(%x, %n 등)를 포함한 악의적 입력을 print/printf/sprintf 함수 또는 odbc_result_all에 전달
🛡️ 대응 방법
PHP를 5.2.1 이상으로 즉시 업그레이드하고, 모든 사용자 입력에 대해 포맷 스트링 검증 추가
🔧 검증 코드
출력된 PHP 버전이 5.2.1 이상이면 안전, 5.2.1 미만이면 즉시 업그레이드 필요
php -v | grep -oP 'PHP \K[0-9]+\.[0-9]+\.[0-9]+'