- Автор темы
- #1
Утечка конфиденциальной информации через .gitignore
Отсутствие должной защиты для файлов .gitignore может привести к серьезным проблемам для компании или организации, потому что некоторые из них могут содержать конфиденциальные данные, такие как учетные данные для входа и др.
Однако иногда разработчики не хотят, чтобы все файлы отправлялись в репозиторий, потому что некоторые из них могут содержать конфиденциальные данные, такие как учетные данные для входа, или, возможно, файл слишком велик для отправки или не нужен в репозитории. В этом случае разработчик будет использовать
Как это работает: разработчик создает текстовый файл с именем
Но если автоматические инструменты не разрешены, вы можете просто перейти на
На следующем снимке экрана показан пример общедоступного
Анализируя пути и копаясь в файлах, я обнаружил файл JSON, в котором подробно описаны учетные данные для входа в базу данных MySQL.
Удаленное подключение к Mysql было включено, и я смог войти в базу данных, используя эти учетные данные.
Отсутствие должной защиты для файлов .gitignore может привести к серьезным проблемам для компании или организации, потому что некоторые из них могут содержать конфиденциальные данные, такие как учетные данные для входа и др.
Вступление
В этой статье рассказывается о Git и показан пример типичной неправильной конфигурации.Общие сведения
При работе с Git, когда вы пишете git push, он автоматически отправляет все изменения, сделанные в каталоге вашего проекта, в репозиторий Git.Однако иногда разработчики не хотят, чтобы все файлы отправлялись в репозиторий, потому что некоторые из них могут содержать конфиденциальные данные, такие как учетные данные для входа, или, возможно, файл слишком велик для отправки или не нужен в репозитории. В этом случае разработчик будет использовать
.gitignore, чтобы git не отслеживал изменения в этих файлах или каталогах. Как это работает: разработчик создает текстовый файл с именем
.gitignore (без расширения), который сохраняется в корне репозитория. Каждая строка .gitignore - это шаблон для файлов или каталогов, которые они не хотят отправлять в репозиторий. При этом отсутствие должной защиты такого файла может привести к серьезным проблемам для компании или организации.Обнаружение этой проблемы
Если разрешены инструменты перебора файлов и каталогов, вы можете использовать dirsearch или любой другой инструмент с надежным списком слов.Но если автоматические инструменты не разрешены, вы можете просто перейти на
https://example.com/.gitignore или другие аналогичные пути, такие как .git/config, .git/HEAD, .git/logs/HEAD, .git/indexНа следующем снимке экрана показан пример общедоступного
.gitignore. Анализируя пути и копаясь в файлах, я обнаружил файл JSON, в котором подробно описаны учетные данные для входа в базу данных MySQL.
Удаленное подключение к Mysql было включено, и я смог войти в базу данных, используя эти учетные данные.
Исправление
Устранение проблемы было довольно простым, нужно было просто изменить права доступа к файлу и убедиться, что он не является общедоступным.Заключение
Часто скрытый контент приложения становится доступен по причине человеческого фактора, что негативно сказывается на безопасности системы или организации. По подобным причинам я рекомендую уделять больше времени разведке и исследованию различных конечных точек сайта для большего понимания цели и поиска интересных мест.- Telegram
