Взламываем репозиторий GitHub при помощи GitHub Dorks
С помощью Github Dorks можно найти интересную информацию и использовать ее для получения вознаграждения, при участии в программе Багбаунти.
Всем салют, дорогие друзья!
С помощью Github Dorks можно найти интересную информацию и использовать ее для получения вознаграждения, при участии в программе Багбаунти. В этой статье я поделюсь списком GitHub Dorks и покажу, как с его помощью взломал сайт разработчиков.
Что такое GitHub Dorks и как их использовать
GitHub — это не только платформа для управления проектами и версиями кода, но также социальная сеть для программистов. Миллионы разработчиков по всему миру несколько раз за один день вносят изменения в код на GitHub, и далеко не всегда они смотрят, что именно загружают. Бывает, что они случайно забывают удалить учетные данные — логины, пароли и самые разные токены.
Багбаунти — это программа, которую владелец сайта (web-приложения) проводит для привлечения сторонних специалистов в области ИБ к поиску уязвимостей. При участии в программе Bug Bounty нужно действовать этично и придерживаться установленных правил.
Недавно мы писали о Google dorks. Так вот, в GitHub тоже есть свои дорки, которые можно использовать для поиска вкусных данных.
GitHub Dorks — это поисковые запросы, которые помогают найти репозитории с приватными данным.
С помощью Гитхаб дорков можно найти:
На сегодняшний день существует более 500 Гитхаб дорков. Некоторые из них можно использовать в поисковике Google, добавив к к поисковому запросу:
Но, при участии в программе Багбаунти, больше подходит сам GitHub, так как использует специальные операторы для поиска по репозиториям.
Например, можно использовать поиск по используемому языку программирования. В таком случае используется поисковой оператор language:
Для поиска по именам файлов в репозиториях Гитхаб используется оператор filename:
Для поиска по расширению файлов нужно использовать оператор extension:
Надо отметить, что все свежие дорки GitHub быстро попадают в руки к экспертам ИБ. Поэтому, лучше искать по репозиториям, созданным за последние несколько дней, чувствительные данные в которых могли быть незамеченными, другими багхантерами. Для этой задачи используется оператор created:
Список GitHub Dorks
Синтаксис GitHub Dorks простой:
Полный список поисковых операторов и синтаксис в справке Github.
GitHub Dorks для поиска файлов:
“компания” filename:database
“компания” filename:secrets.yml
“компания” filename:passwd
“компания” filename:LocalSettings.php
“компания” filename:config.php
“компания” filename:config.inc.php
“компания” filename:configuration.php
“компания” filename:shadow
“компания” filename:.env
“компания” filename:wp-config.php
“компания” filename:credentials
“компания” filename:id_rsa
“компания” filename:id_dsa
“компания” filename:.sqlite
“компания” filename:secret_token.rb
“компания” filename:settings.py
“компания” filename:credentials.xml
GitHub Dorks для поиска API-ключей, токенов и паролей:
GitHub Dorks для поиска на основе языка программирования:
Еще один большой список дорков. Не благодарите!
Инструменты для работы GitHub Dorks
Вот пару инструментов, которые будут полезны.
gdorklinks.sh
Простой скрипт, который генерирует ссылки поиска по GitHub с дорками. В качестве параметра необходимо указать имя или сайт компании. На выходе получаем готовые ссылки, которые просто необходимо вставить в браузер и изучить полученную информацию.
GirDorker
GitDorker не просто генерирует ссылки, а сразу ищет информацию, используя GitHub Search API и обширный список дорков, которых на данный момент 513. Этот инструмент можно назвать более продвинутым вариантом предыдущего скрипта.
Для работы потребуется завести GitHub Personal Access Token, а лучше минимум два таких токена. Это связано с тем, что поисковый API ограничен 30 запросами в минуту: если токен всего один, очень быстро упремся в лимиты.
Взлом сайта с помощью GitHub Dorks
Итак. Участвуя в программе Багбаунти и имея определенную информацию, я решил проверить свою цель на Гитхаб. Добавил название компании и ввел в поисковой строке следующий дорк:
И нашел файл, который был изменен 5 дней назад
Файл содержал много информации. Я использовал Ctrl + F для поиска домена по файлу. И в результате, нашел данные учетной записи (электронная почта и пароль).
Потом начал искать страницу авторизации, чтобы попробовать найденные учетные данные.
И, как видите на скрине ниже, у меня получилось. Я взломал репозиторий GitHub.
После чего, сообщил об этом разработчикам и получил свое вознаграждение.