Код найма-5
Код найма-5
Код найма-5

🔥 GitHub хранит даже «удалённые» коммиты — багхантер уже заработал на этом $25 000

Новости

На всякий случай, лучше перепроверить себя специальной утилитой...

251 открытий3К показов
🔥 GitHub хранит даже «удалённые» коммиты — багхантер уже заработал на этом $25 000

Белый хакер Шэрон Бризинов доказал: даже после force push коммиты на GitHub остаются доступными — и в них всё ещё можно найти утекшие токены, ключи и пароли.

С помощью автоматизированного сканера и немного удачи он нашел десятки «секретов» и заработал $25 000 на обнаружении бага.

«Удалено» ≠ удалено

Если разработчик закоммитил секрет и потом «удалил» его через git reset --hard и git push --force, кажется, что следов не осталось. Но это не так: GitHub сохраняет все коммиты, включая те, что больше не привязаны ни к одной ветке.

В публичном GitHub Archive они фиксируются как PushEvent с нулём коммитов — сигнал, что была перезапись истории.

Бризинов проанализировал такие события с 2020 года, нашёл десятки тысяч «висячих» коммитов и проверил их содержимое через TruffleHog — инструмент для поиска секретов.

Как это работает

Исследователь:

  • использовал GitHub Archive и Event API, чтобы находить force push-события без коммитов;
  • для каждого события вытаскивал «удалённый» хеш коммита;
  • клонировал репозиторий и просматривал содержимое коммита через TruffleHog;
  • фильтровал результаты, выделяя потенциально ценные секреты.

Для упрощения анализа он даже написал собственную платформу и подключил ИИ для оценки значимости найденных ключей.

Самый опасный кейс — доступ к репозиториям Istio

Один из найденных токенов дал администраторский доступ ко всем репозиториям Istio — проекта с 36 000 звёзд и десятками тысяч пользователей, включая Google, IBM и Red Hat.

Уязвимость могла привести к масштабной supply-chain атаке. К счастью, команда быстро отреагировала и отозвала ключ.

Что это значит для разработчиков

  • Force push не стирает историю — коммиты всё ещё доступны публично.
  • Любой закоммиченный секрет нужно немедленно отозвать — даже если он «удалён».
  • .env, config.js и README.md — самые частые источники утечек.

GitHub пока не предлагает инструмента для обнаружения таких уязвимостей, но Truffle Security уже опубликовал open-source сканер, чтобы проверить свою организацию.

Следите за новыми постами
Следите за новыми постами по любимым темам
251 открытий3К показов