🔍 CVE-2026-35441

6.5
CVSS Score
MEDIUM
2026-04-06
2026-07-24 21:10
✅ 완료

🇰🇷 한글 설명

Directus 11.17.0 미만 버전의 GraphQL 엔드포인트에서 리졸버 호출 중복 제거가 이루어지지 않는 취약점이 발견되었습니다. 인증된 사용자가 GraphQL 별칭(aliasing)을 사용하여 복잡한 관계형 쿼리를 단일 요청 내에서 반복 실행함으로써 데이터베이스 부하를 급격히 증가시킬 수 있습니다. 이는 CPU, 메모리 및 I/O 자원 고갈을 유발하여 서비스 거부(DoS) 상태를 초래할 수 있습니다.

💡 쉬운 설명

해커가 하나의 요청 안에 아주 복잡한 질문을 수백 개씩 겹쳐서 보내 서버를 과부하 상태로 만드는 공격입니다. 이로 인해 웹사이트가 매우 느려지거나 아예 멈춰버릴 수 있습니다.

🇺🇸 원문 (English)

Directus is a real-time API and App dashboard for managing SQL database content. Prior to 11.17.0, Directus' GraphQL endpoints (/graphql and /graphql/system) did not deduplicate resolver invocations within a single request. An authenticated user could exploit GraphQL aliasing to repeat an expensive relational query many times in a single request, forcing the server to execute a large number of independent complex database queries concurrently, multiplying database load linearly with the number of aliases. The existing token limit on GraphQL queries still permitted enough aliases for significant resource exhaustion, while the relational depth limit applied per alias without reducing the total number executed. Rate limiting is disabled by default, meaning no built-in throttle prevented this from causing CPU, memory, and I/O exhaustion that could degrade or crash the service. Any authenticated user, including those with minimal read-only permissions, could trigger this condition. This vulnerability is fixed in 11.17.0.

📍 영향받는 시스템

Directus 11.17.0 미만 모든 버전

⚔️ 공격 벡터

인증된 사용자가 GraphQL 별칭(aliasing)을 이용해 다수의 복잡한 관계형 쿼리를 단일 요청에 포함시켜 전송

🛡️ 대응 방법

Directus를 최신 보안 패치가 적용된 11.17.0 이상의 버전으로 업데이트하십시오.

🔧 검증 코드

출력된 버전 번호가 11.17.0보다 낮으면 취약한 상태이며, 11.17.0 이상이면 안전합니다.

Shell / Script
npm list directus | grep -E 'directus@([0-9]+\.[0-9]+\.[0-9]+)'

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H

💻 영향받는 소프트웨어

Spring for GraphQL