Новости CVE-2024-24576: Rust стал причиной удаленного захвата Windows

NewsMaker

I'm just a script
Премиум
13,579
20
8 Ноя 2022
Уязвимость в популярных языках программирования позволяет хакерам удаленно внедрить код в систему.


wmd3tlbqaf0aclgx2qy19msavp2kku7x.jpg


В стандартной библиотеке языка программирования Rust обнаружена уязвимость , позволяющая выполнять вредоносный код в Windows .

Для просмотра ссылки Войди или Зарегистрируйся (оценка CVSS: 10) связана с ошибкой механизма передачи команд и аргументов ОС, что позволяет аутентифицированному злоумышленнику удаленно выполнять вредоносный код без взаимодействия с пользователем. Атака обладает низкой сложностью исполнения.

Группа по реагированию на угрозы безопасности Rust была Для просмотра ссылки Войди или Зарегистрируйся о том, стандартная библиотека Rust не может должным образом экранировать аргументы при вызове пакетных файлов (с расширениями bat и cmd) в Windows с помощью Command API.

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

Проблема затрагивает все версии Rust до 1.77.2 на Windows, если код программы или одна из ее зависимостей вызывает и выполняет файлы пакетной обработки с ненадежными аргументами.

Команда безопасности Rust столкнулась с проблемой сложности cmd.exe и не смогла найти решение, корректно экранирующее аргументы во всех случаях. В результате была улучшена надежность кода экранирования и изменен Command API. Если Command API не может безопасно экранировать аргумент при создании процесса, возвращается ошибка InvalidInput.

Инженер из Flatt Security, Рётак, который Для просмотра ссылки Войди или Зарегистрируйся уязвимость и назвал ее BatBadBut, отмечает, что она также затрагивает и другие языки программирования. Однако не для всех из них выпущены исправления.
  • Erlang (обновление документации);
  • Go (обновление документации);
  • Haskell (доступно исправление);
  • Java (не исправлено);
  • Node.js (исправление скоро будет доступно);
  • PHP (исправление скоро будет доступно);
  • Python (обновление документации);
  • Ruby (обновление документации).

Рётак рекомендует для предотвращения непредвиденного выполнения пакетных файлов переместить их в каталог, который не включен в переменную среды PATH. Это поможет избежать их выполнения без указания полного пути.
 
Источник новости
www.securitylab.ru

Похожие темы