🇰🇷 한글 설명
PHP 5.3.7의 crypt() 함수가 MD5 해시 타입 사용 시 해시된 문자열 대신 salt 값을 그대로 반환하는 버그입니다. 공격자는 임의의 비밀번호로 인증을 우회할 수 있습니다.
💡 쉬운 설명
PHP의 비밀번호 암호화 함수가 올바르게 작동하지 않아 실제 비밀번호 확인 없이 로그인할 수 있습니다. PHP 5.3.7을 사용하는 웹사이트의 모든 사용자 계정이 위험합니다.
🇺🇸 원문 (English)
The crypt function in PHP 5.3.7, when the MD5 hash type is used, returns the value of the salt argument instead of the hashed string, which might allow remote attackers to bypass authentication via an arbitrary password, a different vulnerability than CVE-2011-2483.
⚔️ 공격 벡터
MD5 기반 crypt() 함수를 사용하는 로그인/인증 시스템에 임의의 비밀번호로 접근
🛡️ 대응 방법
PHP를 5.3.8 이상으로 업그레이드 또는 비밀번호 검증 로직을 password_hash()/password_verify()로 변경
🔧 검증 코드
PHP 버전이 5.3.0~5.3.7 범위면 취약함. 5.3.8 이상이면 안전함.
php -r 'echo phpversion();' | grep -E '^5\.3\.[0-7]'