Введение
В этой лабораторной работе вы научитесь эффективно использовать Gobuster, популярный инструмент для брутфорса директорий и файлов, для сохранения результатов сканирования в файл. Сохранение результатов сканирования является фундаментальной практикой в кибербезопасности, позволяющей проводить детальный анализ, составлять отчеты и использовать их для будущих ссылок. Мы пройдемся по процессу создания команды Gobuster, указания выходного файла, выполнения сканирования и проверки целостности сохраненных результатов. Этот навык необходим всем, кто занимается тестированием безопасности веб-приложений или пентестингом, поскольку он гарантирует, что ценные находки будут должным образом задокументированы и доступны.
Создание стандартной команды gobuster dir
На этом шаге вы создадите базовую команду gobuster dir. Команда gobuster dir используется для брутфорса директорий и файлов. Мы укажем целевой URL и распространенный список слов (wordlist).
Сначала убедитесь, что вы находитесь в директории ~/project.
cd ~/project
Теперь давайте создадим базовую команду gobuster dir. В качестве целевого URL мы будем использовать http://127.0.0.1:8080, а в качестве списка слов — /usr/share/wordlists/dirb/common.txt.
gobuster dir -u http://127.0.0.1:8080 -w /usr/share/wordlists/dirb/common.txt
Эта команда начнет сканирование цели на наличие директорий и файлов, перечисленных в списке слов, и отобразит результаты непосредственно в терминале.
Ожидаемый вывод (частичный):
===============================================================
Gobuster v3.5
by OJ <oj@gobuster.io>
===============================================================
[+] Url: http://127.0.0.1:8080
[+] Method: GET
[+] Threads: 10
[+] Wordlist: /usr/share/wordlists/dirb/common.txt
[+] Add Slash: false
[+] Allow Timeouts: false
[+] User Agent: gobuster/3.5
[+] Timeout: 10s
===============================================================
2024/01/01 12:00:00 Starting gobuster in directory enumeration mode
===============================================================
/admin.html (Status: 200)
/secret.txt (Status: 200)
/testdir (Status: 200)
...
Добавление флага -o для указания выходного файла
На этом шаге вы измените команду gobuster, добавив флаг -o, который позволяет указать выходной файл для результатов сканирования. Это крайне важно для сохранения ваших находок для последующего анализа.
Мы сохраним вывод в файл с именем gobuster_results.txt в вашей директории ~/project.
Измените предыдущую команду, добавив -o gobuster_results.txt:
gobuster dir -u http://127.0.0.1:8080 -w /usr/share/wordlists/dirb/common.txt -o gobuster_results.txt
Эта команда выполнит сканирование и, вместо простого вывода в консоль, запишет все находки в указанный файл.
Выполнение сканирования
На этом шаге вы выполните команду gobuster с флагом -o. Это запустит процесс перечисления директорий и сохранит результаты в файл gobuster_results.txt.
Выполните команду, которую вы составили на предыдущем шаге:
gobuster dir -u http://127.0.0.1:8080 -w /usr/share/wordlists/dirb/common.txt -o gobuster_results.txt
Сканирование будет запущено, и вы можете увидеть некоторый вывод в терминале, но полные результаты будут направлены в файл. Дождитесь завершения сканирования. Это может занять несколько минут в зависимости от размера списка слов.
Ожидаемый вывод (частичный, так как большая часть вывода направляется в файл):
===============================================================
Gobuster v3.5
by OJ <oj@gobuster.io>
===============================================================
[+] Url: http://127.0.0.1:8080
[+] Method: GET
[+] Threads: 10
[+] Wordlist: /usr/share/wordlists/dirb/common.txt
[+] Add Slash: false
[+] Allow Timeouts: false
[+] User Agent: gobuster/3.5
[+] Timeout: 10s
===============================================================
2024/01/01 12:00:00 Starting gobuster in directory enumeration mode
===============================================================
Проверка создания выходного файла
На этом шаге вы проверите, был ли успешно создан файл gobuster_results.txt в вашей директории ~/project после завершения сканирования.
Используйте команду ls для вывода содержимого вашей текущей директории и проверки наличия файла gobuster_results.txt.
ls -l
Вы должны увидеть gobuster_results.txt в списке файлов.
Ожидаемый вывод (частичный):
total 8
-rw-r--r-- 1 labex labex 1234 Jan 1 12:00 gobuster_results.txt
Просмотр содержимого сохраненного файла с результатами
На этом заключительном шаге вы просмотрите содержимое файла gobuster_results.txt, чтобы убедиться, что результаты сканирования были корректно сохранены.
Используйте команду cat для отображения содержимого файла:
cat gobuster_results.txt
Вы должны увидеть обнаруженные директории и файлы вместе с их HTTP-кодами состояния, аналогично тому, что вы увидели бы в выводе команды gobuster в терминале.
Ожидаемый вывод (частичный):
/admin.html (Status: 200)
/secret.txt (Status: 200)
/testdir (Status: 200)
Это подтверждает, что результаты вашего сканирования gobuster были успешно сохранены в файл, что является важным шагом для документирования и дальнейшего анализа в реальных сценариях.
Резюме
В этой лабораторной работе вы успешно научились сохранять результаты сканирования gobuster в файл. Вы начали с составления стандартной команды gobuster dir, затем улучшили ее, добавив флаг -o для указания выходного файла. После выполнения сканирования вы проверили создание выходного файла и просмотрели его содержимое, убедившись, что результаты были корректно сохранены. Этот навык является фундаментальным для эффективного документирования и анализа при оценке веб-безопасности и тестировании на проникновение.
