🔍 CVE-2026-78551

0.0
CVSS Score
UNKNOWN
2026-08-24
2026-10-12 21:10
✅ 완료

🇰🇷 한글 설명

RansomLook의 인증 엔드포인트에서 사용자 이름을 열거할 수 있는 타이밍 공격 취약점과 무제한 비밀번호 대입 공격이 가능한 취약점이 발견되었습니다. 공격자는 응답 시간 차이를 이용해 유효한 계정을 식별하거나, 과도한 인증 시도를 통해 CPU 자원을 고갈시켜 서비스 거부(DoS)를 유발할 수 있습니다.

💡 쉬운 설명

해커가 로그인 화면에서 아이디가 맞는지 틀린지 알아내거나, 비밀번호를 무작위로 계속 입력하여 서버를 마비시킬 수 있는 문제입니다. 로그인 시도 횟수를 제한하지 않아 발생하는 보안 허점입니다.

🇺🇸 원문 (English)

RansomLook contains multiple weaknesses in its authentication endpoint that allow an unauthenticated remote attacker to enumerate valid usernames, perform unrestricted password-guessing attacks, and potentially exhaust application worker resources. For local authentication, the login implementation previously checked whether a submitted username existed before invoking the password hash verification function. Requests containing a nonexistent username therefore returned significantly faster than requests for valid accounts, for which the computationally expensive password verification routine was executed. A remote attacker could measure these response-time differences to determine which usernames correspond to valid RansomLook accounts. In addition, the /login endpoint did not restrict the number or frequency of failed authentication attempts. An attacker could consequently perform password brute-force, dictionary, password-spraying, or credential-stuffing attacks against known accounts without server-side throttling. For valid usernames, each authentication attempt also invokes the password key-derivation function, which consumes a significant amount of CPU time. A sufficiently high rate of login attempts could therefore occupy the application's synchronous Gunicorn workers and cause a denial of service affecting the entire application. The issue has been addressed by always performing password verification using a randomly generated dummy password hash when the supplied username does not exist, eliminating the username-dependent timing discrepancy. Failed authentication attempts are additionally rate-limited per client IP address using Valkey/Redis, with five failed attempts within five minutes resulting in a one-hour block. The reverse-proxy configuration was also updated so that the application derives the client address from a trusted X-Forwarded-For value that cannot be overridden by a client-supplied header.

📍 영향받는 시스템

RansomLook (패치 적용 전 버전)

⚔️ 공격 벡터

인증 엔드포인트에 대한 타이밍 공격 및 무제한 브루트포스/DoS 공격

🛡️ 대응 방법

더미 해시를 사용한 타이밍 공격 방지 적용 및 IP 기반 로그인 시도 횟수 제한(Rate-limiting) 설정

🔧 검증 코드

존재하지 않는 아이디와 존재하는 아이디로 요청했을 때의 응답 시간 차이가 거의 없는지 확인합니다.

Shell / Script
curl -s -o /dev/null -w "%{time_total}\n" https://<target_url>/login

💻 영향받는 소프트웨어

IBM WebSphere Application Server