События

Установка Python-пакетов может спровоцировать запуск вредоносного кода

Язык программирования Python позволяет инсталляцию пакетов, которые затем могут быть включены в состав приложения для расширения его возможностей. При запуске программы исполняется и код в пакетах, однако этот код также может выполняться в процессе установки самого пакета. Как продемонстрировал исследователь под псевдонимом mschwager, данная особенность может быть использована для запуска вредоносного кода.

Специалист разработал метод атаки, эксплуатирующий файл setup.py в модулях Python для запуска кода при установке пакета. Используя данный метод, атакующий может разместить в пакете вредоносный код, исполняемый с привилегиями суперпользователя, хотя не всем пактам необходим столь высокий уровень разрешений. В подтверждение теории mschwager разработал PoC-код, который опубликовал на GitHub.

Обычно модули Python устанавливаются с помощью менеджера пакетов pip, запускающего конфигурационный файл setup.py. Как правило, данному файлу уделяется мало внимания, поскольку он нужен только для добавления модуля. В связи с этим пользователи менее склонны анализировать конфигурационный файл, что предоставляет злоумышленнику легкую возможность инфицировать устройства без модификации модуля, пояснил в интервью ресурсу BleepingComputer аналитик Malwarebytes, известный в Сети как Tigzy.

Более того, код в пакетах Python может никогда не выполниться, если приложению не нужен данный функционал. Однако внедрение вредоносного кода в setup.py позволит злоумышленнику незаметно установить вредоносное ПО, невзирая, используется Python-пакет или нет.

Случаи внедрения вредоносных библиотек Python в каталоги нередки. К примеру, осенью минувшего года в хранилище пакетов PyPI были выявлены десять вредоносных библиотек. Для их загрузки злоумышленики применили метод, известный как тайпсквоттинг, то есть использовали имена, схожие с названиями легитимных пакетов, но с «опечаткой», например, «urlib» вместо «urllib».

Pip — система управления пакетами, которая используется для установки и управления программными пакетами, написанными на Python.

Источник

Автор: Сергей Куприянов
5.09.2018 (09:58)
Пройди тест и узнай об этом!
Информер новостей
Расширение для Google Chrome

Все права защищены © 2010-2024

"alterprogs.com" - технологии будущего

Контакты  | Карта сайта

Использование любых материалов, размещенных на сайте, разрешается при условии ссылки на alterprogs.com. Для интернет-изданий - обязательна прямая открытая для поисковых систем гиперссылка. Ссылка должна быть размещена в независимости от полного либо частичного использования материалов. Материалы в рубрике "Новости партнеров" публикуются на правах рекламы.