CRITICAL🇬🇧 English

CVE-2025-30223

XSS w funkcji RenderForm() frameworka Beego dla Go

CVSS 9.3v3.1pub. 2025-03-31upd. 2025-08-01

W frameworku Beego (wersje przed 2.3.6) istnieje podatność Cross-Site Scripting (XSS) w funkcji RenderForm() spowodowana brakiem prawidłowego escapowania danych kontrolowanych przez użytkownika. Umożliwia to atakującemu wstrzyknięcie złośliwego kodu JavaScript wykonywanego w przeglądarkach ofiar, co może prowadzić do przejęcia sesji lub kont użytkowników.

Pokaż oryginał (EN)

Beego is an open-source web framework for the Go programming language. Prior to 2.3.6, a Cross-Site Scripting (XSS) vulnerability exists in Beego's RenderForm() function due to improper HTML escaping of user-controlled data. This vulnerability allows attackers to inject malicious JavaScript code that executes in victims' browsers, potentially leading to session hijacking, credential theft, or account takeover. The vulnerability affects any application using Beego's RenderForm() function with user-provided data. Since it is a high-level function generating an entire form markup, many developers would assume it automatically escapes attributes (the way most frameworks do). This vulnerability is fixed in 2.3.6.

🤖 Analiza AI
Jak działa

Funkcja RenderForm() generuje kompletny markup formularza HTML, jednak nie stosuje prawidłowego escapowania danych wejściowych dostarczanych przez użytkownika przed umieszczeniem ich w atrybutach HTML. Atakujący może dostarczyć spreparowane dane zawierające złośliwy kod JavaScript, który zostanie osadzony w wygenerowanym formularzu bez sanityzacji. Ponieważ RenderForm() jest funkcją wysokopoziomową, wielu programistów zakłada, że automatycznie escapuje atrybuty — tak jak większość popularnych frameworków — co sprawia, że podatność może pozostać niezauważona podczas przeglądu kodu.

Skutki

Atakujący może wykonać dowolny kod JavaScript w przeglądarce ofiary, co może prowadzić do kradzieży sesji (session hijacking), kradzieży poświadczeń lub całkowitego przejęcia konta użytkownika.

Mitygacja

Należy zaktualizować Beego do wersji 2.3.6 lub nowszej, w której podatność została naprawiona. Patch dostępny jest w repozytorium GitHub projektu Beego (commit 939bb18c66406466715ddadd25dd9ffa6f169e25).

Kogo dotyczy

Wszystkie aplikacje wykorzystujące framework Beego w wersjach przed 2.3.6, które korzystają z funkcji RenderForm() z danymi dostarczonymi przez użytkownika.

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

    APP
    Beego
    < 2.3.6
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
Tagi
XSS
CWE
Referencje

Powiązane podatności

CVE-2022-31836CRITICAL9.8ten sam produkt

The leafInfo.match() function in Beego v2.0.3 and below uses path.join() to deal with wildcardvalues which can...

CVE-2022-31259CRITICAL9.8ten sam produkt

The route lookup process in beego before 1.12.9 and 2.x before 2.0.3 allows attackers to bypass access control...

CVE-2021-30080CRITICAL9.8ten sam produkt

An issue was discovered in the route lookup process in beego before 1.12.11 that allows attackers to bypass ac...

CVE-2024-40464HIGH8.8ten sam produkt

An issue in beego v.2.2.0 and before allows a remote attacker to escalate privileges via the sendMail function...

CVE-2024-40465HIGH8.8ten sam produkt

An issue in beego v.2.2.0 and before allows a remote attacker to escalate privileges via the getCacheFileName ...