Dapr
v1.17.19Orchestration & Management보안 취약점을 바로잡은 유지 보수 릴리스입니다. 접근 제어, 인증, 격리, 서비스 거부, 데이터 무결성 관련 동작을 수정했으며, 공개 메타데이터 쓰기와 gRPC 메타데이터 크기 제한에는 호환성이 바뀌는 내용이 포함됩니다.
조치 필요 (2)
security작업 대상 키 접두사의 구분자 처리
스케줄러가 작업 대상의 키 접두사 뒤에 항상 구분자를 붙입니다.
id_prefix_match는 문서에 정의된 대로 액터 알림 ID에만 적용됩니다.securitySentry 호스트 값 해석 수정
Sentry가
X-Forwarded-Host또는Host헤더의 호스트 값을 한 번만 해석합니다. 이 동작은--oidc-allowed-hosts,--jwt-issuer,--oidc-jwks-uri와 관련된 호스트 처리에 적용됩니다.
영향 확인 (9)
securitymedium퍼센트 인코딩 상태 확인 경로의 토큰 검사
퍼센트 인코딩된 상태 확인 경로를 사용하는 경우 적용됩니다.
API 토큰 미들웨어가 라우터와 같은 이스케이프된 경로를 비교합니다. 따라서 퍼센트 인코딩된 상태 확인 경로에도
DAPR_API_TOKEN이 필요합니다.security서비스 호출 접근 제어의 메서드 비교 수정
HTTP 앱을 실행하는 경우 적용됩니다.
HTTP 앱의 서비스 호출 접근 제어가 앱에 전달되는 메서드를 기준으로 정책을 확인합니다. 퍼센트 인코딩 문자를 한 번 디코딩한 뒤 소문자로 바꾼 메서드와 정책을 비교합니다.
security
WatchJobs내부 액터 검증 강화호출하는 앱과 네임스페이스에 속하지 않는 내부 액터 형식(
dapr.)으로internal. * WatchJobs를 사용하는 경우 적용됩니다.스케줄러가 호출하는 앱과 네임스페이스에 속하지 않는 내부 액터 형식인
dapr.을 선언한internal. * WatchJobs스트림을PermissionDenied로 거부합니다.security내부 포트 gRPC 프록시 대상 제한
내부 포트를 사용하는 경우 적용됩니다.
내부 포트의 gRPC 프록시는 로컬 앱으로 향하는 호출만 처리합니다. 다른 대상으로 향하는 호출에는
PermissionDenied를 반환합니다.security공개 포트의 읽기 전용 엔드포인트 제한
--dapr-public-port를 설정하는 경우 적용됩니다.--dapr-public-port는 이제 읽기 전용 엔드포인트만 제공합니다. 공개 포트에서는GET /v1.,0/metadata GET /v1.,0/healthz GET /v1.를 사용할 수 있고,0/healthz/outbound PUT /v1.는 주 API 포트에서 계속 사용할 수 있습니다.0/metadata/{key} security암호화 값의 키 이름 접미사 처리
primaryEncryptionKey를 설정하는 경우 적용됩니다.primaryEncryptionKey를 사용할 때 저장 시 Dapr가 덧붙이는||<key name>접미사가 빠지던 암호화 값 처리를 수정했습니다.security짧은 암호문 처리 오류 수정
GetState또는GetBulkState를 사용하는 경우 적용됩니다.논스보다 짧은 암호문을
GetState또는GetBulkState에서 처리할 때 발생하던 문제를 수정했습니다. 이전에는 gRPC API에서 패닉으로 사이드카가 중단되고 HTTP API에서는 요청이 실패했습니다.security
datacontenttype이 없는 아웃박스 메시지 처리트랜잭션 아웃박스를 사용하는 경우 적용됩니다.
메시지에
datacontenttype이 없을 때 트랜잭션 아웃박스가 사이드카를 중단시키던 문제를 수정했습니다.securitygRPC 메타데이터 최대 크기 제한 변경
gRPC API를 사용하는 경우 적용됩니다.
gRPC API 호출과 gRPC 프록시 호출에서 메타데이터가 64 KiB를 초과하면 실패합니다.
--read-buffer-size가 더 크게 설정된 경우에는 그 값이 최대 크기로 적용되며, 초과한 호출은 gRPCInternal오류를 반환합니다.
조치가 필요한 릴리스가 나왔을 때 주간 메일로 알려드립니다. 이번 릴리스의 보안 패치 같은 것들입니다.