CRITICAL🇬🇧 English

CVE-2023-36471

XWiki Commons: RCE i XSS przez niedostateczną sanityzację HTML (form/input)

CVSS 9.0v3.1pub. 2023-06-29upd. 2024-11-21

Podatność w module sanityzacji HTML biblioteki XWiki Commons pozwala atakującemu bez uprawnień skryptowych na przeprowadzenie ataku phishingowego lub zdalnego wykonania kodu (RCE). Błąd jest krytyczny, ponieważ może zostać wykorzystany do wykonania kodu Groovy z uprawnieniami administratora.

Pokaż oryginał (EN)

Xwiki commons is the common modules used by other XWiki top level projects. The HTML sanitizer that is included in XWiki since version 14.6RC1 allowed form and input HTML tags. In the context of XWiki, this allows an attacker without script right to either create forms that can be used for phishing attacks or also in the context of a sheet, the attacker could add an input like `{{html}}<input type="hidden" name="content" value="{{groovy}}println(&quot;Hello from Groovy!&quot;)" />{{/html}}` that would allow remote code execution when it is submitted by an admin (the sheet is rendered as part of the edit form). The attacker would need to ensure that the edit form looks plausible, though, which can be non-trivial as without script right the attacker cannot display the regular content of the document. This has been patched in XWiki 14.10.6 and 15.2RC1 by removing the central form-related tags from the list of allowed tags. Users are advised to upgrade. As a workaround an admin can manually disallow the tags by adding `form, input, select, textarea, button` to the configuration option `xml.htmlElementSanitizer.forbidTags` in the `xwiki.properties` configuration file.

🤖 Analiza AI
Jak działa

Sanitizer HTML w XWiki, wprowadzony od wersji 14.6RC1, nieprawidłowo zezwalał na tagi HTML związane z formularzami, takie jak `form` i `input`. Atakujący bez uprawnień skryptowych mógł w kontekście tzw. sheet wstrzyknąć ukryte pole formularza zawierające payload w języku Groovy, np. `<input type="hidden" name="content" value="{{groovy}}println(...)" />`. Gdy administrator edytował dokument (renderując formularz edycji), wstrzyknięty kod był wykonywany z jego uprawnieniami. Dodatkowo możliwe było tworzenie fałszywych formularzy służących do ataków phishingowych.

Skutki

Atakujący może doprowadzić do zdalnego wykonania dowolnego kodu (RCE) z uprawnieniami administratora oraz tworzyć złośliwe formularze phishingowe. W przypadku udanego RCE możliwe jest pełne przejęcie kontroli nad instancją XWiki, w tym naruszenie poufności, integralności i dostępności danych.

Mitygacja

Należy zaktualizować XWiki do wersji 14.10.6 lub 15.2RC1, w których usunięto tagi form, input, select, textarea i button z listy dozwolonych tagów HTML. Jako obejście (workaround) administrator może ręcznie dodać `form, input, select, textarea, button` do opcji konfiguracyjnej `xml.htmlElementSanitizer.forbidTags` w pliku `xwiki.properties`.

Kogo dotyczy

XWiki Commons w wersjach od 14.6RC1 do 14.10.5 włącznie oraz wersje 15.x przed 15.2RC1

Uwagi

Podatność wymaga interakcji użytkownika (administrator musi zapisać formularz edycji), co podnosi poprzeczkę dla atakującego, jednak nie eliminuje ryzyka RCE. Poprawka dostępna na GitHub w ramach commit 99484d48e899a68a1b6e33d457825b776c6fe8c3.

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

    APP
    Xwiki
    15.015.114.6 – 14.10.6 (bez)
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
Tagi
RCEXSS
CWE
Referencje

Powiązane podatności

CVE-2023-29528CRITICAL9.0PL ✓ten sam produkt

XWiki Commons: XSS przez nieprawidłowe komentarze HTML prowadzący do RCE

CVE-2023-26055CRITICAL9.9PL ✓ten sam produkt

XWiki Commons — wstrzyknięcie kodu przez profil użytkownika (RCE)

CVE-2022-24898MEDIUM4.9ten sam produkt

org.xwiki.commons:xwiki-commons-xml is a common module used by other XWiki top level projects. Starting in ver...

CVE-2025-24893CRITICAL9.8⚠ KEVPL ✓ten sam vendor

XWiki Platform — niezautoryzowany RCE przez endpoint SolrSearch

CVE-2025-65091CRITICAL10.0PL ✓ten sam vendor

SQL Injection w XWiki Full Calendar Macro — dostęp bez uwierzytelnienia