RATATOSKRATATOSK
로그인

Open Policy Agent (OPA)

v1.19.0Security
2026년 7월 30일

OPA v1.19.0은 Compile API의 SQL 주입 취약점을 수정하고 := 안전성 체크를 강화합니다(파괴적 변경). WASM 런타임을 순수 Go wazero로 교체해 시작 시간을 단축하고 오버헤드를 줄였습니다. 문자열 함수도 확장되고 REPL도 개선되었습니다.

  • securityCompile API의 SQL 주입(인용부호 없는 식별자) 수정

    Compile API 필터 내 직접 식별자가 아닌 필드 세그먼트는 UCAST-SQL 경계에서 인용부호로 둘러싸고 이스케이프됩니다. input.fruits[input.column] 같은 동적 키 선택을 하는 정책이 대상입니다. 수정은 v1.19.0에 포함됩니다.

  • breaking:= 안전성 체크 강화

    := 연산자의 변수 안전성 체크가 강화되었습니다. 이전에 컴파일되던 정책 중 우변이 좌변 통일을 통해서만 안전해지는 경우 이제 rego_unsafe_var_error로 실패합니다. v1.19.0으로 업그레이드하기 전에 이에 의존하는 정책을 수정해야 합니다.

  • breaking인식되지 않는 설정 옵션 보고로 변경

    인식되지 않는 최상위 설정 옵션이 조용히 무시되지 않고 오류로 보고됩니다. 미알려진 필드를 포함한 설정은 v1.19.0에서 파싱에 실패합니다.

주요 변경 (7)

  • 보안: Compile API SQL 주입(동적 키 필터) 수정: 필드 세그먼트 인용부호 처리 및 이스케이프
  • 파괴적 변경: := 연산자 안전성 체크 강화; 좌변 통일에만 의존하는 정책은 실패
  • 파괴적 변경: 인식되지 않는 설정 옵션을 무시에서 보고로 변경
  • WASM 런타임을 wasmtime-go에서 순수 Go wazero로 전환; C 도구 체인 불필요, 콜드 스타트 약 73% 빨라짐, 웜 평가 약 29% 빨라짐
  • 새로운 문자열 함수 strings.split_n으로 분할 문자열의 처음/끝 n개 부분 추출
  • REPL 행 리더를 peterh/liner에서 reeflective/readline으로 교체(브래킷 붙여넣기 지원); 히스토리 자동 JSON-lines 형식 마이그레이션
  • Go 의존성 1.26.5 업데이트
Open Policy Agent (OPA) 스택에 추가

조치가 필요한 릴리스가 나왔을 때 주간 메일로 알려드립니다. 이번 릴리스의 보안 패치와 브레이킹 체인지 같은 것들입니다.

스택에 추가