Команда дослідників з компанії Phylum виявила критичну загрозу безпеки в популярному Python-пакеті aiocpa, який використовується для взаємодії з платіжною системою Crypto Pay. Пакет, завантажений понад 12 000 разів, містив шкідливий код у версії 0.1.13, спрямований на викрадення конфіденційних криптовалютних даних користувачів.
Особливості виявленої атаки на ланцюг постачання
Дослідження показало унікальний характер цієї атаки на ланцюг постачання програмного забезпечення. Зловмисники застосували витончену техніку компрометації, розмістивши шкідливий код виключно у версії пакета на PyPI, залишивши при цьому GitHub-репозиторій незараженим. Така стратегія значно ускладнила виявлення загрози, оскільки багато розробників перевіряють код саме через GitHub перед встановленням пакетів.
Технічні аспекти шкідливого коду
Аналіз показав наявність складного обфускованого коду в файлі sync.py. Зловмисники використали багаторівневе кодування та компресію шкідливого навантаження, застосувавши 50 рівнів рекурсивної обробки. Після активації код автоматично сканував систему на наявність API-токенів Crypto Pay та передавав їх через спеціально створеного Telegram-бота на сервери зловмисників.
Заходи протидії та рекомендації з безпеки
Адміністрація PyPI швидко відреагувала на загрозу, помістивши пакет у карантин та згодом видаливши його з репозиторію. Наразі проводиться розслідування щодо можливої компрометації облікових даних розробника або його потенційної участі у поширенні шкідливого коду. Спеціалісти з кібербезпеки рекомендують впровадити наступні захисні заходи:
- Використовувати інструменти автоматизованого аналізу безпеки пакетів
- Регулярно проводити аудит залежностей проекту
- Застосовувати принцип мінімальних привілеїв при роботі з API-токенами
- Впровадити системи моніторингу підозрілої активності
Цей інцидент яскраво демонструє зростаючу складність та витонченість атак на ланцюги постачання програмного забезпечення. Розробникам та організаціям необхідно посилити заходи безпеки при роботі з зовнішніми залежностями та впровадити комплексний підхід до захисту своїх проектів від подібних загроз. Регулярний моніторинг, своєчасне оновлення систем безпеки та дотримання принципів безпечного програмування залишаються ключовими елементами захисту від сучасних кіберзагроз.