🔍 CVE-2026-92913

7.4
CVSS Score
HIGH
2026-09-17
2026-09-22 20:43
✅ 완료

🇰🇷 한글 설명

AVideo의 특정 커밋 버전에서 계정 활성화 및 로그인 페어링 코드를 생성할 때 암호학적으로 취약한 의사 난수 생성기를 사용합니다. 공격자가 예측 가능한 코드를 추측하여 인증 없이 타겟 계정의 이메일과 1년간 유효한 인증 해시를 탈취함으로써 계정을 완전히 장악할 수 있습니다.

💡 쉬운 설명

로그인할 때 사용하는 일회용 비밀번호가 너무 단순하게 만들어져서 해커가 쉽게 맞출 수 있는 상태입니다. 이를 통해 해커가 남의 계정에 몰래 접속하여 1년 동안 주인처럼 활동할 수 있는 심각한 보안 결함입니다.

🇺🇸 원문 (English)

AVideo through commit c3edcc274c389816d434acadac07ee78eaf330c1 uses a cryptographically weak pseudo-random number generator when creating account activation / login pairing codes. getRandomCode() in objects/functions.php derives the code entirely from uniqid() (sprintf('%08x%05x', seconds, microseconds)) with a single non-CSPRNG rand() character used only as padding, reducing the code space to roughly 36 x 10^6 (~2^25) values for a known generation second. Because plugin/API/set.json.php?APIName=login_code can be called without authentication, it also serves as an oracle for the server's exact microtime. An unauthenticated remote attacker who guesses a valid, unexpired code (codes expire after 10 minutes) can redeem it at plugin/API/get.json.php?APIName=login_code to obtain the target account's email address and a User::getUserHash(users_id, '+1 year') value, a credential accepted in place of the account password for one year, resulting in account takeover. No patched version is available.

📍 영향받는 시스템

AVideo (commit c3edcc274c389816d434acadac07ee78eaf330c1 포함 이전 버전)

⚔️ 공격 벡터

인증되지 않은 원격 공격자가 취약한 난수 생성 알고리즘을 이용해 페어링 코드를 예측하고 API를 통해 계정 정보를 탈취함

🛡️ 대응 방법

현재 패치된 버전이 없으므로, 취약한 API 호출을 차단하거나 난수 생성 로직을 CSPRNG 기반으로 수정하는 긴급 패치가 필요함

🔧 검증 코드

현재 프로젝트의 Git 커밋 해시가 취약한 커밋(c3edcc27...)인지 확인하여 취약 여부를 판단합니다.

Shell / Script
git rev-parse HEAD | grep -q 'c3edcc274c389816d434acadac07ee78eaf330c1' && echo 'VULNERABLE' || echo 'NOT VULNERABLE'

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N

💻 영향받는 소프트웨어

Log Server