Критическая уязвимость в Notepad++ позволяет выполнить произвольный код через конфигурационный файл

notepad++

Популярный текстовый редактор Notepad++ выпустил обновление 8.9.6.1, которое закрывает три уязвимости, включая одну критическую. Проблема связана с некорректной обработкой конфигурационных файлов и позволяет злоумышленнику запустить произвольную программу на компьютере жертвы. Патч вышел 26 мая 2026 года, и пользователям настоятельно рекомендуется установить его как можно скорее.

Детали уязвиомостей

Самая опасная уязвимость зарегистрирована под номером CVE-2026-48778. Она относится к категории CWE-78 - внедрение команд операционной системы. Причина кроется в том, как Notepad++ читает файл config.xml. Внутри этого файла есть параметр "<GUIConfig name=”commandLineInterpreter”>", который определяет, какую программу запускать при вызове функции "Открыть содержащую папку в cmd". Разработчики не проверяли это значение - не использовали списки разрешённых путей, не проводили проверку целостности и не фильтровали ввод. В результате злоумышленник может подменить команду на любую другую исполняемую программу.

Демонстрация уязвимости показывает, что если записать в конфигурационный файл строку "calc.exe", то при активации упомянутой функции вместо командной строки откроется стандартный калькулятор Windows. Это, по сути, доказывает возможность выполнения произвольного кода через манипуляции с конфигурацией.

Хотя атака требует взаимодействия пользователя, существует несколько практических сценариев её реализации. Например, злоумышленник может напрямую изменить файл %APPDATA%\Notepad++\config.xml в контексте текущего пользователя. Другой вариант - распространить вредоносные ярлыки, которые через параметр "-settingsDir" заставляют Notepad++ загружать конфигурацию из каталога, подконтрольного атакующему. Кроме того, уязвимость можно использовать через облачную синхронизацию путей конфигурации, которую поддерживает редактор, либо с помощью методов социальной инженерии: например, обманом заставить пользователя распаковать специально подготовленный архив в папку AppData. Такие методы позволяют внедрить вредоносный код в обычный рабочий процесс, не вызывая подозрений.

Помимо основной проблемы, были исправлены две другие уязвимости. CVE-2026-48770 - это уязвимость, приводящая к аварийному завершению редактора при обработке некорректно сформированных структур. Она может использоваться для отказа в обслуживании. CVE-2026-48800 связана с некорректной обработкой файла shortcuts.xml и также позволяет выполнить произвольный код.

Основная уязвимость CVE-2026-48778 получила высокий уровень опасности, поскольку она напрямую влияет на целостность системы и позволяет изменить ход выполнения команд. Несмотря на необходимость взаимодействия пользователя, низкая сложность атаки и отсутствие требований к привилегиям делают её серьезной угрозой в реальных сценариях.

Организациям и частным пользователям следует немедленно обновить Notepad++ до версии 8.9.6.1. Патч устраняет проблему за счёт улучшенной проверки конфигурационных параметров. В числе дополнительных мер защиты эксперты рекомендуют отслеживать изменения в конфигурационных файлах редактора, ограничивать права записи в папки %APPDATA% и, по возможности, проверять пути к исполняемым файлам перед их запуском.

Этот инцидент вновь напоминает о широких рисках, связанных с отсутствием проверки входных данных в конфигурационных файлах популярных приложений. Даже такое простое и всеми любимое средство, как Notepad++, может стать точкой входа для атакующего, если разработчики не уделяют должного внимания валидации настроек и ограничению путей выполнения команд. Обеспечение корректной обработки любых входящих данных и строгое ограничение того, какие программы можно запускать, остаются ключевыми шагами для снижения подобных угроз.

Ссылки

Комментарии: 0