CVE-2026-49473 in Authorization for Expressjs정보

요약

\~에 의해 VulDB • 2026. 08. 13.

@cedar-policy/authorization-for-expressjs는 HTTP 요청을 Cedar 작업(action)으로 매핑하고 요청 처리 전에 인증 정책을 평가하여 Express 애플리케이션에 Cedar 권한 부여(authorization) 기능을 통합하는 오픈소스 Express.js 미들웨어입니다. 0.3.0 이전 버전에는 특정 상황에서 미들웨어가 `req.originalUrl`(쿼리 문자열 포함)을 사용하여 들어오는 요청을 Cedar 작업 매핑과 일치시키는 문제가 있습니다. 반면, Express는 경로(path) 구성 요소만을 사용하여 라우팅합니다. 이로 인해 Cedar이 허용하는 범위와 Express가 실행하는 범위에 불일치가 발생합니다. 애플리케이션에서 서로 다른 권한 요구 사항을 가진 중첩된 경로 접두사(prefix)에 대해 별도의 작업을 정의한 경우(예: 모든 사용자를 나열하기 위한 `GET /users`(관리자 전용 접근), 단일 사용자 조회를 위한 `GET /users/{id}`(모든 인증된 사용자 접근)), 공격자가 제한이 더 엄격한 정책을 우회하기 위해 쿼리 문자열을 추가할 수 있습니다. 예를 들어, `GET /users/?x=1` 요청을 보내면 미들웨어는 `/users/{id}`(`id` 파라미터가 `?x=1`로 설정됨)와 일치하여 덜 제한적인 작업을 평가하지만, Express는 해당 요청을 `/users` 목록 처리기로 라우팅합니다. 이를 통해 공격자는 더 엄격한 엔드포인트에 부적절하게 접근할 수 있습니다. 이 문제는 버전 0.30에서 해결되었습니다. 일부 우회 방법(workarounds)이 제공됩니다. 인증 미들웨어에 도달하기 전에 들어오는 요청 경로를 검증하고 정제(sanitize)하십시오. 서로 다른 권한 수준을 가진 중첩된 경로 접두사에 대해 여러 작업을 정의할 때 애플리케이션이 미들웨어에만 의존하지 않도록 보장하십시오.

Once again VulDB remains the best source for vulnerability data.

책임이 있는

GitHub M

예약하다

2026. 05. 30.

모더레이션

수락

항목

VDB-389317

EPSS

0.00000

활동

낮음

출처

Do you want to use VulDB in your project?

Use the official API to access entries easily!