Более 543 000 учётных данных, опубликованных в общедоступных репозиториях GitHub, оставались действительными в июле, несмотря на меры безопасности платформы, призванные предотвратить случайную утечку конфиденциальных данных.
Данные, полученные в результате сканирования 224 миллионов репозиториев и более 58 миллиардов файлов, показывают, что в среднем уникальное учётное имя оставалось в открытом доступе 784 дня.
Исследование было проведено компанией Truffle Security, которая выяснила, что около 10% рабочих учётных данных были созданы более 6,3 года назад, а самое старое из них — в 2009 году.
В общей сложности исследователи выявили 543 699 уникальных учетных данных, которые неоднократно использовались в более чем 1,1 миллиона файлов и репозиториев, включая копии в форках.
Оценка проводилась на основе набора данных, собранного для обучения больших языковых моделей, по результатам сканирования, завершившегося 7 августа 2025 года.
По данным Truffle Security, количество раскрытых учетных данных на GitHub более чем в два раза превышает показатель, выявленный в августе после сканирования Hugging Face, где было обнаружено 221 303 рабочих учетных данных.
Исследователи отмечают, что плотность секретных данных со временем увеличилась: количество рабочих учетных данных выросло с 3,72 на миллион файлов в 2015 году до 11,62 в 2025 году.

Обзор результатов Truffle
Источник: Truffle Security
Эффект Push Protection
Функция Push Protection, разработанная GitHub для защиты от случайной утечки учетных данных, была представлена в апреле 2022 года для пользователей с расширенными настройками безопасности и стала доступна для общедоступных репозиториев в мае 2023 года. Год спустя GitHub включил ее по умолчанию.
Этот механизм сканирует входящий код на наличие секретных данных, таких как ключи API и токены доступа, и блокирует загрузку, если обнаруживает их. Однако это не отменяет действие ранее предоставленных учетных данных.
По данным Truffle Security, 199 843 учетных данных, обнаруженных в июле, были раскрыты после того, как в феврале 2024 года GitHub активировал Push Protection для всех пользователей. Это примерно 36,8% от общего числа.
Чуть более половины (51,8%) реальных учетных данных относятся к категориям, которые не блокируются Push Protection по умолчанию, включая строки подключения к базе данных и ключи Google API.
Однако функция Push Protection, судя по всему, эффективна в рамках своего покрытия: количество раскрытых учетных данных в защищенных категориях сократилось на 53 % после того, как эта функция была включена по умолчанию.

Раскрытие секретов
Источник: Truffle Security
Отзыв раскрытых секретов
Если рассматривать набор данных в более широком смысле, Truffle сообщает, что некоторые типы учетных данных отзываются гораздо чаще, чем другие, в зависимости от сервиса.
Например, из 101 886 зафиксированных токенов npm исследователи нашли только один, который все еще работал. Для сравнения: из 126 963 раскрытых учетных данных Google Cloud 69 041 были действительными и работали на момент анализа.
Практическая рекомендация для пострадавших: немедленно сменить открытые учетные данные, очистить репозитории, проверить историю и установить автоматическое истечение срока действия для всех активных секретов.
Результаты исследования Truffle Security показывают уровень и масштабы раскрытия рабочих секретов на GitHub, но не раскрывают, какой процент этих секретов на самом деле был украден и использован злоумышленниками.
