🇰🇷 한글 설명
phpBB 2.0.17 이하에서 register_globals가 활성화되고 session_start가 호출되지 않은 경우, 공격자가 $_SESSION과 $HTTP_SESSION_VARS를 배열 대신 문자열로 설정하여 array_merge 호출을 실패시키고 보안 검증을 우회할 수 있는 취약점입니다. 세션 처리 로직의 불완전한 검증으로 인한 인증 우회 공격이 가능합니다.
💡 쉬운 설명
phpBB 게시판 소프트웨어에서 세션 정보를 잘못 처리할 수 있는 결함이 있습니다. 공격자가 이를 악용하여 로그인 없이 관리자 권한으로 접근할 수 있습니다.
🇺🇸 원문 (English)
phpBB 2.0.17 and earlier, when register_globals is enabled and the session_start function has not been called to handle a session, allows remote attackers to bypass security checks by setting the $_SESSION and $HTTP_SESSION_VARS variables to strings instead of arrays, which causes an array_merge function call to fail.
📍 영향받는 시스템
phpBB 2.0.17 이하 (register_globals 활성화된 PHP 환경)
⚔️ 공격 벡터
HTTP GET/POST 요청으로 $_SESSION 변수를 직접 조작하여 세션 검증 우회
🛡️ 대응 방법
phpBB를 2.0.18 이상으로 업그레이드, PHP register_globals 비활성화, session_start() 호출 확인
🔧 검증 코드
register_globals가 On이면 취약함. php.ini에서 register_globals=Off 또는 제거된 상태(PHP 5.4+)이면 안전함.
grep -r 'register_globals' /etc/php*/*/conf.d/*.ini 2>/dev/null || php -r 'echo ini_get("register_globals") ? "VULNERABLE" : "SAFE";'