09.09.2023 14:31
Вийшла нова версія Notepad++ 8.5.7 з виправленням чотирьох вразливостей
Випущено версію Notepad++ 8.5.7, у якій виправлено декілька вразливостей нульового дня. Одна з них позначена як така, що потенційно може призвести до виконання коду шляхом обману користувачів при відкритті спеціально створених файлів.
Notepad++ – популярний безкоштовний редактор вихідного коду, який підтримує багато мов програмування, може бути розширений за допомогою плагінів і пропонує функції, що підвищують продуктивність, такі як редагування коду з кількома вкладками та підсвічування синтаксису.
Дослідник безпеки GitHub Jaroslav Lobačevski повідомляв розробникам про вразливості в Notepad++ версії 8.5.2 останні декілька місяців.
Також дослідник публікував PoC (Proof of concept) вразливостей в загальному доступі, тому користувачам необхідно оновити програму якнайшвидше.
Недоліки безпеки в Notepad++
Виявлені вразливості пов’язані з переповненнями буфера динамічної пам’яті при записі та читанні в різних функціях та бібліотеках, що використовуються в Notepad++.
Ось короткий опис чотирьох вразливостей, виявлених дослідником GitHub:
- CVE-2023-40031: Переповнення буфера у функції Utf8_16_Read::convert через невірні припущення про перетворення кодування UTF16 в UTF8.
- CVE-2023-40036: Глобальне переповнення буфера при читанні в CharDistributionAnalysis::HandleOneChar, викликане порядком індексів масиву на основі розміру буфера, посилене використанням бібліотеки uchardet.
- CVE-2023-40164: Глобальне переповнення при читанні буфера у nsCodingStateMachine::NextState. Пов’язано з певною версією бібліотеки uchardet, що використовується в Notepad++, вразливою через її залежність від розміру буферу charLenTable.
- CVE-2023-40166: Переповнення буферу динамічної пам’яті при читанні в FileManager::detectLanguageFromTextBeginning через відсутність перевірки довжини буферу при визначенні мови файлу.
Найсерйознішою з цих вразливостей є CVE-2023-40031, якій присвоєно рейтинг CVSS v3 7.8 (високий), що потенційно може призвести до довільного виконання коду.
Однак, деякі користувачі заперечують, що виконання коду з використанням цієї вразливості можливе.
“Хоча технічно це “переповнення буфера”, насправді це всього лише помилка з практично нульовим шансом на довільне виконання коду”, – йдеться в коментарі на GitHub.
Інші три вразливості є проблемами середньої тяжкості (5.5), які, за словами Lobačevski, можуть бути використані для витоку інформації про розподіл внутрішньої пам’яті.
Незважаючи на те, що пост в блозі Lobačevski та PoC експлойтів були опубліковані 21 серпня 2023 року, команда розробників Notepad++ не поспішала реагувати на ситуацію, поки користувацька спільнота не почала вимагати її вирішення.
Нагадаємо, що в серпні аналітики Fireblocks виявили вразливості нульового дня у MPC гаманцях.