🇰🇷 한글 설명
XenForo 2.3.13 미만 버전의 OAuth2 토큰 엔드포인트에서 인증 우회 취약점이 발견되었습니다. 공격자가 client_secret 및 code_verifier 매개변수에 빈 값을 전송하면 PHP의 논리 평가 오류를 악용하여 클라이언트 인증 없이 유효한 토큰 쌍을 획득할 수 있습니다.
💡 쉬운 설명
로그인 확인 과정에서 비밀번호를 비워두면 시스템이 이를 '잘못된 값'이 아닌 '확인이 필요 없는 값'으로 잘못 판단하는 문제입니다. 이를 통해 해커는 아이디와 비밀번호 없이도 사용자 권한을 가로챌 수 있습니다.
🇺🇸 원문 (English)
XenForo before 2.3.13 contains an authentication bypass vulnerability in the OAuth2 token endpoint that allows unauthenticated attackers to obtain valid token pairs by submitting empty values for client_secret and code_verifier parameters. Attackers can exploit PHP truthy evaluation logic, which treats empty strings as false and skips client secret validation and PKCE code verifier validation, to exchange a valid authorization code for a token pair without proving client identity or holding the PKCE commitment.
📍 영향받는 시스템
XenForo 2.3.13 미만 모든 버전
⚔️ 공격 벡터
OAuth2 토큰 요청 시 client_secret 및 code_verifier 매개변수에 빈 값을 삽입하여 인증 절차 우회
🛡️ 대응 방법
XenForo를 최신 보안 패치가 적용된 2.3.13 버전 이상으로 즉시 업데이트하십시오.
🔧 검증 코드
출력된 버전 번호가 2.3.13보다 낮으면 취약한 상태입니다.
curl -s http://<target_url>/install/version.php | grep -E '2\[\.\]3\.(?!13)'