| 제목 | olivier-ls PHP-FTS 0.1 Cross-Site Scripting |
|---|
| 설명 | PHP-FTS (ols/php-fts) before an unreleased fix does not HTML-escape document field values in `SearchEngine::buildHighlights()` before wrapping matched words in HTML highlight tags. The `search($query, highlight: true)` path splits field values into words and concatenates matched words as `$openTag . $word . $closeTag` (default `<mark>...</mark>`) with no `htmlspecialchars()`. When an application indexes attacker-influenced content and renders the returned highlights as HTML, an attacker can inject arbitrary markup (e.g. an `<img src=x onerror=alert(document.cookie)>` payload) that executes in the browser of users viewing search results, leading to stored cross-site scripting (session/cookie theft, account takeover).
Reproduction: https://github.com/sumo166/CVE-apply/blob/main/olivier-ls/php-fts/SearchEngine%20buildHighlights%20Stored%20XSS%20(CWE-79)_cve.md |
|---|
| 원천 | ⚠️ https://github.com/olivier-ls/php-fts/issues/1 |
|---|
| 사용자 | summmm (UID 69690) |
|---|
| 제출 | 2026. 08. 23. AM 07:52 (29 날 ago) |
|---|
| 모더레이션 | 2026. 09. 19. AM 11:01 (27 days later) |
|---|
| 상태 | 수락 |
|---|
| VulDB 항목 | 407915 [olivier-ls PHP-FTS 까지 1.1.2 Search Engine src/SearchEngine.php buildHighlights 질문 크로스 사이트 스크립팅] |
|---|
| 포인트들 | 20 |
|---|