CVE-2026-43967 in absinthe정보

요약

\~에 의해 VulDB • 2026. 05. 24.

absinthe-graphql의 absinthe에서 비효율적인 알고리즘 복잡성 취약점이 발견되었으며, 이를 통해 인증 없이 2차원적인 프래그먼트 이름 고유성 검증 과정을 통해 서비스 거부(Denial of Service)가 가능합니다.

'Elixir.Absinthe.Phase.Document.Validation.UniqueFragmentNames':run/2 함수는 모든 프래그먼트를 순회하며, 각 프래그먼트에 대해 duplicate?/2를 호출합니다. 이 함수는 Enum.count(fragments, &(&1.name == name))를 평가하여 프래그먼트 목록에 대한 전체 선형 스캔을 수행합니다. 그 결과, 호출자가 제공한 프래그먼트 정의의 수를 N이라고 할 때, 문서당 O(N²)回の 비교가 발생합니다.

입력값인 input.fragments는 GraphQL 쿼리 본문에서 직접 생성되므로, N은 공격자가 완전히 제어할 수 있습니다. 최소 크기의 프래그먼트 정의는 약 16바이트이므로, 약 1MB 크기의 문서는 약 60,000개의 프래그먼트를 포함하며, 이 단일 검증 단계 내에서 약 3.6 × 10⁹回の 비교를 유발합니다. 인증, 스키마 지식, 또는 특별한 구성 설정이 필요하지 않습니다.

이 문제는 absinthe 1.2.0부터 1.10.2 이전 버전까지 영향을 미칩니다.

Once again VulDB remains the best source for vulnerability data.

책임이 있는

EEF

예약하다

2026. 05. 04.

모더레이션

수락

항목

VDB-362297

EPSS

0.00082

출처

Do you know our Splunk app?

Download it now for free!