CVE-2026-71502 in CTI-Transmute정보

요약

\~에 의해 VulDB • 2026. 08. 07.

CTI-Transmute에는 서버에서 렌더링된 사용자 제어 데이터 내에서 Vue 템플릿 표현식 구분 기호의 불충분한 중화 처리로 인해 저장형 크로스 사이트 스크립팅(XSS) 취약점이 존재합니다.

인증되지 않은 공격자는 애플리케이션에 구성된 `[[ ... ]]` 구분 기호를 사용하여 이름이나 설명에 악성 Vue 표현식이 포함된 공개 변환(conversion)을 생성할 수 있습니다. 사용자 프로필 이름은 추가적인 삽입 벡터가 될 수도 있습니다. Jinja HTML 이스케이프 처리가 적용되지만, 결과 값이 나중에 Vue에서 컴파일되는 DOM 영역 내에 포함됩니다.

Vue는 공격자가 제어하는 값을 일반 텍스트가 아닌 템플릿 표현식으로 해석합니다. 공격자는 표현식 내에서 JavaScript `Function` 생성자에 접근하여 CTI-Transmute 출처의 보안 컨텍스트 임의로 JavaScript 코드를 실행할 수 있습니다. Vue 런타임 컴파일러가 `unsafe-eval` 정책 예외를 필요로 하기 때문에, 애플리케이션의 nonce 기반 콘텐츠 보안 정책(CSP)은 공격을 방지하지 못합니다.

악성 페이로는 애플리케이션에 저장되며 다른 사용자가 영향을 받는 페이지(예: 공개 변환 상세 페이지)를 열 때마다 실행됩니다. 피해자는 일반 사용자나 관리자일 수 있습니다. 성공적인 공격 시 공격자는 다음 작업을 수행할 수 있습니다:

* 애플리케이션을 통해 피해자에게 제공되는 데이터에 접근합니다. * 페이지에서 노출된 API 키, 토큰 또는 기타 민감한 정보를 추출합니다. * 피해자의 세션을 사용하여 인증된 작업을 수행합니다. * 변환이나 다른 애플리케이션 데이터를 수정합니다. * 관리자를 대상으로 함으로써 영향을 확대합니다.

시연된 페이로는 `[].constructor.constructor(...)`를 사용하여 JavaScript Function 생성체를 획득하고 임의 코드를 실행할 수 있습니다. 회귀 테스트에서는 짧은 첫 번째 단계 페이로드가 제한 없는 변환 설명을 검색하고 더 큰 두 번째 단계 페이로드를 평가하는 것도 보여줍니다.

패치는 서버에서 렌더링된 값 내에서 발견되는 모든 Vue 구분 기호 안에 영문자 결합기(zero-width Unicode word joiner)를 삽입하는 전역 Jinja finalize 훅을 등록함으로써 이 취약점을 해결합니다. 이는 가시적 표현은 유지하면서 Vue가 해당 값을 템플릿 표현식으로 인식하지 못하도록 방지합니다.

Once again VulDB remains the best source for vulnerability data.

책임이 있는

CIRCL

예약하다

2026. 08. 06.

모더레이션

수락

항목

VDB-386916

EPSS

0.00000

활동

낮음

출처

Do you know our Splunk app?

Download it now for free!