Gobuster: Основи кімнати TryHackMe
Ця кімната зосереджена на інструменті для атакувальної безпеки Gobuster, який часто використовується для розвідки. Ми дослідимо, як цей інструмент може перераховувати веб-директорії, піддомени та віртуальні хости. Кімната слідуватиме практичному підходу, де ви зможете виконувати команди, які ми пояснимо, і отримати результати самостійно.
Оточення та налаштування:
Для цієї кімнати ми використовуватимемо віртуальну машину Ubuntu 20.04, яка виступатиме як веб-сервер. Цей веб-сервер хостить кілька піддоменів і віртуальних хостів. Веб-сервер також має встановлені дві системи управління контентом (CMS): WordPress і Joomla.
Протягом цієї кімнати ми використовуватимемо AttackBox, де вже встановлений Gobuster, для перерахунку директорій веб-сервера і піддоменів.
Важливо: Ми працюємо в локальній мережі з сервером DNS на веб-сервері. Щоб забезпечити правильне розв'язання доменів, які використовуються в цій кімнаті, необхідно змінити файл /etc/resolv-dnsmasq
:
- Відкрийте термінал в AttackBox і введіть команду:
sudo nano /etc/resolv-dnsmasq
. - Додайте
nameserver 10.10.243.161
як перший рядок. - Збережіть файл, натиснувши CTRL+O, потім ENTER, і вийдіть з редактора, натиснувши CTRL+X.
- Введіть команду
/etc/init.d/dnsmasq restart
, щоб перезапустити службу Dnsmasq.
Якщо цей метод не працює, спробуйте наступне (якщо ви використовуєте свою власну машину замість AttackBox):
1. Перевірте, чи встановлений dnsmasq
Запустіть:
which dnsmasq
або
dnsmasq --version
Якщо з'являється повідомлення command not found
, це означає, що dnsmasq
не встановлений.
2. Встановіть dnsmasq
(якщо він відсутній)
Запустіть наступну команду для його встановлення:
sudo apt update && sudo apt install dnsmasq -y
3. Перевірте статус служби
Якщо dnsmasq
встановлений, його може керувати systemd
замість /etc/init.d/
. Спробуйте:
systemctl status dnsmasq
Якщо він неактивний або не знайдений, запустіть службу:
sudo systemctl start dnsmasq
Щоб увімкнути його при завантаженні:
sudo systemctl enable dnsmasq
4. Перезапустіть dnsmasq
Замість використання /etc/init.d/
, перезапустіть його так:
sudo systemctl restart dnsmasq
5. Налаштування локального серверу імен
Перейдіть до /etc/resolv.conf, набравши наступну команду у терміналі:
sudo nano /etc/resolv.conf
Додайте IP вашої машини в перший рядок конфігураційного файлу, наприклад:
nameserver MACHINE_IP # тут в перший рядок
nameserver 192.168.25.22
Перезапустіть службу dnsmasq:
systemctl restart dnsmasq
Щоб перевірити:
nslookup www.example.thm
Якщо виводиться ваш MACHINE_IP, все готово, можемо розпочати навчання, інакше перезапустіть процес.
Gobuster: введення (Завдання 3)
Q1: Який прапор ми використовуємо для вказівки цільової URL-адреси?
відповідь: -u
Q2: Яку команду ми використовуємо для режиму перерахунку піддоменів?
відповідь: dns
Використання: Перерахування директорій та файлів (Завдання 4)
Q1: Який прапор потрібно додати до команди, щоб пропустити перевірку TLS? Введіть довгу нотацію прапора.
відповідь: — no-tls-validation
Q2: Перерахуйте директорії на www.offensivetools.thm. Яка директорія привернула вашу увагу?
Підказка: Директорія починається на "s".
Введіть наступну команду у вашому терміналі, щоб перерахувати вказаний сайт і перевірити відповіді на екрані, щоб знайти директорію, яка починається на "s" (це займе 2-3 хвилини).
Після того як ви побачите директорію, припиніть сканування за допомогою ctrl+c
gobuster dir -u "http://www.offensivetools.thm" -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -r
відповідь: secret
Q3: Продовжуйте перераховувати директорію, знайдену в запитанні 2. Ви знайдете цікавий файл з розширенням .js.
Що за прапор знайдений у цьому файлі?
gobuster dir -u "http://www.offensivetools.thm" -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x .js
Після того, як побачили файл .js у відповіді, припиніть сканування за допомогою ctrl+c
Файл: flag.js (це не справжній прапор)
Перейдіть до браузера на вашій машині і введіть знайдену директорію в URL
http://www.offensivetools.thm/secret/flag.js
відповідь: THM{ReconWasASuccess}
Використання: Перерахунок піддоменів (Завдання 5)
Q1: Окрім ключового слова dns і прапора -w, який скорочений прапор потрібен для того, щоб команда працювала?
відповідь: -d
Q2: Використовуючи команди, вивчені в цьому завданні, скільки піддоменів налаштовано для домену offensivetools.thm?
gobuster dns -d offensivetools.thm -w /usr/share/wordlists/SecLists/Discovery/DNS/subdomains-top1million-5000.txt
Якщо ви використовуєте свою власну машину і стикаєтеся з помилкою типу
:no such file or directory
це означає, що wordlist не завантажений на вашу машину, тому завантажте його за допомогою наступної команди (для Kali):
sudo apt -y install seclists
Для інших дистрибутивів знайдіть інструкції по установці за наступним посиланням:
[
GitHub - danielmiessler/SecLists: SecLists є супутником для тестерів безпеки. Це колекція...
SecLists є супутником для тестерів безпеки. Це колекція різних типів списків, що використовуються під час тестування безпеки...
github.com
](https://github.com/danielmiessler/SecLists?source=post_page-----5b0a3f0f48c4---------------------------------------)
Знову введіть команду для Q2
Порада: будьте обережні з регістром директорій, оскільки Linux чутливий до регістру
відповідь: 4
Використання: Перерахунок віртуальних хостів (Завдання 6)
Q1: Використовуючи команди, вивчені в цьому завданні, дайте відповідь на наступне питання: Скільки віртуальних хостів на домені offensivetools.thm відповідають зі статусом 200?
gobuster vhost -u "http://10.10.243.161" --domain offensivetools.thm -w /usr/share/wordlists/seclists/Discovery/DNS/subdomains-top1million-5000.txt --append-domain --exclude-length 250-320
відповідь: 4
Висновок
Я зіткнувся з деякими труднощами, використовуючи свою власну машину Kali для цієї кімнати, тому написав цей посібник, щоб допомогти учням вирішити ці проблеми.
Якщо є питання чи сумніви, звертайтесь до мене через LinkedIn:
https://www.linkedin.com/in/gokul-j-24092004gj/
До зустрічі!
Перекладено з: TryHackMe|Gobuster: The Basics Write Up (setup troubleshooting)