🇰🇷 한글 설명
Omnispace Agora Project 26.10.0 미만 버전에서 보안이 취약한 난수 생성 문제가 발견되었습니다. PHP의 uniqid() 함수가 서버의 마이크로초 시간을 기반으로 작동하여, 공격자가 계정 생성 시간을 예측함으로써 임시 또는 기본 비밀번호를 계산하고 계정을 탈취할 수 있습니다.
💡 쉬운 설명
비밀번호를 만들 때 사용하는 숫자가 완전히 무작위가 아니라 서버 시간을 기반으로 만들어지는 문제입니다. 공격자가 계정이 만들어진 시간을 알면 비밀번호를 맞출 수 있어 계정을 뺏길 위험이 있습니다.
🇺🇸 원문 (English)
Omnispace Agora Project before 26.10.0 contains an insecure randomness vulnerability that allows attackers to predict temporary or default account passwords generated by Txt::defaultPassword() using PHP's uniqid() function based on server time in microseconds. Attackers who observe or approximate the account creation time can compute the predictable password and take over the account before the legitimate user logs in.
📍 영향받는 시스템
Omnispace Agora Project version < 26.10.0
⚔️ 공격 벡터
서버 시간을 이용한 예측 가능한 난수 생성 및 계정 탈취
🛡️ 대응 방법
Omnispace Agora Project를 26.10.0 이상의 최신 버전으로 업데이트하십시오.
🔧 검증 코드
코드 내에 Txt::defaultPassword() 함수가 존재하고 내부에서 uniqid()를 사용하는지 확인하여 취약 여부를 판단합니다.
php -r 'echo function_exists("uniqid") ? "uniqid_exists" : "not_found";' && grep -r "Txt::defaultPassword" /path/to/agora/project