Flarum w wersjach v1.0.0 i v1.0.1 zawiera krytyczną podatność XSS, która pozwala dowolnemu użytkownikowi na wstrzyknięcie złośliwego kodu HTML w pola tekstowe (np. pole wyszukiwania) i jego wykonanie w przeglądarce innych użytkowników. Ze względu na brak uwierzytelnienia wymaganego do przeprowadzenia ataku i szeroki zakres możliwych skutków, podatność otrzymała najwyższy możliwy wynik CVSS — 10.0.
▸ Pokaż oryginał (EN)
Flarum is a forum software for building communities. Flarum's translation system allowed for string inputs to be converted into HTML DOM nodes when rendered. This change was made after v0.1.0-beta.16 (our last beta before v1.0.0) and was not noticed or documented. This allowed for any user to type malicious HTML markup within certain user input fields and have this execute on client browsers. The example which led to the discovery of this vulnerability was in the forum search box. Entering faux-malicious HTML markup, such as <script>alert('test')</script> resulted in an alert box appearing on the forum. This attack could also be modified to perform AJAX requests on behalf of a user, possibly deleting discussions, modifying their settings or profile, or even modifying settings on the Admin panel if the attack was targetted towards a privileged user. All Flarum communities that run flarum v1.0.0 or v1.0.1 are impacted. The vulnerability has been fixed and published as flarum/core v1.0.2. All communities running Flarum v1.0 have to upgrade as soon as possible to v1.0.2.
System tłumaczeń Flarum, po zmianie wprowadzonej po wersji v0.1.0-beta.16, zaczął konwertować ciągi tekstowe bezpośrednio w węzły HTML DOM podczas renderowania — bez odpowiedniego sanitizowania danych wejściowych. Oznacza to, że tekst wpisany przez użytkownika w określone pola (np. pole wyszukiwania) był interpretowany jako HTML i wykonywany przez przeglądarkę. Przykładem eksploitacji jest wpisanie znacznika `<script>alert('test')</script>`, który skutkował wyświetleniem okna dialogowego. Atak mógł zostać zmodyfikowany do wykonywania żądań AJAX w imieniu zaatakowanego użytkownika.
Atakujący może wykonać złośliwy skrypt w przeglądarce innego użytkownika, co może prowadzić do usuwania dyskusji, modyfikowania ustawień konta lub profilu, a w przypadku ataku wymierzonego w uprzywilejowanego użytkownika — również do modyfikowania ustawień panelu administracyjnego.
Należy zaktualizować Flarum do wersji v1.0.2, w której podatność została naprawiona. Wszystkie społeczności uruchamiające Flarum v1.0.0 lub v1.0.1 powinny wykonać aktualizację jak najszybciej.
Flarum (flarum/core) w wersjach v1.0.0 oraz v1.0.1
Zmiana wprowadzająca podatność (konwersja ciągów tekstowych na węzły HTML DOM) została dokonana po wersji v0.1.0-beta.16 i nie była udokumentowana ani zauważona aż do odkrycia podatności. Podatność odkryto poprzez test w polu wyszukiwania forum.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:HFlarum
APPFlarum1.0.01.0.1
Powiązane podatności
XSS w tytułach dyskusji platformy Flarum (v1.5.0–v1.6.1)
Flarum is an open source forum software. Flarum is affected by a vulnerability that allows an attacker to cond...
Flarum is a forum software for building communities. Using the mentions feature provided by the flarum/mention...
Flarum before 0.1.0-beta.9 allows CSRF against all POST endpoints, as demonstrated by changing admin settings.
User/Command/ConfirmEmailHandler.php in Flarum before 0.1.0-beta.8 mishandles invalidation of user email token...