CVE-2026-48778
WysokieCVSS 7.8Prawdopodobieństwo exploitacji (EPSS)
Podwyższone ryzykoPercentyl 68 - wyżej niż 68% wszystkich znanych CVE
Streszczenie
Notepad++ przed wersją 8.9.6.1 zawiera podatność polegającą na braku walidacji wartości tagu <GUIConfig name="commandLineInterpreter"> w pliku config.xml. Atakujący może zmodyfikować ten plik, aby przy otwarciu konsoli (File → Open Containing Folder → cmd) uruchomić dowolne polecenie z uprawnieniami użytkownika.
Ocena ryzyka
Ryzyko polega na możliwości zdalnego lub lokalnego wykonania dowolnego kodu po dostarczeniu spreparowanego pliku konfiguracyjnego. Organizacja narażona jest na przejęcie kontroli nad stacjami roboczymi, kradzież danych lub instalację złośliwego oprogramowania.
Rekomendacja
Należy niezwłocznie zaktualizować Notepad++ do wersji 8.9.6.1 lub nowszej. Dodatkowo warto ograniczyć uprawnienia do zapisu pliku config.xml oraz stosować mechanizmy kontroli integralności plików konfiguracyjnych.
Inne podatności w Notepad++
Zobacz wszystkie- CVE-2014-9456Wysokie
Przepełnienie bufora w NotePad++ w wersji 6.6.9 umożliwia zdalnym atakującym wywołanie nieokreślonego wpływu poprzez długi atrybut Time w elemencie Event w pliku XML.
- CVE-2023-34159Krytyczne
W aplikacji Notepad występuje podatność związana z niewłaściwą kontrolą uprawnień. Skuteczne wykorzystanie tej podatności może prowadzić do eskalacji uprawnień, co wpływa na dostępność i poufność.
- CVE-2026-71858Średnie
Notepad++ to darmowy edytor kodu źródłowego o otwartym kodzie źródłowym. Przed wersją 8.9.7, makra ładowane z kontrolowanego przez atakującego pliku shortcuts.xml omijają walidację HMAC stosowaną do UserDefinedCommands i mogą wywoływać akcje Scintilla oraz wewnętrzne polecenie Open in Default Viewer w procesie Notepad++ z podniesionymi uprawnieniami, co umożliwia modyfikację chronionych plików i warunkowe wykonanie poleceń z podniesionymi uprawnieniami, gdy lokalny atakujący wpływa na settingsDir, a użytkownik uruchomi makro. Problem naprawiono w wersji 8.9.7.
- CVE-2026-57233Wysokie
Notepad++ to darmowy edytor kodu źródłowego. Przed wersją 8.9.7, funkcja WinGup decompress łączy niezaufane nazwy wpisów ZIP z unzipDestTo bez walidacji kanonicznej, co pozwala wpisowi takiemu jak ../mimeTools/mimeTools.dll nadpisać DLL w katalogu sąsiedniej wtyczki i wykonać kod kontrolowany przez atakującego przy następnym załadowaniu wtyczki. Problem naprawiono w wersji 8.9.7.
- CVE-2026-54758Wysokie
Notepad++ to darmowy edytor kodu źródłowego. Przed wersją 8.9.7, funkcja expandNppEnvironmentStrs w pliku RunDlg.cpp kopiuje nazwę zmiennej Notepad++ między $( i ) do bufora stosu o stałym rozmiarze wchar_t str[MAX_PATH] bez ograniczenia indeksu pętli m, co pozwala nazwie o długości 260 lub więcej znaków uszkodzić sąsiednie dane stosu, zakończyć proces przez __report_gsfailure i potencjalnie wykonać kod. Problem naprawiono w wersji 8.9.7.
- CVE-2026-52886Średnie
Notepad++ przed wersją 8.9.7 waliduje atrybut backupFilePath z session.xml za pomocą std::wstring::starts_with względem oczekiwanego katalogu kopii zapasowych bez normalizacji ścieżki, co pozwala na użycie sekwencji katalogów nadrzędnych podczas przywracania w trybie snapshot do odczytu dowolnego pliku czytelnego dla użytkownika poza katalogiem kopii zapasowych do zakładki edytora.
- CVE-2026-73250Średnie
Podatność w instalatorze Notepad++ dla Windows 11 x64 i ARM64 przed wersją 8.9.7 umożliwia wykonanie poleceń PowerShell w kontekście instalatora poprzez wstrzyknięcie składni podwyrażeń w ścieżce instalacji, gdy wybrano komponent menu kontekstowego.
- CVE-2026-52885Średnie
W Notepad++ przed wersją 8.9.6.4 występuje podatność TOCTOU (Time-of-Check Time-of-Use) w obsłudze pliku shortcuts.xml. Sprawdzanie HMAC odbywa się w momencie wykonania polecenia, ale dane polecenia są pobierane z pamięci, która nie jest synchronizowana z plikiem na dysku. Atakujący może podmienić plik przed uruchomieniem, a następnie przywrócić oryginalny, co pozwala na wykonanie złośliwego polecenia.
- CVE-2026-52884Wysokie
Notepad++ w wersji 8.9.6.1 zawiera podatność polegającą na braku kanonizacji ścieżki przed sprawdzeniem w funkcji isInTrustedDirectory(). Funkcja ta używa sprawdzania prefiksu, co pozwala na obejście zabezpieczenia poprzez ścieżkę zawierającą sekwencję ..\..\ po zaufanym prefiksie, prowadząc do niezaufanej lokalizacji. Luka została załatana w wersji 8.9.6.2.
- CVE-2026-48800Wysokie
Notepad++ przed wersją 8.9.6.1 zawiera podatność polegającą na braku walidacji treści tagu <Command> w pliku shortcuts.xml. Atakujący może wstrzyknąć dowolne polecenie, które zostanie wykonane po kliknięciu przez użytkownika odpowiedniej pozycji w menu Run.
Oryginalny opis (angielski, źródło NVD)
Notepad++ is a free and open-source source code editor. Prior to 8.9.6.1, the <GUIConfig name="commandLineInterpreter"> tag in config.xml is read by NppXml::value() (Parameters.cpp:6430) and stored in _nppGUI._commandLineInterpreter without any validation, whitelist, or digital signature check. When the user triggers IDM_FILE_OPEN_CMD (File → Open Containing Folder → cmd), NppCommands.cpp:228 creates a Command object with this value and calls run(), which invokes ShellExecute (RunDlg.cpp:221) with the attacker-controlled string as the executable path. This vulnerability is fixed in 8.9.6.1.

