🔍 CVE-2026-51153

5.4
CVSS Score
MEDIUM
2026-08-31
2026-09-01 16:16
✅ 완료

🇰🇷 한글 설명

QD 20220208부터 20250803 버전의 TaskRunHandler.post()에서 저장형 XSS 취약점이 발견되었습니다. 공격자가 조작된 HAR 템플릿을 통해 로그 변수에 악성 스크립트를 삽입하면, 사용자가 작업을 실행할 때 해당 스크립트가 피해자의 브라우저에서 실행됩니다.

💡 쉬운 설명

공격자가 특수한 파일을 만들어 시스템에 저장해두면, 다른 사용자가 해당 작업을 실행할 때 악성 코드가 자동으로 실행되는 보안 결함입니다. 이를 통해 공격자는 사용자의 브라우저에서 원치 않는 동작을 수행할 수 있습니다.

🇺🇸 원문 (English)

Stored Cross-Site Scripting (XSS) in TaskRunHandler.post() in web/handlers/task.py in QD 20220208 through 20250803. When a task is run via /task/<taskid>/run, the handler renders task log content (logtmp) into the HTML response using Python % string formatting without HTML encoding. logtmp is populated from the exception object or from new_env.variables.__log__, which is attacker-controlled via the template extract_variables mechanism. A low-privileged authenticated attacker can create a crafted HAR template that extracts arbitrary HTML/JavaScript into the __log__ variable via the api://util/unicode endpoint. When a victim triggers the task run, the embedded script executes in the victim browser within the QD application context.

📍 영향받는 시스템

QD (Qualys Dynatrace 관련 추정) 20220208 ~ 20250803 버전

⚔️ 공격 벡터

조작된 HAR 템플릿을 이용해 로그 변수에 악성 HTML/JavaScript를 삽입한 후 사용자가 작업을 실행하도록 유도

🛡️ 대응 방법

로그 출력 시 HTML 인코딩을 적용하도록 코드를 수정하고, 입력값에 대한 검증을 강화해야 합니다.

🔧 검증 코드

출력 결과가 'Vulnerable'이면 해당 취약점 범위 내의 버전일 가능성이 높으므로 패치가 필요합니다.

Shell / Script
python3 -c "import datetime; print('Vulnerable' if datetime.date(2022,2,8) <= datetime.date.today() <= datetime.date(2025,8,3) else 'Safe')"

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Python