CVE-2026-33079
WysokieCVSS 7.5Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 42 - wyżej niż 42% wszystkich znanych CVE
Streszczenie
W bibliotece Mistune w wersjach 3.0.0a1 do 3.2.0 występuje podatność ReDoS (Regular Expression Denial of Service) w wyrażeniu regularnym `LINK_TITLE_RE`. Nakładające się alternatywy w regexie mogą prowadzić do katastroficznego cofania się, co przy specjalnie spreparowanym wejściu Markdown powoduje ogromne zużycie CPU i unieruchomienie aplikacji.
Ocena ryzyka
Atakujący może dostarczyć złośliwy Markdown, który po przetworzeniu przez Mistune spowoduje przeciążenie serwera i odmowę usługi (DoS), uniemożliwiając działanie aplikacji.
Rekomendacja
Zaktualizuj bibliotekę Mistune do wersji 3.2.1 lub nowszej, która zawiera poprawkę dla tej podatności.
Inne podatności w Mistune
Zobacz wszystkie- CVE-2026-76098Wysokie
Mistune w wersjach 3.3.0 do 3.3.2 jest podatny na atak DoS przez głęboko zagnieżdżone tokeny. Renderowanie HTML tworzy głęboko zagnieżdżone tokeny emfazy z gwiazdek, a rekurencyjne renderowanie może przekroczyć limit rekurencji Pythona, powodując awarię procesu parsowania. Poprawka w wersji 3.3.3.
- CVE-2026-59930Średnie
W bibliotece Mistune do parsowania Markdown w Pythonie wykryto podatność w pluginie toc oraz dyrektywie TableOfContents. Generują one identyfikatory nagłówków w postaci przewidywalnych wartości toc_N, bez slugifikacji tekstu nagłówka, co pozwala atakującemu na wstrzyknięcie własnego id="toc_N" i kolizję z wygenerowanymi kotwicami.
- CVE-2026-59929Średnie
Biblioteka Mistune do parsowania Markdown w Pythonie przed wersją 3.3.0 zawiera podatność polegającą na niedostatecznym filtrowaniu niebezpiecznych schematów URI w atrybutach href i src. Filtr safe_url blokuje tylko wybrane schematy (javascript:, vbscript:, file:, data:), ale pozwala na użycie starszych lub złożonych schematów, takich jak feed:, view-source:, jar:, livescript:, mocha:, ms-its:, mk: i res:, co może umożliwić wykonanie skryptów w przeglądarce ofiary.
- CVE-2026-59928Wysokie
Podatność w bibliotece Mistune do parsowania Markdown w Pythonie przed wersją 3.3.0 pozwala na atak DoS przez wyczerpanie CPU. Dokument Markdown zawierający wiele powtarzających się lub różnych definicji linków referencyjnych powoduje kwadratową złożoność obliczeniową w pliku src/mistune/block_parser.py oraz obsłudze słownika ref_links.
- CVE-2026-59927Średnie
Podatność w bibliotece Mistune (parser Markdown dla Pythona) przed wersją 3.3.0 umożliwia wywołanie nieskończonej rekurencji przez dwa pliki Markdown wzajemnie się dołączające. Powoduje to błąd RecursionError i awarię procesu renderowania.
- CVE-2026-59926Średnie
W bibliotece Mistune dla Pythona wykryto podatność polegającą na braku odpowiedniego kodowania opcji :class: dyrektywy Admonition przed wstawieniem jej do atrybutu class w HTML. Umożliwia to wstrzykiwanie atrybutów i ataki XSS nawet przy włączonym trybie escape w HTMLRenderer. Problem został naprawiony w wersji 3.2.1.
- CVE-2026-59925Wysokie
Mistune to parser Markdown dla Pythona. Przed wersją 3.3.0, długie sekwencje poprawnie sformatowanych par podwójnych lub potrójnych gwiazdek wokół znaku powodują kwadratową złożoność obliczeniową w src/mistune/inline_parser.py, ponieważ parser skanuje do przodu w poszukiwaniu pasujących znaczników zamykających z każdego potencjalnego otwarcia, umożliwiając odmowę usługi przy domyślnym parsowaniu Mistune.
- CVE-2026-59924Średnie
Mistune to parser Markdown dla Pythona. Przed wersją 3.3.0 funkcja Include.parse() łączy i normalizuje ścieżki dołączane przez użytkownika bez weryfikacji, czy wynik pozostaje w zamierzonym katalogu Markdown, co pozwala na dostęp do plików poza tym katalogiem podczas przetwarzania plików Markdown za pomocą md.read().
- CVE-2026-59923Średnie
W bibliotece Mistune dla języka Python wykryto podatność polegającą na tym, że funkcja HTMLRenderer.safe_url() nie blokuje zakodowanych procentowo URI javascript. Umożliwia to atakującemu ominięcie zabezpieczeń URL w linkach lub obrazach Markdown i wykonanie skryptu w wyrenderowanym HTML.
- CVE-2026-59922Wysokie
Podatność w bibliotece Mistune (parser Markdown dla Pythona) przed wersją 3.3.0 powoduje kwadratową złożoność obliczeniową podczas przetwarzania sekwencji zamkniętych tyld, znaków równości lub daszków w pluginach przekreślenia, zaznaczenia i wstawiania. Atakujący może wykorzystać to do wyczerpania zasobów CPU (odmowa usługi).
Oryginalny opis (angielski, źródło NVD)
In versions 3.0.0a1 through 3.2.0 of Mistune, there is a ReDoS (Regular Expression Denial of Service) vulnerability in `LINK_TITLE_RE` that allows an attacker who can supply Markdown for parsing to cause denial of service. The regular expression used for parsing link titles contains overlapping alternatives that can trigger catastrophic backtracking. In both the double-quoted and single-quoted branches, a backslash followed by punctuation can be matched either as an escaped punctuation sequence or as two ordinary characters, creating an ambiguous pattern inside a repeated group. If an attacker supplies Markdown containing repeated ! sequences with no closing quote, the regex engine explores an exponential number of backtracking paths. This is reachable through normal Markdown parsing of inline links and block link reference definitions. A small crafted input can therefore cause significant CPU consumption and make applications using Mistune unresponsive.

