Dapr
v1.15.14Orchestration & Management서비스 호출 ACL을 완전히 우회할 수 있는 경로 순회 취약점 패치. 액세스 제어 정책을 사용하는 모든 Dapr 배포는 즉시 업그레이드해야 합니다.
security서비스 호출 ACL 사용 중이라면 즉시 업그레이드
이론상의 취약점이 아닙니다. 서비스 호출에 액세스 제어 정책을 적용 중이고 Dapr API에 신뢰할 수 없는 호출자가 접근 가능한 환경이라면, 현재 취약한 상태입니다. 특히 gRPC 경로는 메서드 문자열을 raw로 그대로 전달하기 때문에 위험도가 더 높습니다. 지금 바로 v1.15.14로 업그레이드하세요. 서비스 호출 비활성화나 API 완전 격리 외에는 별도의 임시 대응책이 없습니다.
breaking업그레이드 후 서비스 호출 메서드 경로 라우팅 검증 필요
이번 수정으로 모든 메서드 경로에 path.Clean 정규화가 적용되고, #, ?, 널 바이트, 제어 문자가 포함된 경로는 거부됩니다. 특히 gRPC에서 %2F를 경로 구분자로 사용하던 서비스가 있다면 동작이 달라질 수 있습니다. 프로덕션 배포 전에 서비스 간 호출 패턴을 반드시 테스트하세요.
securityDapr API 엔드포인트 접근 경로 전면 감사
이 취약점은 API 접근을 전제로 하므로, 실제 피해 범위는 네트워크 구성에 달려 있습니다. 업그레이드 후 어떤 워크로드와 네트워크 경로가 Dapr HTTP/gRPC API에 접근 가능한지 점검하세요. 사이드카 localhost 접근만 허용하는 구성이 가장 안전합니다. API를 더 넓은 범위에 노출하고 있다면, 이번 패치와 무관하게 접근 범위를 좁혀두는 것이 바람직합니다.
주요 변경 (5)
- admin%2F..%2Fpublic 같은 경로 순회 시퀀스로 서비스 호출 ACL 완전 우회 가능
- %23(#), %3F(?) 인코딩 문자로 ACL이 평가하는 경로와 실제 앱이 받는 경로가 달라지는 불일치 발생
- 단독 % 문자로 ACL 정규화 로직을 크래시시켜 정책 자체를 건너뛸 수 있었던 문제 수정
- path.Clean을 호출 진입점에서 적용하고 #, ?, 널 바이트, 제어 문자가 포함된 경로는 거부하도록 변경
- Go v1.25.9로 업데이트(1.24 라인 CVE 대응), ACL 경로에서 purell 의존성 제거