RATATOSKRATATOSK
로그인

OpenFGA

v1.18.0Security
2026년 6월 17일

v1.18.0은 OIDC 인증 우회와 preshared key 타이밍 취약점 두 가지 보안 버그를 수정합니다. MySQL 사용자는 스키마 마이그레이션으로 인해 업그레이드 전 유지보수 시간을 반드시 확보해야 합니다.

  • breakingMySQL 사용자: 서버 기동 시 auto-migration 실행 금지

    마이그레이션 008은 tuple 및 changelog 테이블에 공유 락을 획득합니다. 데이터가 많은 프로덕션 환경에서는 Write 작업이 장시간 차단될 수 있습니다. collation_migrations.md 운영 가이드를 먼저 읽고, 유지보수 시간을 잡아 마이그레이션을 수동으로 실행하세요. auto-migration 옵션은 반드시 끄세요.

  • securityOIDC audience 우회 취약점 — 업그레이드 전 설정 확인 필수

    authn.oidc.audience를 설정하지 않으면 JWT audience 검증이 무음으로 건너뛰어졌고, 신뢰된 issuer가 발급한 모든 토큰이 수락됐습니다. 업그레이드 후에는 issuer와 audience가 모두 없으면 서버가 기동하지 않습니다. 배포 설정에 authn.oidc.audience가 명시돼 있는지 미리 확인하세요.

  • securityPreshared key 타이밍 사이드채널 수정 — 키 교체 고려

    기존 map lookup 기반 preshared key 검증은 응답 시간 차이로 유효한 키 바이트를 추측할 수 있었습니다. 이제 constant-time 비교로 수정됐습니다. 즉각적인 조치는 불필요하지만, 이 키가 신뢰할 수 없는 네트워크 경로에 오랫동안 노출됐다면 키를 교체하는 것이 좋습니다.

주요 변경 (4)

  • MySQL 스키마 마이그레이션 008: 식별자 비교를 대소문자 구분(case-sensitive)으로 변경, tuple·changelog 테이블에 공유 락(shared lock) 획득
  • Preshared key 인증에 constant-time 비교 도입 — 이전 map lookup 방식의 타이밍 사이드채널 차단
  • OIDC 설정 검증 강화: authn.oidc.issuer 또는 authn.oidc.audience 누락 시 서버 기동 거부, 기존의 JWT audience 조용한 우회 방지
  • MySQL 식별자 비교 동작이 Postgres·SQLite와 동일하게 대소문자 구분으로 통일