CVE-2026-67174
KrytyczneCVSS 9.2Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 31 - wyżej niż 31% wszystkich znanych CVE
Streszczenie
Pivotick zawiera podatność na ataki XSS oparte na DOM w funkcjach rozpoznawania elementów UI i renderowania ikon. Funkcja tryResolveHTMLElement traktuje dowolny rozpoznany ciąg jako znacznik HTML, a createIcon wstawia ikony SVG bez sanityzacji. Nieuwierzytelniony atakujący może dostarczyć spreparowany graf, wartość właściwości lub ikonę SVG, co prowadzi do wykonania JavaScript w przeglądarce ofiary.
Ocena ryzyka
Atakujący może uzyskać dostęp do informacji ofiary, manipulować danymi grafu lub stanem aplikacji oraz wykonywać działania z uprawnieniami ofiary, co stanowi poważne ryzyko dla poufności i integralności danych.
Rekomendacja
Należy zastosować łatkę, która zmienia renderowanie ciągów na textContent i wymaga jawnego zwracania Elementu dla HTML, oraz sanitizuje znaczniki ikon SVG przed wstawieniem do DOM.
Inne podatności w Pivotick
Zobacz wszystkie- CVE-2026-67173Średnie
Pivotick nie sprawdza schematu URI w wartościach imagePath węzłów pochodzących z danych grafu, co pozwala atakującemu na ustawienie złośliwego URI. Podczas renderowania grafu przeglądarka ofiary może wysłać niezamierzone żądanie lub wywołać obsługę specyficzną dla schematu.
- CVE-2026-66922Średnie
Pivotick używa zwykłych obiektów JavaScript jako tablic przeglądowych indeksowanych przez identyfikatory węzłów pochodzące od użytkownika. Identyfikatory pasujące do właściwości dziedziczonych z Object.prototype (np. constructor, __proto__) mogą być błędnie interpretowane, co prowadzi do pomijania węzłów, błędnych hierarchii, omijania wykrywania cykli lub wyjątków powodujących odmowę usługi.
- CVE-2026-66921Średnie
Renderer odwołań do węzłów Markdown w Pivotick nie koduje HTML wartości nodeName pochodzącej od atakującego, co pozwala na wstrzyknięcie złośliwych atrybutów lub elementów HTML. Może to prowadzić do wykonania dowolnego JavaScript w przeglądarce ofiary.
- CVE-2026-66920Wysokie
Pivotick zawiera podatność niekontrolowanej rekurencji podczas przetwarzania danych grafu i węzłów. Algorytmy grafu rekurencyjnie przechodzą krawędzie, a przeglądarka JSON rekurencyjnie przetwarza każdy poziom struktury węzła. Specjalnie spreparowany graf z długą ścieżką, głęboko zagnieżdżonymi właściwościami lub cyklicznymi referencjami może wyczerpać stos JavaScript, powodując awarię strony lub przeglądarki.
- CVE-2026-66919Średnie
Pivotick zawiera podatność na cross-site scripting w modalach inspekcji i edycji węzłów. Etykiety i opisy węzłów pochodzące z danych grafu są interpolowane bezpośrednio do HTML, co pozwala atakującemu na wstrzyknięcie złośliwego JavaScript.
- CVE-2026-66918Wysokie
Pivotick nie oczyszcza atakującego kodu SVG dostarczonego przez właściwość style.svgIcon przed wstawieniem go do dokumentu. Podczas renderowania węzła grafu, kod przypisuje znacznik SVG bezpośrednio do innerHTML, co pozwala na wykonanie złośliwych handlerów zdarzeń, np. <image> z atrybutem onerror. Atakujący może wykonać dowolny JavaScript w kontekście aplikacji.
- CVE-2026-66825Średnie
Pivotick zawiera podatność XSS w komponencie sidebar property-list. Wartości właściwości linkopodobnych (url, uri, href, link, website, homepage) były renderowane jako hiperłącza bez walidacji schematu URL. Atakujący może dostarczyć złośliwą wartość z schematem javascript:, w tym z białymi znakami lub znakami kontrolnymi. Kliknięcie linku może wykonać JavaScript w kontekście aplikacji. Podatność została naprawiona przez normalizację wartości i blokowanie niebezpiecznych schematów.
Oryginalny opis (angielski, źródło NVD)
Pivotick contains a DOM-based cross-site scripting vulnerability in its generic UI element resolution and icon-rendering utilities. The tryResolveHTMLElement function treated any resolved string as HTML markup by assigning it to a <template> element through innerHTML. Strings derived from untrusted graph properties or custom rendering callbacks could therefore introduce arbitrary HTML or SVG elements into the live document. The vulnerable function was used by multiple UI components, including headers, property panels, extra panels, and tooltips. Additionally, createIcon inserted caller-supplied svgIcon markup into a template without sanitization. An application integrating Pivotick and deriving icon markup from untrusted data could therefore expose a second script-execution path. An unauthenticated attacker able to provide a crafted graph, property value, rendering result, or SVG icon could execute JavaScript in another user's browser when the affected content is displayed or interacted with. Successful exploitation could allow the attacker to access information available to the victim, manipulate graph data or application state, and perform actions with the victim's privileges. The patch changes string rendering to use textContent, requiring callers to explicitly return an Element when HTML rendering is intended. It also sanitizes SVG icon markup before inserting it into the DOM.

