Разработчики используют Гит
Чтобы версию контролировать свой исходный код. Мы все делаем, на самом деле, этот блог в настоящее время версию портить
. Однако мы не только используем Гит
Для контроля версий, но и для развертывания приложений. Обычно мы нажимаем новый код на удаленный сервер, где сервер заботится о тестировании кода, а затем развертывание приложения. Существуют разные способы развертывания приложения, но это один из них.
Некоторые разработчики/SYS-администраторы просто клонируют репозиторий на их сервер, просто укажите свой веб-сервер в этот каталог. Большинство VCS поддерживают скрытый каталог в корне проекта. Гит
держит озвучивать
Справочник в корне репозитория, где хранятся вся информация о том, что сохраняется, например, журналы, версии, теги, конфиги, предыдущие изменения и т. Д.
Не только некоторые разработчики/SYS-администраторы клонируют репозиторий на своем сервере, но они также указывают на их веб-сервер в этот каталог. Не только то, что они также иногда меняют источник, чтобы установить некоторые конфигурации файлов с чувствительной информацией (электронную почту/пароль и т. Д.).
Если веб-сервер указывает на Гит
Репозиторий и включен список каталогов, мы могли бы скачать .git
Использование wget/curl
Рекурсивно, тогда просто оформить должность мастера и вуаля.
Например, скажем, https://seds.nl/.git Существует, содержащий все объекты этого блога, мы могли бы просто запустить Wget --mirror. -Я .Git.git. https://seds.nl/.git
Для скачивания репозитория.
Как найти открытые репозитории Git
Мы можем просто попробовать каждый URL-адрес, который мы знаем, добавив/.git в конце TLD.
Просто шучу.
Простой способ найти сайты, которые в настоящее время выставляют озвучивать
использует Google D0RKS. Если вы не знакомы с Google D0RKS, в основном несколько операторов Google предлагает вам отфильтровывать несколько запросов. Здесь это список нескольких из них. Тот, который нам нужен, это Intext:
оператор.
intext:"Index of /.git"
Этот запрос использует Intext
оператор. Это позволяет нам просить Google найти все страницы, которые имеют определенное слово в организме где-то принуждая включения на страницу ( Источник )
Святой Ш1т. Это ~ 89 900 результатов из Google. Можете ли вы представить, насколько должна быть конфиденциальной информации?
Как это исправить
Ну, прежде всего, найдите лучший способ получить ваш исходный код на удаленный сервер и просто указывая на ваш веб-сервер в этот каталог. Если вам не хочется найти лучший путь, или просто хочу держать вещи простыми, вот то, что вам нужно сделать.
Nginx.
Добавьте следующее указание NGINX, чтобы отрицать любой запрос к каталогу .git:
location ~ /.git/ { deny all; }
Apache.
Добавьте следующее указание Apache, чтобы отказать любой запрос к каталогу .git:
Order deny,allow Deny from all
Единственный вопрос, который остается: есть ли в любом случае, вы можете извлечь озвучивать
С веб-сервера, который имеет ли список каталогов отключен? Я не посмотрел в него, но мне интересно, есть ли в любом случае, мы могли бы использовать Гит
против себя.
Оригинал: «https://dev.to/seds/finding-exposed-git-repositories-49bj»