CVE-2026-91159
WysokieCVSS 7.7Streszczenie
Podatność w Discourse przed wersjami 2026.9.0, 2026.8.1, 2026.7.3 i 2026.1.9. Przetwarzanie oEmbed traktowało cały kontrolowany przez atakującego fragment HTML jako zaufany, gdy fragment zawierał iframe, którego źródło pasowało do skonfigurowanej listy dozwolonych. Użytkownik z uprawnieniami do publikowania, kontrolujący publiczną stronę i jej odpowiedź oEmbed, mógł połączyć dozwolony iframe z niepowiązanym rodzeństwem HTML lub CSS, powodując trwałe nakładki wizualne lub inne stylizowane treści w treści posta, umożliwiając mylące lub fałszywe interfejsy użytkownika. Wykorzystanie wymaga konta z uprawnieniami do publikowania, kontroli nad pobieraną stroną i odpowiedzią oEmbed oraz dozwolonego źródła iframe. Problem wpływa na integralność treści, ale nie ujawnia ograniczonych danych, nie zakłóca dostępności ani nie wymaga interakcji z polityką bezpieczeństwa treści Discourse. Problem został naprawiony w wersjach 2026.9.0, 2026.8.1, 2026.7.3 i 2026.1.9.
Ocena ryzyka
Użytkownik z uprawnieniami do publikowania może manipulować treścią postów, tworząc mylące interfejsy, co może prowadzić do oszustw lub utraty zaufania do platformy.
Rekomendacja
Zaktualizuj Discourse do wersji 2026.9.0, 2026.8.1, 2026.7.3 lub 2026.1.9. Ogranicz uprawnienia do publikowania i monitoruj treści pod kątem nietypowych nakładek.
Inne podatności w Discourse
Zobacz wszystkie- CVE-2026-91157Wysokie
Podatność w Discourse przed wersjami 2026.9.0, 2026.8.1, 2026.7.3 i 2026.1.9. Witryny z włączonym bezpiecznym przesyłaniem nie aktualizowały istniejących metadanych bezpieczeństwa przesyłania, gdy wcześniej publiczna kategoria stała się ograniczona do odczytu lub gdy uprawnienia kategorii zmieniły się podczas masowego importu. Media i załączniki przesłane, gdy kategoria była publiczna, zachowały publiczny flag dostępu i pozostały dostępne dla anonimowych użytkowników przez ich krótkie adresy URL, w tym przesyłki związane z usuniętymi tematami. Problem został naprawiony w wersjach 2026.9.0, 2026.8.1, 2026.7.3 i 2026.1.9.
- CVE-2026-91156Wysokie
Podatność w Discourse przed wersjami 2026.9.0, 2026.8.1, 2026.7.3 i 2026.1.9. Obliczanie odbiorców MessageBus mogło dostarczać wiadomości z kanału czatu kategorii ograniczonej do odczytu uwierzytelnionemu użytkownikowi, który mógł widzieć kategorię, ale nie był uprawniony do korzystania z czatu zgodnie z ograniczeniami grupowymi witryny. Ścieżka publikacji ograniczała zdarzenia do widoczności kategorii bez egzekwowania uprawnień do czatu, ujawniając treść wiadomości na żywo i ostatnie dostępne w backlogu MessageBus. Problem nie pozwala na pobranie pełnej historii kanału przez API czatu i nie pozwala na tworzenie lub modyfikację wiadomości. Problem został naprawiony w wersjach 2026.9.0, 2026.8.1, 2026.7.3 i 2026.1.9.
- CVE-2026-23743Wysokie
W Discourse przed wersjami 3.5.4, 2025.11.2, 2025.12.1 i 2026.1.0, przekierowania z linków permalink do zasobów z ograniczonym dostępem (prywatne tematy, kategorie, posty lub ukryte tagi) ujawniały slug zasobu w adresie URL, nawet gdy użytkownik nie miał do niego dostępu. To powodowało wyciek potencjalnie wrażliwych informacji, takich jak tytuły prywatnych tematów, poprzez nagłówek Location oraz pole wyszukiwania na stronie 404.
- CVE-2025-68662Wysokie
Discourse, platforma dyskusyjna o otwartym kodzie źródłowym, zawiera podatność w wersjach przed 3.5.4, 2025.11.2, 2025.12.1 i 2026.1.0. Problem dotyczy walidacji nazwy hosta w komponencie FinalDestination, co może umożliwić obejście zabezpieczeń SSRF w określonych warunkach.
- CVE-2025-68479Wysokie
Discourse to platforma dyskusyjna o otwartym kodzie źródłowym. W wersjach przed 3.5.4, 2025.11.2, 2025.12.1 i 2026.1.0 niektóre punkty końcowe subskrypcji nie sprawdzają poprawnie własności przed wprowadzeniem zmian. Luka została załatana w wymienionych wersjach.
- CVE-2026-55674Krytyczne
Przed wersjami 2026.1.6, 2026.5.2, 2026.6.1 i 2026.7.0 w Discourse, nieuwierzytelniony atakujący mógł wysłać pojedyncze żądanie z spreparowanym ciasteczkiem color_scheme_id (lub dark_scheme_id), aby wstrzyknąć dowolny HTML na stronę Discourse. Ponieważ wartość ciasteczka była renderowana w tagu schematu kolorów bez escapowania, atakujący mógł wydostać się z atrybutu i wstrzyknąć tag, który omijał politykę bezpieczeństwa treści opartą na nonce, co prowadziło do wykonania dowolnego JavaScriptu w przeglądarkach odwiedzających.
- CVE-2026-91121Średnie
Discourse przed wersjami 2026.1.8, 2026.6.3, 2026.7.2 i 2026.8.0 renderował kontrolowane przez atakującego nazwy plików przesyłanych w fragmentach wiadomości czatu jako niesanityzowany HTML. Użytkownik mogący przesłać plik i wysłać treść czatu mógł umieścić znaczniki w nazwie pliku, które były interpretowane przez listy kanałów czatu, e-maile z podsumowaniem czatu, przypięte paski wiadomości, podglądy odpowiedzi i inne renderery fragmentów. Podatność umożliwiała wstrzyknięcie zaufanego HTML, ale nie wykazano wykonania JavaScript przy domyślnych ustawieniach CSP.
- CVE-2026-91120Średnie
Discourse przed wersjami 2026.1.8, 2026.6.3, 2026.7.2 i 2026.8.0 mógł ponownie parsować kontrolowane przez dostawcę tytuły filmów w leniwych osadzeniach wideo jako HTML podczas generowania e-maili powiadomień lub podsumowań czatu. Użytkownik z podstawowymi uprawnieniami do publikowania mógł utworzyć post dla włączonego dostawcy YouTube, Vimeo lub TikTok, którego tytuł zawierał znaczniki, a ścieżka renderowania e-maili i podsumowań czatu umieszczała te znaczniki w wyniku zamiast traktować je wyłącznie jako tekst. Odbiorcy używający klientów poczty obsługujących HTML mogli zobaczyć wstrzykniętą treść, potencjalnie w tym procedury obsługi zdarzeń, ale podatność nie ujawniała bezpośrednio sesji przeglądarki Discourse ani nie wpływała na samą stronę forum.
- CVE-2026-91119Średnie
Discourse przed wersjami 2026.1.8, 2026.6.3, 2026.7.2 i 2026.8.0 interpolował wolną wartość action_code_who do atrybutów href linków wzmianek bez kodowania URL. Nazwa wyświetlana zawierająca cudzysłów mogła zakończyć zamierzony atrybut URL i wstrzyknąć kontrolowane przez atakującego elementy do zaufanego renderowanego znacznika. Chociaż widoczny tekst wzmianki był escapowany, niezakodowany komponent ścieżki umożliwiał trwałe wstrzyknięcie HTML, gdy inny użytkownik wyświetlił dotkniętą akcję tematu lub dziennik aktywności.
- CVE-2026-91134Średnie
Discourse przed wskazanymi wersjami pozwalał na przechowywany atak typu cross-origin iframe, który omijał politykę allowed_iframes dzięki zakodowanemu userinfo w atrybucie src. Uwierzytelniony użytkownik z uprawnieniami do pisania mógł umieścić iframe w poście, co prowadziło do renderowania treści z kontrolowanej przez atakującego domeny.
Oryginalny opis (angielski, źródło NVD)
Discourse is an open-source discussion platform. Prior to 2026.9.0, 2026.8.1, 2026.7.3, and 2026.1.9, oEmbed processing treated an entire attacker-controlled HTML fragment as trusted when the fragment contained an iframe whose source matched the configured allowlist. A user with posting permission who controlled a public webpage and its oEmbed response could combine an allowlisted iframe with unrelated sibling HTML or CSS, causing stored visual overlays or other styled content to appear in post content and enabling misleading or fraudulent user interfaces. Exploitation requires a posting account, control of the fetched webpage and oEmbed response, and an allowlisted iframe source. The issue affects content integrity but does not expose restricted data, disrupt availability, or require interaction with Discourse Content Security Policy. This issue is fixed in versions 2026.9.0, 2026.8.1, 2026.7.3, and 2026.1.9.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

