CVE-2026-107737
ŚrednieCVSS 5.7Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 2 - wyżej niż 2% wszystkich znanych CVE
Streszczenie
SumatraPDF w wersji 3.6.1 i wcześniejszych oraz w wersji przedpremierowej 3.7.0.20369 (gdy WebView2 jest niedostępny) zawiera podatność w ParseProtoUrl(), gdzie podpisany komponent hosta URL its:// jest używany jako indeks do gHtmlWindows. Może to prowadzić do odczytu poza zakresem i nieprawidłowego wywołania zwrotnego, kończącego proces.
Ocena ryzyka
Ryzyko obejmuje awarię aplikacji podczas otwierania spreparowanych plików CHM przez backend IE, co może prowadzić do niedostępności usługi.
Rekomendacja
Zaleca się unikanie otwierania niezaufanych plików CHM oraz oczekiwanie na aktualizację, gdyż nie ma jeszcze wersji naprawionej.
Inne podatności w SumatraPDF
Zobacz wszystkie- CVE-2026-26054Średnie
SumatraPDF przed wersją 3.6 zawiera lukę w funkcji MobiDoc::ParseHeader, gdzie dekoder tworzony jest z długością stałą, a nie rzeczywistą długością bufora. Złośliwy plik MOBI może spowodować odczyt poza buforem, co prowadzi do awarii aplikacji (crash).
- CVE-2026-107802Wysokie
SumatraPDF w wersji 3.6.1 i wcześniejszych w pliku src/SelectionTranslate.cpp osadza zaznaczony lub wklejony tekst tłumaczenia w cytowanych wierszach poleceń Windows, stosując niekompletne escapowanie cudzysłowów. Funkcje BuildGrokTranslateCmdLineTemp(), BuildClaudeTranslateCmdLineTemp() i BuildCodexTranslateCmdLineTemp() mogą pozwolić tekstowi kontrolowanemu przez atakującego na wstrzyknięcie flag modelu, katalogu roboczego, zatwierdzania lub obejścia sandboxa, gdy odpowiedni backend CLI agenta jest zainstalowany i używany.
- CVE-2026-107738Średnie
SumatraPDF w wersji 3.6.1 i wcześniejszych zawiera podatność w ChmFile::GetCharZ(), gdzie niekontrolowane offsety z plików CHM są zawężane do liczb ze znakiem bez sprawdzenia dolnego zakresu. Może to prowadzić do odczytu przed buforem /#STRINGS i deterministycznego zakończenia aplikacji.
- CVE-2026-107736Średnie
SumatraPDF w wersji 3.6.1 i wcześniejszych zawiera podatność w MaybeFlipBitmap(), gdzie GDI+ odczytuje rozmiar PropertyTagOrientation kontrolowany przez atakującego do stałego 64-bajtowego bufora na stosie. Otwarcie spreparowanego pliku TIFF może prowadzić do nadpisania danych sterujących na stosie, choć w testowanych buildach proces kończy się przez kontrolę cookie stosu.
- CVE-2026-107735Średnie
SumatraPDF w wersji 3.6.1 i wcześniejszych zawiera podatność w InitializePolicies(), gdzie ścieżka sumatrapdfrestrict.ini zaczyna się od gPolicyRestrictions ustawionego na Perm::All i tylko dodaje bity uprawnień, więc plik INI nigdy nie odbiera uprawnień. Wdrożenie z tym plikiem INI, w tym z błędnym plikiem lub zerowymi ustawieniami, może cicho ominąć skonfigurowane ograniczenia dysku, sieci, drukowania, rejestru, schowka, preferencji i pełnoekranowe.
- CVE-2026-107734Wysokie
SumatraPDF w wersji 3.5.2 i wcześniejszych podstawia nazwę pliku źródłowego SyncTeX kontrolowaną przez atakującego w miejsce symbolu zastępczego %f w wierszu poleceń zewnętrznego edytora bez bezpiecznego cytowania argumentów Windows, a wynikowy wiersz poleceń jest przekazywany do CreateProcessW(). Użytkownik z skonfigurowanym lub automatycznie wykrytym zewnętrznym edytorem, który otworzy PDF ze spreparowanym plikiem .synctex.gz i wywoła wyszukiwanie odwrotne, może wstrzyknąć flagi wiersza poleceń.
- CVE-2026-107733Średnie
SumatraPDF w wersji 3.6.1 i wcześniejszych zawiera podatność w FrameOnCommand(), gdzie CmdExec przekazuje zerowy wskaźnik bieżącej karty do RunWithExe(), który dereferencjonuje WindowTab::filePath. Lokalny proces w tej samej sesji Windows, o poziomie integralności większym lub równym SumatraPDF, może wysłać CmdExec przez DDE lub WM_COPYDATA, gdy nie jest otwarta żadna karta dokumentu, powodując nagłe zakończenie procesu i utratę niezapisanych danych.
- CVE-2026-107732Wysokie
SumatraPDF w wersji 3.6.1 i wcześniejszych interpoluje niezaufane ścieżki dokumentów i cele linków PDF do tekstu powiadomień, który ParseTip() interpretuje jako zaufany znacznik podpowiedzi. Gdy użytkownik kliknie wstrzyknięty link, ExecuteTipLink() wywołuje polecenie CmdExec i może uruchomić lokalny program wybrany przez atakującego w kontekście użytkownika.
- CVE-2026-107731Średnie
SumatraPDF w wersji 3.7.0.22298 zawiera cztery niezależnie osiągalne warianty walidacji zakresu w src/LitDoc.cpp, które pozwalają na przepełnienie, zawężenie do wartości ujemnych lub zawinięcie niekontrolowanych offsetów i rozmiarów przed niepełnymi kontrolami granic. Otwarcie spreparowanego pliku LIT może powodować nieprawidłowe odczyty wskaźników i deterministyczne zakończenie aplikacji.
- CVE-2026-107730Średnie
SumatraPDF w wersji 3.7.0.22298 zawiera podatność w LitParseHeader() w src/LitDoc.cpp, gdzie obliczany jest offset sekcji hdrLen + nPieces * 16 przy użyciu arytmetyki ze znakiem 32-bitowym bez walidacji pełnego wyniku. Gdy suma przekroczy zakres i stanie się ujemna, konstrukcja wskaźnika prowadzi do nieprawidłowego odczytu w LitU32(), powodując deterministyczne zakończenie aplikacji.
Oryginalny opis (angielski, źródło NVD)
SumatraPDF is a multi-format reader for Windows. In 3.6.1 and earlier, and in pre-release 3.7.0.20369 when WebView2 is absent or cannot initialize, ParseProtoUrl() accepts the signed host component of an its:// URL and FindHtmlWindowById() uses it directly as an index into gHtmlWindows. Opening a crafted CHM through the IE fallback backend with a negative or otherwise out-of-range window identifier can cause an out-of-bounds pointer read followed by an invalid object callback dereference and process termination. No fixed version is available as of this review.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

