🇰🇷 한글 설명
PHP의 SNMP 확장에서 snmpget 함수의 세 번째 인자(OID)에 대한 부적절한 경계 검사로 인한 버퍼 오버플로우 취약점입니다. 이를 통해 컨텍스트 의존적 공격자가 임의의 코드를 실행할 수 있습니다.
💡 쉬운 설명
PHP에서 SNMP 통신할 때 특정 함수에 매우 긴 텍스트를 입력하면 프로그램의 메모리를 손상시킬 수 있습니다. 이를 악용하면 공격자가 서버를 장악할 수 있습니다.
🇺🇸 원문 (English)
Buffer overflow in the snmpget function in the snmp extension in PHP 5.2.3 and earlier, including PHP 4.4.6 and probably other PHP 4 versions, allows context-dependent attackers to execute arbitrary code via a long value in the third argument (object id).
📍 영향받는 시스템
PHP 5.2.3 이하, PHP 4.4.6 및 기타 PHP 4 버전의 SNMP 확장
⚔️ 공격 벡터
snmpget() 함수의 세 번째 인자(OID)에 과도하게 긴 문자열을 전달하여 버퍼 오버플로우 유발
🛡️ 대응 방법
PHP 5.2.4 이상 또는 PHP 4.4.7 이상으로 업그레이드하고 SNMP 확장을 재컴파일
🔧 검증 코드
PHP 버전이 5.2.4 이상(또는 4.4.7 이상)인지, SNMP 확장이 로드되었는지 확인합니다. 낮은 버전이면 취약합니다.
php -r 'echo phpversion(); echo "\n"; echo phpversion("snmp") ?: "SNMP extension not loaded";'