В репозитории PyPI выявлено около 5000 оставленных в коде секретов и 8 вредоносных обфускаторов

Автор Сообщение
news_bot ®

Стаж: 6 лет 2 месяца
Сообщений: 27286

Создавать темы news_bot ® написал(а)
24-Ноя-2023 21:02

Исследователи GitGuardian опубликовали результаты анализа конфиденциальных данных, забытых разработчиками в коде, размещённом в репозитории Python-пакетов PyPI (Python Package Index). После изучения более 9.5 млн файлов и 5 млн релизов пакетов, связанных с 450 тысячами проектов, было выявлено 56866 фактов утечки конфиденциальных данных. Если учитывать только уникальные данные, без дублирования в разных релизах, число выявленных утечек составило 3938, а число проектов, в которых присутствует хотя бы одна утечка - 2922.
Всего выделено более 150 типов утечек конфиденциальной информации, среди которых обычные пароли, криптографические ключи, токены доступа к облачным сервисам, системам непрерывной интеграции и API. Как минимум 768 учётных данных оставались действующими на момент проведения исследования. В качестве примера популярных утечек, сохраняющих актуальность, упоминаются ключи доступа к Azure Active Directory, учётные данные к SSH, MongoDB, MySQL и PostgreSQL, ключи к GitHub OAuth App, Dropbox и Auth0, параметры входа в Coinbase и Twilio.
Из набирающих популярность типов утечек упоминаются токены для доступа к ботам в Telegram, число которых удвоилось в начале 2021 года и затем ещё раз удвоилось весной 2023 года.
Постоянный рост утечек также фиксируется с 2020 года для ключей доступа к Google API, а с 2022 года - учётных данных к СУБД. Из пакетов, лидирующих по числу утечек, упоминаются пакеты chatllm и
safire, в которых были забыты 209 ключей к OpenAI и 320 ключей к Google Cloud.
Среди типов файлов, в которых выявлено наибольшее число утечек, помимо файлов с расширением ".py", отмечаются файлы с расширением .json (610 утечек), .md (270), PKG-INFO (240), METADATA (210), .txt (170), а также файлы README (209) и файлы из каталогов с именем test (675). Много утечек также связано с недосмотром и ошибками с настройкой исключения файлов при формировании пакетов. Например, файлы с локальными файлами конфигурации (.cookiecutterrc, .env, .pypirc и т.п.) могут исключаться из Git-репозитория через файл ".gitignore", который не учитывается при создании пакета. В частности, в репозитории было найдено 43 файла .pypirc, содержащих учётные данные для доступа к PyPI. В 15 случаях утечек разработчики не планировали публично размещать пакеты, изначально созданные для внутреннего использования, но опубликовали их в PyPI по ошибке.
Дополнительно можно упомянуть ещё два события, связанных с PyPI:
  • В репозитории PyPI выявлены 8 вредоносных пакетов, преподносимых как утилиты для обфускации, т.е. приведения кода к нечитаемому виду, усложняющему восстановление алгоритма работы. Выявленные пакеты содержали в названиях строку "pyobf" (Pyobftoexe, Pyobfusfile, Pyobfexecute, Pyobfpremium, Pyobflight,
    Pyobfadvance, Pyobfuse и pyobfgood) и были загружены более 2000 раз.
    Интегрированный в пакеты вредоносный код был специфичен для платформы Windows и позволял подключаться к внешнему управляющему серверу, запускать произвольные команды на компьютере разработчика, находить и отправлять на внешний сервер конфиденциальную информацию, такую как ключи доступа, а также передавать произвольные файлы с системы. Кроме того, вредоносный код мог выполнять функции кейлоггера, перехватывать вводимые в Chrome пароли, создавать скриншоты, записывать звук и даже управлять web-камерой.
  • Опубликованы результаты независимого аудита кодовой базы инструментария, применяемого для организации работы репозитория pypi.org, и фреймворка "cabotage", задействованного в инфраструктуре для оркестровки контейнеров. Аудит проведён при поддержке некоммерческой организации OTF (Open Technology Fund). В ходе аудита не выявлено проблем с высоким уровнем опасности, а исходные тексты признаны отвечающими основным требованиям к безопасному написанию кода. При этом отмечен недостаточный охват тестами кодовой базы cabotage и выявлено 29 проблем, из которых восьми присвоен умеренный уровень опасности, 6 - низкий, а 14 помечены как информирующие замечания.
    Наиболее заметные проблемы:
    • Недостаточная проверка цифровых подписей, используемых для интеграции PyPI с AWS SNS, позволяла отправлять уведомления на email отдельных пользователей.
    • Утечка информации в обработчике загрузок, позволяющая определить существование учётной записи без генерации событий о попытках входа.
    • Применение ненадёжных криптографических хэшей, не исключающих атаки по отравлению кэша.
    • При наличии прав запуска процессов сборки через cabotage, атакующий потенциально мог добиться подстановки своих команд.
    • При наличии прав развёртывания (deployment) в cabotage, атакующий потенциально мог развернуть легитимно выглядящий образ.

===========
Источник:
OpenNet.RU
===========

Похожие новости: Теги для поиска: #_pypi, #_malware
Профиль  ЛС 
Показать сообщения:     

Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы

Текущее время: 29-Апр 13:44
Часовой пояс: UTC + 5