|
Компания Truffle Security опубликовала результаты анализа утечек учётных данных в репозиториях, размещённых на GitHub. В результате сканирования 224 млн репозиториев, насчитывающих 58 миллиардов файлов, было выявлено 543 тысячи уникальных учётных данных (токенов, ключей и паролей), продолжающих действовать. Действующие учётные данные оставались в репозиториях как минимум год, так как в исследовании использовался срез состояния GitHub от 7 августа прошлого года, а проверка актуальности учётных данных, реализованная через пробные обращения к API, сетевым сервисам и хостам, была выполнена в конце июля нынешнего года.
Медианное время нахождения учётных данных в открытом доступе оценено в 784 дня, при том что самые старые ещё действующие ключи доступа были датированы 2009 годом. Около 200 тысяч найденных действующих учётных данных были помещены в репозитории после включения по умолчанию в GitHub механизма для блокировки утечек конфиденциальных данных и токенов доступа, выполняющего проверку на этапе отправки push-запросов. Утечки не были распознаны из-за размещения в форматах, не поддерживаемых в реализованной защите, при том, что непосредственно включение фильтров примерно в два раза снизило утечки распознаваемых учётных данных.
Оказалось, что GitHub успешно выявляет утечки токенов к распространённым сервисам, таким как GitHub, AWS, Slack, SendGrid, Stripe и GCP, но пропускает оставленные в коде параметры подключения к БД, ключи доступа к API Google и закрытые ключи. Параметры подключения к БД и закрытые ключи по умолчанию не блокируются для избежания ложных срабатываний. Ключи доступа к API Google не блокируются, так как имеют префикс AIzaSy, как у открытых ключей Google Maps, предназначенных для интеграции на web-страницы.
Что касается найденных учётных данных, которые оказались нерабочими, то большая часть из них относится к токенам доступа и ключам, связанным с сервисами, предоставляющими механизм отзыва. Например, из 101886 NPM-токенов был выявлен только один действующий (0.001%), из 73048 GitHub-токенов - 260 (0.35%), а из 30437 токенов Hugging Face - 15 (0.05%). Для ключей Stripe показатель выживаемости составил 4%, AWS - 8%, GCP - 8%, Slack - 2%, GitLab - 0.64%. Для сравнения из 12985 выявленных параметров подключения к СУБД PostgreSQL активными остались 11465 (88%), из 2421 параметров подключения к MySQL - 1806 (74%), из 126963 сервисных аккаунтов Google Cloud - 69041 (54%), из 3790 токенов к Docker Hub - 1244 (33%), а из 22800 ключей к SendGrid - 9189 (40%).
До этого исследователи изучили около 7.5 ПБ данных для обучения AI-моделей, распространяемых через Hugging Face, и выявили в них 221 тысячу действующих учётных данных.
|