| 제목 | DataGear DataGear up to 5.0.0 5.0.0 Cross Site Scripting |
|---|
| 설명 | DataGear 5.5.0 (and possibly earlier versions) contains a stored cross-site scripting (XSS) vulnerability in the chart name field. When a user creates or edits a chart via the POST /chart/saveAdd endpoint, the chart name is stored in the database without any HTML sanitization or encoding. When the chart is later viewed via GET /cv/{chartId}/, the chart name is directly concatenated into the HTML <title> tag without escaping.
The vulnerable code at HtmlTplDashboardWidgetHtmlRenderer.java:179:
sb.append(HTML_TAG_TITLE_START +
(StringUtil.isEmpty(option.getTitle()) ? "" : option.getTitle()) +
"</title>\n");
No escapeHtml() call is applied to the title before insertion. The HtmlFilter class only filters <script> and <style> tags but does NOT block </title> closing tag injection, <img> tags, or other HTML event handlers. An attacker can break out of the <title> tag by including </title> in the chart name, then inject arbitrary HTML/JavaScript. |
|---|
| 원천 | ⚠️ https://github.com/Airerr/datagear-5.5.0/blob/main/CVE-STOREDXSS-002.md |
|---|
| 사용자 | Airer (UID 98989) |
|---|
| 제출 | 2026. 06. 20. PM 05:36 (2 개월 ago) |
|---|
| 모더레이션 | 2026. 08. 06. PM 04:00 (2 months later) |
|---|
| 상태 | 수락 |
|---|
| VulDB 항목 | 386570 [DataGear 까지 5.0.0 Chart Name HtmlTplDashboardWidgetHtmlRenderer.java HtmlTplDashboardWidgetHtmlRenderer 제목 크로스 사이트 스크립팅] |
|---|
| 포인트들 | 20 |
|---|