🔍 CVE-2024-37155

6.5
CVSS Score
MEDIUM
2024-11-18
2026-06-17 07:37
✅ 완료

🇰🇷 한글 설명

OpenCTI 6.1.9 미만 버전에서 GraphQL 인트로스펙션(Introspection) 쿼리를 방지하는 정규식 검증을 우회할 수 있는 취약점이 발견되었습니다. 공격자는 줄바꿈 문자( )를 제거하는 방식으로 검증을 통과하여 시스템의 GraphQL 엔드포인트 정보를 탈취하거나 서비스 거부(DoS) 공격을 수행할 수 있습니다.

💡 쉬운 설명

보안 검사 규칙의 허점을 이용해 시스템 내부 정보를 몰래 들여다볼 수 있는 취약점입니다. 이를 통해 해커가 시스템 구조를 파악하거나 서비스를 마비시킬 위험이 있습니다.

🇺🇸 원문 (English)

OpenCTI is an open source platform allowing organizations to manage their cyber threat intelligence knowledge and observables. Prior to version 6.1.9, the regex validation used to prevent Introspection queries can be bypassed by removing the extra whitespace, carriage return, and line feed characters from the query. GraphQL Queries in OpenCTI can be validated using the `secureIntrospectionPlugin`. The regex check in the plkugin can be bypassed by removing the carriage return and line feed characters (`\r\n`). Running a curl command against a local instance of OpenCTI will result in a limited error message. By running the same Introspection query without the `\r\n` characters, the unauthenticated user is able to successfully run a full Introspection query. Bypassing this restriction allows the attacker to gather a wealth of information about the GraphQL endpoint functionality that can be used to perform actions and/or read data without authorization. These queries can also be weaponized to conduct a Denial of Service (DoS) attack if sent repeatedly. Users should upgrade to version 6.1.9 to receive a patch for the issue.

📍 영향받는 시스템

OpenCTI version < 6.1.9

⚔️ 공격 벡터

정규식 검증을 우회하기 위해 쿼리에서 줄바꿈 문자( )를 제거한 후 GraphQL 인트로스펙션 요청 전송

🛡️ 대응 방법

OpenCTI를 최신 패치 버전인 6.1.9 이상으로 업그레이드

🔧 검증 코드

OpenCTI 관리 콘솔 또는 API 응답을 통해 설치된 버전이 6.1.9 미만인지 확인합니다.

Shell / Script
curl -s http://<OPENCTI_URL>/api/graphql | grep -i 'version' || echo 'Check version via management console'

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Spring for GraphQL