🇰🇷 한글 설명
Axios Cache Interceptor 1.11.1 미만 버전에서 인증 토큰을 무시하고 URL만으로 캐시 키를 생성하여 발생하는 권한 우회 취약점입니다. 서버가 Vary: Authorization 헤더를 통해 응답 차별화를 요청해도 이를 무시하므로, 서로 다른 사용자의 요청이 동일한 캐시 데이터를 공유하게 됩니다. 이로 인해 다른 사용자의 데이터가 유출될 수 있는 보안 위험이 존재합니다.
💡 쉬운 설명
인터넷 서비스가 데이터를 빠르게 보여주려고 저장해둔 '복사본(캐시)'을 만들 때, 사용자마다 다른 열쇠(인증 토큰)를 확인하지 않고 똑같은 복사본을 보여주는 문제입니다. 이 때문에 다른 사람의 개인정보가 담긴 데이터가 나에게 잘못 전달될 수 있습니다.
🇺🇸 원문 (English)
Axios Cache Interceptor is a cache interceptor for axios. Prior to version 1.11.1, when a server calls an upstream service using different auth tokens, axios-cache-interceptor returns incorrect cached responses, leading to authorization bypass. The cache key is generated only from the URL, ignoring request headers like `Authorization`. When the server responds with `Vary: Authorization` (indicating the response varies by auth token), the library ignores this, causing all requests to share the same cache regardless of authorization. Server-side applications (APIs, proxies, backend services) that use axios-cache-interceptor to cache requests to upstream services, handle requests from multiple users with different auth tokens, and upstream services replies on `Vary` to differentiate caches are affected. Browser/client-side applications (single user per browser session) are not affected. Services using different auth tokens to call upstream services will return incorrect cached data, bypassing authorization checks and leaking user data across different authenticated sessions. After `v1.11.1`, automatic `Vary` header support is now enabled by default. When server responds with `Vary: Authorization`, cache keys now include the authorization header value. Each user gets their own cache.
📍 영향받는 시스템
axios-cache-interceptor 1.11.1 미만 버전 (서버 사이드 애플리케이션)
⚔️ 공격 벡터
서로 다른 인증 토큰을 가진 사용자들이 동일한 URL로 요청을 보낼 때, 서버가 이전 사용자의 캐시된 응답을 반환하도록 유도하여 데이터 탈취
🛡️ 대응 방법
axios-cache-interceptor를 v1.11.1 이상 버전으로 업데이트
🔧 검증 코드
출력된 버전이 1.11.1 미만인지 확인하여 취약 여부를 판단합니다.
npm list axios-cache-interceptor
📊 CVSS Vector String
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
💻 영향받는 소프트웨어
IBM WebSphere Application Server