ProduktNotepad++ – wersja starsza niż 9.7
Numer CVECVE-2026-54758
Krytyczność5.5/10
CVSSAV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H
OpisFunkcja expandNppEnvironmentStrs w pliku PowerEditor/src/WinControls/StaticDialog/RunDlg/RunDlg.cpp (wiersze 131–135) kopiuje nazwę zmiennej Notepad++ do bufora stosu o stałym rozmiarze (wchar_t str[MAX_PATH]) bez sprawdzania indeksu pętli. Jeśli nazwa zmiennej między znakami „$(” i „)” ma długość 260 znaków lub więcej, zapis przepełnia bufor, uszkadzając sąsiednie dane stosu.
  
Numer CVECVE-2026-52886
Krytyczność7.8/10
CVSSAV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
OpisGdy Notepad++ przywraca plik sesji (tryb migawki), weryfikuje atrybut backupFilePath z pliku session.xml za pomocą funkcji std::wstring::starts_with() pod kątem oczekiwanej ścieżki do katalogu kopii zapasowej. Jest to porównanie prefiksu ciągu znaków bez normalizacji ścieżki. Ścieżka dostarczona przez atakującego, która zaczyna się od ciągu znaków katalogu kopii zapasowej, ale zawiera sekwencje ..\, przechodzi kontrolę. Po otwarciu pliku system operacyjny rozpoznaje odwołania do katalogu nadrzędnego, odczytując dowolny plik spoza katalogu kopii zapasowej.
  
Numer CVECVE-2026-57233
Krytyczność8.1/10
CVSSAV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:H
OpisProcedura rozpakowywania plików ZIP w WinGup (decompress() w kodzie instalatora wtyczki WinGup) nie weryfikuje, czy ścieżki do wyodrębnionych plików pozostają w docelowym katalogu. Złośliwie spreparowany pakiet wtyczki (archiwum ZIP) może zawierać wpis, którego nazwa pliku zawiera sekwencje przechodzenia przez ścieżkę (np. ../mimeTools/mimeTools.dll). Po rozpakowaniu wpis ten jest zapisywany poza docelowym folderem wtyczki i może nadpisać bibliotekę DLL należącą do innej, już zainstalowanej wtyczki. Jeśli Notepad++ następnie załaduje tę bibliotekę DLL, w procesie Notepad++ zostanie wykonany kod kontrolowany przez atakującego.
  
AktualizacjaTAK
Linkhttps://community.notepad-plus-plus.org/topic/27604/notepad-release-8.9.7