🔍 CVE-2008-2107

7.5
CVSS Score
HIGH
2008-05-07
2026-04-23 00:35
✅ 완료

🇰🇷 한글 설명

PHP 4.4.8 이전 및 5.2.5 이전 버전에서 32비트 시스템 위의 GENERATE_SEED 매크로 결함으로 인해 rand()와 mt_rand() 함수의 시드가 0이 될 수 있습니다. 이로 인해 난수 생성이 예측 가능해져 난수 기반 보안 메커니즘이 우회됩니다.

💡 쉬운 설명

PHP가 난수를 만들 때 특정 상황에서 예측 가능한 패턴을 따릅니다. 공격자가 난수를 미리 알아낼 수 있어 암호화, 토큰, 세션 같은 보안 기능을 뚫릴 수 있습니다.

🇺🇸 원문 (English)

The GENERATE_SEED macro in PHP 4.x before 4.4.8 and 5.x before 5.2.5, when running on 32-bit systems, performs a multiplication using values that can produce a zero seed in rare circumstances, which allows context-dependent attackers to predict subsequent values of the rand and mt_rand functions and possibly bypass protection mechanisms that rely on an unknown initial seed.

📍 영향받는 시스템

PHP 4.0 ~ 4.4.7, PHP 5.0.0 ~ 5.2.4 (32비트 시스템)

⚔️ 공격 벡터

예측 가능한 난수 생성을 이용하여 세션 토큰, CSRF 토큰, 보안 토큰 등의 값을 미리 계산하여 우회

🛡️ 대응 방법

PHP를 4.4.8 이상 또는 5.2.5 이상으로 즉시 업그레이드

🔧 검증 코드

명령어 실행 결과가 'Vulnerable'이면 패치 필요, 'Patched'이면 안전 (PHP 버전이 요구 최소 버전 이상이면 안전)

Shell / Script
php -v 2>/dev/null | grep -oE 'PHP [0-9.]+' | awk '{if($2 ~ /^(4\.[0-3]|4\.4\.[0-7]|5\.[01]|5\.2\.[0-4])/) print "Vulnerable"; else print "Patched"}'

📊 CVSS Vector String

CVSS Vector
AV:N/AC:L/Au:N/C:P/I:P/A:P

💻 영향받는 소프트웨어

PHP