AWS Amplify API Category CVE-2026-108096, SQL 기반 GraphQL 쿼리 리졸버 권한 검증 취약점 대응

AWS가 Amplify API Category 관련 보안 공지를 통해 CVE-2026-108096을 공개했다. 이 이슈는 SQL 백엔드를 사용하는 GraphQL 모델에서 생성된 쿼리 리졸버의 권한 검증이 부적절해, 인증을 통과한 사용자가 특정하게 조작된 요청으로 다른 사용자의 데이터에 접근할 수 있는 문제다. AppSync와 Amplify 기반 API를 운영하는 팀이라면 패키지 버전과 배포된 스키마·구성 경로를 함께 점검할 필요가 있다.
취약점 개요와 영향 범위
이번 이슈는 AWS Amplify API Category가 GraphQL 데이터 모델과 권한 규칙을 정의하는 과정에서 사용하는 구성요소 중, SQL 기반 모델용 쿼리 리졸버 생성 로직에 해당한다. 문제는 인증 자체를 우회하는 형태라기보다, 인증된 사용자가 애플리케이션 내부 다른 사용자의 소유 데이터까지 읽을 수 있게 되는 권한 분리 실패에 가깝다.
영향 범위는 @aws-amplify/graphql-index-transformer 2.2.0 이상 3.1.2 미만, @aws-amplify/graphql-api-construct 1.4.0 이상 1.21.4 미만, @aws-amplify/data-construct 1.17.4 미만으로 제시됐다. Amplify를 직접 사용하는 서비스뿐 아니라, 사내 표준 템플릿이나 IaC 저장소에서 이 패키지들이 간접 의존성으로 포함됐는지도 함께 확인해야 한다.
운영자가 먼저 확인할 항목
우선 현재 배포에 사용한 패키지 버전을 확인해 영향 범위에 포함되는지 식별해야 한다. 특히 CI/CD 파이프라인에서 lock 파일을 오래 유지하거나 내부 패키지 미러를 사용하는 환경은 개발 저장소의 선언 버전과 실제 배포 버전이 다를 수 있어 주의가 필요하다.
영향 버전에 해당하면 AWS가 제시한 경계 버전 이상으로 업데이트하는 것이 우선이다. 이후에는 내부 공용 템플릿, 프로젝트 생성 스캐폴딩, 베이스 이미지, 빌드 캐시, 사내 아티팩트 저장소에 취약한 버전이 남아 있는지 점검해 재배포 시 다시 포함되지 않도록 관리하는 편이 안전하다.
서비스 운영 측면에서는 동일 애플리케이션 사용자 간 데이터 소유권 분리가 핵심인 API를 우선 순위로 점검해야 한다. 멀티테넌트 구조나 사용자별 레코드 분리가 중요한 워크로드라면, 관련 GraphQL 쿼리에 대해 예상하지 않은 교차 조회가 가능한지 접근 로그와 애플리케이션 레벨 감사 기록을 함께 살펴보는 것이 현실적인 대응이다.
클라우드·호스팅 환경에서의 점검 의미
이 이슈는 인프라 취약점이라기보다 애플리케이션 데이터 접근 통제 문제에 가깝다. 따라서 서버호스팅이나 코로케이션처럼 애플리케이션을 혼합 운영하는 조직에서도, Amplify와 AppSync를 사용하는 서비스가 있다면 네트워크 차단만으로는 충분하지 않고 애플리케이션 권한 모델을 기준으로 영향을 판단해야 한다.
한국과 일본 리전 운영 여부보다 중요한 것은 동일 코드베이스가 여러 환경에 복제돼 있을 가능성이다. 운영·스테이징·개발 환경에서 같은 IaC 모듈을 재사용했다면, 외부 노출 서비스뿐 아니라 내부 테스트 API에도 영향 버전이 남아 있을 수 있으므로 배포 단위별 버전 확인이 필요하다.
핵심 포인트
- CVE-2026-108096은 AWS Amplify API Category의 SQL 기반 GraphQL 쿼리 리졸버 권한 검증 문제다.
- 인증된 원격 사용자가 조작된 쿼리로 다른 사용자 소유 레코드를 읽을 수 있다.
- 영향 버전은 @aws-amplify/graphql-index-transformer >=2.2.0, <3.1.2, @aws-amplify/graphql-api-construct >=1.4.0, <1.21.4, @aws-amplify/data-construct <1.17.4다.
- 운영팀은 영향 버전 확인, 권고 버전 업데이트, 내부 미러·템플릿·표준 이미지 잔존 여부를 함께 점검해야 한다.