🇰🇷 한글 설명
YunaiV yudao-cloud 2026.01 이하 버전의 OAuth2TokenServiceImpl.getAccessToken 함수에서 부적절한 인증 취약점이 발견되었습니다. 원격에서 공격이 가능하며 공개된 익스플로잇이 존재합니다. 벤더는 액세스 토큰 조회가 불가능할 때 유효한 리프레시 토큰을 허용하는 호환성 경로를 의도적으로 유지한다고 밝혔습니다.
💡 쉬운 설명
로그인 확인을 할 때 원래 필요한 검사를 우회할 수 있는 허점이 있습니다. 공격자가 유효한 리프레시 토큰만 있으면 다른 사람의 권한으로 시스템에 접근할 수 있습니다.
🇺🇸 원문 (English)
A security flaw has been discovered in YunaiV yudao-cloud up to 2026.01. This impacts the function getAccessToken of the file yudao-module-system-biz/src/main/java/io/github/ruoyi/common/oauth2/service/impl/OAuth2TokenServiceImpl.java. Performing a manipulation results in improper authentication. The attack can be initiated remotely. The exploit has been released to the public and may be used for attacks. The vendor explains: "[W]e intentionally retain the existing generic compatibility path that accepts a valid, unexpired stored refresh token when an access-token lookup is unavailable, for integrations such as reports and WebSocket. We are not introducing strict access-token-only verification, new revocation behavior or a separate trusted-entry API. This is a retained compatibility decision, not a claim that this behavior follows the standard OAuth separation or that every identity/revocation scenario has been eliminated."
📍 영향받는 시스템
YunaiV yudao-cloud 2026.01 이하 버전 (yudao-module-system-biz 모듈)
⚔️ 공격 벡터
원격에서 유효하거나 만료되지 않은 리프레시 토큰을 이용해 액세스 토큰 검증을 우회하여 인증 없이 API에 접근
🛡️ 대응 방법
yudao-cloud를 최신 버전으로 업데이트하고, 리프레시 토큰만으로 인증되는 호환성 경로를 비활성화하며, 엄격한 액세스 토큰 전용 검증과 토큰 폐기 로직을 적용
🔧 검증 코드
명령어 출력에 getAccessToken 메서드 구현이 나타나면 소스가 존재하는 것이며, 리프레시 토큰 폴백 로직 여부를 코드에서 직접 확인하고 해당 버전이 2026.01 이하인지 pom.xml 또는 릴리스 태그로 확인해야 합니다.
grep -rn 'getAccessToken' $(find / -name 'OAuth2TokenServiceImpl.java' 2>/dev/null | head -1) 2>/dev/null | head -5
📊 CVSS Vector String
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L
💻 영향받는 소프트웨어
IBM Verify Identity Access