Разработчики: | Positive Technologies (Позитив Текнолоджиз) |
Дата премьеры системы: | 2022/12/23 |
Технологии: | TMS - Test Management System, ИБ - Антивирусы |
PT PyAnalysis — сервис для выявления подозрительных и вредоносных Python-пакетов, интегрируемый в процессы разработки ПО.
2022: Сбор заявок на ранний доступ к сервису
Positive Technologies создала инструмент PT PyAnalysis для выявления подозрительных и вредоносных Python-пакетов и открыла сбор заявок на ранний доступ к своему сервису. Поскольку Python-пакеты используются большинством разработчиков, им придется внимательно изучать внешние зависимости и встраивать механизм их анализа в процесс разработки. В ходе исследования репозитория PyPI, которое длилось восемь месяцев, эксперты компании обнаружили 175 вредоносных пакетов, часть из них находилась там с 2018 года. Об этом компания Positive Technologies рассказала 23 декабря 2022 года.
Эксперты PT обнаружили в найденных пакетах различные типы или следы вредоносного ПО:
- стилеры (stealer) — вредоносное программное обеспечение для кражи паролей пользователей (63%);
- бэкдоры (backdoor) — ПО, с помощью которого злоумышленники могут незаметно дистанционно управлять устройством жертвы (20%);
- программы-загрузчики (downloader) — используются для загрузки вредоносного ПО на компьютер жертвы (6%);
- нежелательную для пользователя активность, например назойливые уведомления или удаление учетной записи Telegram (8%);
- proof of concept вредоносного ПО без вредоносной активности, разрушительных действий или краж (2%);
- программы-вымогатели (1%).
Разработчики загружают пакеты в свое программное обеспечение, что позволяет злоумышленнику атаковать пользователей этого ПО. Исследование выявило, что средняя продолжительность жизни вредоносного пакета до его удаления — 13 дней. Это достаточный срок для заражения компьютера пользователя. Чаще всего пакеты маскируются под легитимные и используются для кражи данных.«Гознак» развивает систему «Электронный бюджет» с помощью импортозамещенных решений экосистемы EvaTeam
Создать репозиторий с незанятым именем на pypi.org для хранения Python-пакетов может любой желающий. У администраторов есть система Malware Checks, но ее правила обнаружения лежат в исходном коде проекта, и обойти их достаточно просто. Сама система при этом не является блокирующей: сигналы приходят на почту администраторам, после чего происходит проверка кода пакета и принимается решение о блокировке.
Злоумышленники используют различные техники, связанные с компрометацией разработчиков, имитацией легитимных пакетов и обфускацией . Со временем их действия становятся все более эффективными и незаметными. Чтобы построить полноценную систему защиты от таких угроз, требуется привлечь специалистов по анализу вредоносного кода.
Система PyAnalysis компании Positive Technologies отличается автоматизацией, и в этом ее особенность: через API пользователи могут отправить название Python-пакета на проверку и получить оценку его опасности (clean, suspicious, malicious). Экспертиза в области анализа вредоносного кода не требуется. Система не только выдает ясный вердикт, но и объясняет, почему тот или иной пакет является вредоносным.
![]() | «Когда разработчик загружает пакет в свое программное обеспечение, то не подозревает, что он заражен и злоумышленник получает возможность атаковать пользователей этого ПО. Именно поэтому наша система проверки Python-пакетов из репозитория PyPI работает по модели as a service: каждый может протестировать ее в своем процессе безопасной разработки. На этапе тестирования использование этой системы будет бесплатным. Мы ожидаем, что Python-разработчики и специалисты по безопасной разработке оценят PT PyAnalysis и поделятся с нами своими замечаниями, чтобы мы смогли улучшить этот сервис и сделать его удобным для всех», — отметил Максим Долгинин, руководитель по развитию направления по работе с данными о киберугрозах, Positive Technologies. | ![]() |
Оставить заявку на доступ к сервису можно на странице PT PyAnalysis.
Подрядчики-лидеры по количеству проектов
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
Распределение вендоров по количеству проектов внедрений (систем, проектов) с учётом партнёров
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
Данные не найдены
Распределение систем по количеству проектов, не включая партнерские решения
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
Подрядчики-лидеры по количеству проектов
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
Данные не найдены
Распределение вендоров по количеству проектов внедрений (систем, проектов) с учётом партнёров
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
Данные не найдены
Распределение систем по количеству проектов, не включая партнерские решения
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)