
Лаборатория Blue Team, сосредоточенная на анализе журналов доступа Apache для обнаружения directory brute forcing и web scanning активности.
Лаборатория Blue Team, посвященная анализу журналов HTTP-сервера Apache для обнаружения активности веб-сканирования, перебора каталогов и попыток обхода пути.
Установить и развернуть веб-сервер Apache в изолированной лабораторной среде, смоделировать автоматическое веб-сканирование с использованием стандартных отраслевых инструментов и проанализировать сгенерированные журналы с точки зрения Blue Team — выявляя атакующие шаблоны, сигнатуры инструментов и индикаторы вредоносной разведывательной активности.
| Компонент | Описание |
|---|---|
| ВМ атакующего | Kali Linux |
| ВМ цели | Debian 13 |
| Сеть | NAT Network (VirtualBox) |
| IP атакующего | 10.0.2.5 |
| IP цели | 10.0.2.15 |
| Веб-сервер | Apache 2.4.67 |
| Источники журналов | /var/log/apache2/access.log, /var/log/apache2/error.log |
| Порт HTTP | 80 |
Подтверждено, что HTTP-сервер Apache активен и работает на целевой машине.```bash sudo systemctl status apache2 --no-pager
Результат: `active (running)` since Wed 2026-05-06 21:09:17. Apache 2.4.67 (Debian), Main PID 3164, 55 tasks active.
---
### 2. Идентификация целевого IP-адреса
Определён IP-адрес целевой машины Debian.```bash
ip a
Целевой IP: 10.0.2.15/24 — интерфейс enp0s3
Проверена сетевая связность между атакующей машиной Kali и целевой машиной Debian.```bash ping -c 4 10.0.2.15
**Результат:** 4 отправлено, 4 получено, 0% потерь пакетов. RTT мин/сред/макс: 0.495/1.288/2.139ms.
---
### 4. Тест браузера Apache
Выполнен доступ к серверу Apache из браузера Kali для подтверждения доступности HTTP-сервиса.```
http://10.0.2.15
Result: Apache2 Debian Default Page успешно загружена — подтверждение, что веб-сервер был доступен и отвечал на HTTP-запросы.
Созданы тестовые каталоги и страницы на целевом сервере для имитации реалистичной структуры веб-приложения.```bash sudo mkdir -p /var/www/html/admin sudo mkdir -p /var/www/html/backup sudo mkdir -p /var/www/html/login echo "
Созданные каталоги: `/admin`, `/backup`, `/login`
---
### 6. Сканирование Nikto
Запуск Nikto против целевого веб-сервера для имитации автоматического сканирования уязвимостей.```bash
nikto -h http://10.0.2.15
Nikto v2.5.0 — Время начала: 2026-05-06 20:16:56 — Время окончания: 20:17:13 (17 секунд)
Результаты, сообщенные Nikto:
X-Frame-Options — защита от кликджекинга отсутствуетX-Content-Type-Options — защита от MIME-сниффинга отсутствует/admin/, /backup/, /login//admin/index.html — страница входа администратора доступнаЗапущен Dirb для подбора каталогов на целевом веб-сервере.```bash dirb http://10.0.2.15
**DIRB v2.22 — Start: Wed May 6 20:19:50 2026 — End: 20:19:59 2026 (9 секунд)**
Используемый список слов: `/usr/share/dirb/wordlists/common.txt` — проверено 4612 слов
Найденные каталоги и файлы:
| URL | Код | Размер |
| --------------------------------- | --- | ------ |
| http://10.0.2.15/index.html | 200 | 10703 |
| http://10.0.2.15/server-status | 403 | 314 |
| http://10.0.2.15/admin/ | 200 | — |
| http://10.0.2.15/admin/index.html | 200 | 21 |
| http://10.0.2.15/backup/ | 200 | — |
| http://10.0.2.15/login/ | 200 | — |
| http://10.0.2.15/login/index.html | 200 | 20 |
**Предупреждение:** Для каталога `/backup/` включена навигация по содержимому — индексный файл отсутствует, содержимое каталога просматривается напрямую.
**Всего загружено:** 13836 байт — **Найдено:** 4 ресурса
---
### 8. Анализ журнала доступа
Проверены необработанные записи журнала доступа для выявления шаблона атаки.```bash
sudo cat /var/log/apache2/access.log
Примеры записей из фазы сканирования Nikto (21:18:32):``` 10.0.2.5 - - [06/May/2026:21:18:32 -0300] "GET /10.0.2.15.tar.bz2 HTTP/1.1" 404 527 10.0.2.5 - - [06/May/2026:21:18:32 -0300] "GET /10_0_2_15.gz HTTP/1.1" 404 527 10.0.2.5 - - [06/May/2026:21:18:32 -0300] "GET /10.0.2.15.sql HTTP/1.1" 404 527 10.0.2.5 - - [06/May/2026:21:18:32 -0300] "GET /10.0.2.15.zip HTTP/1.1" 404 527
Примеры записей из фазы сканирования Dirb (21:21:34):```
10.0.2.5 - - [06/May/2026:21:21:34 -0300] "GET /login/xsql HTTP/1.1" 404 472
10.0.2.5 - - [06/May/2026:21:21:34 -0300] "GET /login/xxx HTTP/1.1" 404 472
10.0.2.5 - - [06/May/2026:21:21:34 -0300] "GET /login/zimbra HTTP/1.1" 404 472
10.0.2.5 - - [06/May/2026:21:21:34 -0300] "GET /login/zoom HTTP/1.1" 404 472
Наблюдаемый шаблон: Сотни последовательных запросов в течение одной секунды, все направлены на несуществующие пути — соответствует поведению автоматического сканирования.
Отфильтрованы все записи журнала доступа, исходящие от IP-адреса атакующего.```bash sudo grep "10.0.2.5" /var/log/apache2/access.log | head -30
Additional patterns observed:
- Nikto attempted to access backup files using the server IP as filename (e.g., `10.0.2.15.tar.bz2`, `10.0.2.15.sql`, `10.0.2.15.zip`)
- Dirb итерировал по алфавитно упорядоченным словарям, нацеливаясь на каждый обнаруженный каталог
- Оба инструмента генерировали запросы на машинной скорости — несколько записей в секунду из одного и того же диапазона исходных портов
---
### 10. Распределение HTTP-кодов состояния
Подсчёт запросов по HTTP-кодам ответа для количественной оценки поверхности атаки.```bash
sudo grep " 200 " /var/log/apache2/access.log | wc -l
sudo grep " 403 " /var/log/apache2/access.log | wc -l
sudo grep " 404 " /var/log/apache2/access.log | wc -l
| HTTP код | Значение | Количество |
|---|---|---|
| 200 | OK — ресурс найден и обслужен | 177 |
| 403 | Запрещено — ресурс существует, но доступ запрещен | 26 |
| 404 | Не найден — ресурс не существует | 21740 |
Всего ошибок 404: 21,740 — подавляющее большинство запросов было направлено на несуществующие пути, что является определяющей характеристикой автоматического перебора директорий.
Подсчитаны все записи журнала доступа, исходящие от атакующего.```bash sudo grep "10.0.2.5" /var/log/apache2/access.log | wc -l
**Total requests from 10.0.2.5: 21 962**
---
### 12. Идентификация сигнатур инструментов
Выполнен поиск сигнатур, специфичных для сканеров, в журнале доступа.
#### Сигнатура Nikto```bash
sudo grep "nikto" /var/log/apache2/access.log | head -5
Результат:``` 10.0.2.5 - - [06/May/2026:21:18:32 -0300] "PUT /nikto-test-pk9VPSjF.html HTTP/1.1" 405 590 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36"
Nikto создал тестовый файл (`nikto-test-pk9VPSjF.html`) через PUT-запрос для проверки прав на запись на сервере.
#### Dirb signature```bash
sudo grep "DirBuster\|dirb" /var/log/apache2/access.log | head -5
Результат:``` 10.0.2.5 - - [06/May/2026:21:21:26 -0300] "GET /dirb HTTP/1.1" 404 472 10.0.2.5 - - [06/May/2026:21:21:26 -0300] "GET /dirbmark HTTP/1.1" 404 472 10.0.2.5 - - [06/May/2026:21:21:29 -0300] "GET /admin/dirb HTTP/1.1" 404 472 10.0.2.5 - - [06/May/2026:21:21:29 -0300] "GET /admin/dirbmark HTTP/1.1" 404 472 10.0.2.5 - - [06/May/2026:21:21:32 -0300] "GET /login/dirb HTTP/1.1" 404 472
Собственное имя Dirb появляется в используемом им словаре, оставляя четкую сигнатуру в журналах.
---
### 13. Анализ журналов ошибок
Проверен журнал ошибок Apache на наличие событий безопасности на стороне сервера, вызванных сканированием.```bash
sudo cat /var/log/apache2/error.log
Найдены критические события:
Nikto пытался получить доступ к конфиденциальным системным файлам, обходя границы каталогов:``` [client 10.0.2.5] AH10244: invalid URI path (/../../../../../../../../../../../../etc/shadow) [client 10.0.2.5] AH10244: invalid URI path (/../../../../../../../../../../etc/passwd) [client 10.0.2.5] AH10244: invalid URI path (/%2E%2E/%2E%2E/%2E%2E/%2E%2E/%2E%2E/windows/win.ini) [client 10.0.2.5] AH10244: invalid URI path (/%2e%2e/%2e%2e/%2e%2e/%2e%2e/%2e%2e/%2e%2e/%2e%2e/etc/passwd) [client 10.0.2.5] AH10244: invalid URI path (/../../../../../../../../../boot.ini) [client 10.0.2.5] AH10244: invalid URI path (/../../../../winnt/repair/sam._)
Цели включены: `/etc/passwd`, `/etc/shadow`, `boot.ini`, `win.ini`, база данных Windows SAM — все классические цели обхода путей.
#### Недопустимые HTTP-методы
Nikto протестировал нестандартные HTTP-методы для выявления ошибок конфигурации:```
[client 10.0.2.5] AH00135: Invalid method in request DIWHWPJH / HTTP/1.1
[client 10.0.2.5] AH00135: Invalid method in request DEBUG / HTTP/1.1
[client 10.0.2.5] AH00135: Invalid method in request TRACK / HTTP/1.0
[client 10.0.2.5] AH00135: Invalid method in request SEARCH / HTTP/1.1
[client 10.0.2.5] AH00135: Invalid method in request INDEX / HTTP/1.1
Оба инструмента пытались получить доступ к защищенным Apache конфигурационным файлам:``` [client 10.0.2.5] AH01630: client denied by server configuration: /var/www/html/.htpasswd [client 10.0.2.5] AH01630: client denied by server configuration: /var/www/html/.htaccess [client 10.0.2.5] AH01630: client denied by server configuration: /var/www/html/server-status [client 10.0.2.5] AH01630: client denied by server configuration: /var/www/html/admin/.htpasswd [client 10.0.2.5] AH01630: client denied by server configuration: /var/www/html/login/.htpasswd
#### Обход путей, специфичный для VMware
Nikto также проверяет инфраструктуру VMware на наличие уязвимостей:```
[client 10.0.2.5] AH10244: invalid URI path (/sdk/%2E%2E/%2E%2E/%2E%2E/%2E%2E/%2E%2E/%2E%2E/etc/vmware/hostd/vmInventory.xml)
Журналы доступа и ошибок выявили двухфазный шаблон автоматизированной атаки, исходящей с одного IP-адреса (10.0.2.5), направленной на веб-сервер Apache на порту 80.
Nikto выполнил 8 102 запроса за 17 секунд, проверяя известные веб-уязвимости, отсутствие заголовков безопасности, опасные методы HTTP и векторы обхода пути. В журнале ошибок зафиксированы множественные попытки доступа к /etc/passwd, /etc/shadow, boot.ini и файлам SAM Windows — все заблокированы механизмом проверки URI Apache. Nikto также предпринял PUT-запрос для создания тестового файла на сервере, что подтверждает проверку прав на запись.
Dirb проверил 4 612 слов из своего общего списка слов относительно корневого каталога и каждого обнаруженного подкаталога. Это породило основную массу из 21 740 ошибок 404. Dirb успешно идентифицировал каталоги /admin/, /backup/ и /login/ как существующие. В каталоге /backup/ была обнаружена включённая опция просмотра списка каталогов — существенная ошибка конфигурации, позволяющая атакующему напрямую просматривать его содержимое.
Концентрация 21 962 HTTP-запросов с одного исходного IP-адреса в течение примерно 7 минут в сочетании с попытками обхода пути, недопустимыми методами HTTP и сигнатурами, характерными для инструментов, как в журнале доступа, так и в журнале ошибок, является неоспоримым доказательством автоматизированной разведывательной активности в веб-среде.
Успешной эксплуатации не наблюдалось. Все попытки обхода пути были отклонены механизмом проверки URI Apache. Доступ к защищённым файлам (.htpasswd, .htaccess, server-status) был запрещён конфигурацией сервера.
На основе полученных данных рекомендуются следующие меры контроля:
X-Frame-Options, X-Content-Type-Options, Content-Security-Policy/backup//server-status только локальным хостомerror.log на наличие событий AH10244 (недопустимый путь URI)/admin/, /backup/) из публичного доступаServerTokens Prod, ServerSignature Off)Эта лабораторная работа продемонстрировала, как автоматизированные инструменты веб-сканирования оставляют чёткие и идентифицируемые шаблоны как в журналах доступа, так и в журналах ошибок Apache. Путём корреляции объёма ошибок 404, наличия попыток обхода пути в error.log, запросов с недопустимыми методами HTTP и сигнатур, характерных для инструментов, в путях запросов и строках user-agent, удалось восстановить полную временную шкалу атаки и идентифицировать использованные инструменты — без каких-либо предварительных знаний о действиях атакующего.
Упражнение подчёркивает важность мониторинга журналов веб-сервера, настройки заголовков безопасности и контроля доступа к каталогам как основополагающих практик Blue Team для веб-инфраструктуры.
Лаборатория Blue Team, ориентированная на анализ журналов сервера Apache для обнаружения веб-сканирования, перечисления каталогов и попыток обхода пути.
Установить и развернуть веб-сервер Apache в изолированной лабораторной среде, смоделировать автоматизированные сканирования с использованием инструментов, широко применяемых в тестировании безопасности, и проанализировать сгенерированные журналы с точки зрения Blue Team — выявляя паттерны атак, сигнатуры инструментов и индикаторы вредоносной разведывательной активности.
Подтверждено, что сервер Apache был активен и работал на целевой машине.```bash sudo systemctl status apache2 --no-pager
Результат: `active (running)` с ср 2026-05-06 21:09:17. Apache 2.4.67 (Debian), основной PID 3164, 55 активных задач.
---
### 2. Идентификация IP-адреса цели
Определен IP-адрес целевой машины Debian.```bash
ip a
IP do alvo: 10.0.2.15/24 — interface enp0s3
Verificada a conectividade de rede entre o Kali e o Debian.```bash ping -c 4 10.0.2.15
**Результат:** 4 пакетов отправлено, 4 получено, 0% потерь. RTT min/avg/max: 0.495/1.288/2.139ms.
---
### 4. Тестирование Apache в браузере
Доступ к серверу Apache из браузера Kali для подтверждения доступности HTTP-сервиса.```
http://10.0.2.15
Результат: Стандартная страница Apache2 Debian успешно загружена — подтверждено, что веб-сервер был доступен и отвечал на HTTP-запросы.
Созданы тестовые каталоги и страницы на целевом сервере для имитации реалистичной структуры веб-приложения.```bash sudo mkdir -p /var/www/html/admin sudo mkdir -p /var/www/html/backup sudo mkdir -p /var/www/html/login echo "
Созданные директории: `/admin`, `/backup`, `/login`
---
### 6. Сканирование с Nikto
Запущен Nikto против целевого веб-сервера для имитации автоматизированного сканирования уязвимостей.```bash
nikto -h http://10.0.2.15
Nikto v2.5.0 — Начало: 2026-05-06 20:16:56 — Конец: 20:17:13 (17 секунд)
Результаты, полученные Nikto:
X-Frame-Options — отсутствует защита от кликджекингаX-Content-Type-Options — отсутствует защита от MIME-сниффинга/admin/, /backup/, /login//admin/index.html — страница администратора общедоступнаВыполнен Dirb для подбора каталогов методом перебора на целевом веб-сервере.```bash dirb http://10.0.2.15
**DIRB v2.22 — Начало: Ср, 6 мая 2026 г., 20:19:50 — Конец: 20:19:59 2026 (9 секунд)**
Использованный список слов: `/usr/share/dirb/wordlists/common.txt` — проверено 4612 слов
Найденные каталоги и файлы:
| URL | Код | Размер |
| --------------------------------- | ----- | ------ |
| http://10.0.2.15/index.html | 200 | 10703 |
| http://10.0.2.15/server-status | 403 | 314 |
| http://10.0.2.15/admin/ | 200 | — |
| http://10.0.2.15/admin/index.html | 200 | 21 |
| http://10.0.2.15/backup/ | 200 | — |
| http://10.0.2.15/login/ | 200 | — |
| http://10.0.2.15/login/index.html | 200 | 20 |
**Предупреждение:** Каталог `/backup/` имеет включенный список каталога — нет индексного файла, содержимое каталога можно просматривать напрямую.
**Всего загружено:** 13836 байт — **Найдено:** 4 ресурса
---
### 8. Анализ журнала доступа
Проверены необработанные записи журнала доступа для выявления шаблона атаки.```bash
sudo cat /var/log/apache2/access.log
Записи фазы сканирования Nikto (21:18:32):``` 10.0.2.5 - - [06/May/2026:21:18:32 -0300] "GET /10.0.2.15.tar.bz2 HTTP/1.1" 404 527 10.0.2.5 - - [06/May/2026:21:18:32 -0300] "GET /10_0_2_15.gz HTTP/1.1" 404 527 10.0.2.5 - - [06/May/2026:21:18:32 -0300] "GET /10.0.2.15.sql HTTP/1.1" 404 527 10.0.2.5 - - [06/May/2026:21:18:32 -0300] "GET /10.0.2.15.zip HTTP/1.1" 404 527
Записи фазы сканирования Dirb (21:21:34):```
10.0.2.5 - - [06/May/2026:21:21:34 -0300] "GET /login/xsql HTTP/1.1" 404 472
10.0.2.5 - - [06/May/2026:21:21:34 -0300] "GET /login/xxx HTTP/1.1" 404 472
10.0.2.5 - - [06/May/2026:21:21:34 -0300] "GET /login/zimbra HTTP/1.1" 404 472
10.0.2.5 - - [06/May/2026:21:21:34 -0300] "GET /login/zoom HTTP/1.1" 404 472
Наблюдаемый шаблон: Сотни последовательных запросов в течение одной секунды, все направлены на несуществующие пути — поведение, соответствующее автоматическому сканированию.
Отфильтрованы все записи журнала доступа, происходящие с IP-адреса атакующего.```bash sudo grep "10.0.2.5" /var/log/apache2/access.log | head -30
Дополнительные наблюдаемые паттерны:
- Nikto пытался получить доступ к файлам резервных копий, используя IP сервера в качестве имени файла (например: `10.0.2.15.tar.bz2`, `10.0.2.15.sql`, `10.0.2.15.zip`)
- Dirb перебирал wordlists в алфавитном порядке, нацеливаясь на каждый обнаруженный каталог
- Обе инструменты генерировали запросы на машинной скорости — несколько записей в секунду в том же диапазоне исходных портов
---
### 10. Распределение кодов состояния HTTP
Подсчитаны запросы по кодам ответа HTTP для количественной оценки поверхности атаки.```bash
sudo grep " 200 " /var/log/apache2/access.log | wc -l
sudo grep " 403 " /var/log/apache2/access.log | wc -l
sudo grep " 404 " /var/log/apache2/access.log | wc -l
| HTTP-код | Значение | Количество |
|---|---|---|
| 200 | OK — ресурс найден и предоставлен | 177 |
| 403 | Запрещено — ресурс существует, но доступ закрыт | 26 |
| 404 | Не найдено — ресурс не существует | 21.740 |
Всего ошибок 404: 21.740 — подавляющее большинство запросов было направлено к несуществующим путям, что является определяющей характеристикой автоматизированного подбора каталогов.
Учтены все записи журнала доступа, исходящие от атакующего.```bash sudo grep "10.0.2.5" /var/log/apache2/access.log | wc -l
**Всего запросов от 10.0.2.5: 21.962**
---
### 12. Идентификация сигнатур инструментов
Поиск конкретных сигнатур сканеров в журнале доступа.
#### Сигнатура Nikto```bash
sudo grep "nikto" /var/log/apache2/access.log | head -5
Результат:``` 10.0.2.5 - - [06/May/2026:21:18:32 -0300] "PUT /nikto-test-pk9VPSjF.html HTTP/1.1" 405 590 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36"
Nikto создал тестовый файл (`nikto-test-pk9VPSjF.html`) с помощью запроса PUT для проверки прав на запись на сервере.
#### Сигнатура Dirb```bash
sudo grep "DirBuster\|dirb" /var/log/apache2/access.log | head -5
Результат:``` 10.0.2.5 - - [06/May/2026:21:21:26 -0300] "GET /dirb HTTP/1.1" 404 472 10.0.2.5 - - [06/May/2026:21:21:26 -0300] "GET /dirbmark HTTP/1.1" 404 472 10.0.2.5 - - [06/May/2026:21:21:29 -0300] "GET /admin/dirb HTTP/1.1" 404 472 10.0.2.5 - - [06/May/2026:21:21:29 -0300] "GET /admin/dirbmark HTTP/1.1" 404 472 10.0.2.5 - - [06/May/2026:21:21:32 -0300] "GET /login/dirb HTTP/1.1" 404 472
Само имя Dirb появляется в используемом им списке слов, оставляя четкую подпись в логах.
---
### 13. Анализ журнала ошибок
Проверен журнал ошибок Apache для выявления событий безопасности, созданных сканированием.```bash
sudo cat /var/log/apache2/error.log
Обнаружены критические события:
Nikto попытался получить доступ к конфиденциальным файлам системы, обходя ограничения каталогов:``` [client 10.0.2.5] AH10244: invalid URI path (/../../../../../../../../../../../../etc/shadow) [client 10.0.2.5] AH10244: invalid URI path (/../../../../../../../../../../etc/passwd) [client 10.0.2.5] AH10244: invalid URI path (/%2E%2E/%2E%2E/%2E%2E/%2E%2E/%2E%2E/windows/win.ini) [client 10.0.2.5] AH10244: invalid URI path (/%2e%2e/%2e%2e/%2e%2e/%2e%2e/%2e%2e/%2e%2e/%2e%2e/etc/passwd) [client 10.0.2.5] AH10244: invalid URI path (/../../../../../../../../../boot.ini) [client 10.0.2.5] AH10244: invalid URI path (/../../../../winnt/repair/sam._)
Цели включали: `/etc/passwd`, `/etc/shadow`, `boot.ini`, `win.ini`, база SAM Windows — все классические цели path traversal.
#### Недействительные HTTP-методы
Nikto тестировал нестандартные HTTP-методы для выявления неправильных конфигураций:```
[client 10.0.2.5] AH00135: Invalid method in request DIWHWPJH / HTTP/1.1
[client 10.0.2.5] AH00135: Invalid method in request DEBUG / HTTP/1.1
[client 10.0.2.5] AH00135: Invalid method in request TRACK / HTTP/1.0
[client 10.0.2.5] AH00135: Invalid method in request SEARCH / HTTP/1.1
[client 10.0.2.5] AH00135: Invalid method in request INDEX / HTTP/1.1
Оба инструмента пытались получить доступ к защищенным Apache конфигурационным файлам:``` [client 10.0.2.5] AH01630: client denied by server configuration: /var/www/html/.htpasswd [client 10.0.2.5] AH01630: client denied by server configuration: /var/www/html/.htaccess [client 10.0.2.5] AH01630: client denied by server configuration: /var/www/html/server-status [client 10.0.2.5] AH01630: client denied by server configuration: /var/www/html/admin/.htpasswd [client 10.0.2.5] AH01630: client denied by server configuration: /var/www/html/login/.htpasswd
#### Path Traversal, специфичный для VMware
Nikto также протестировал экспозицию инфраструктуры VMware:```
[client 10.0.2.5] AH10244: invalid URI path (/sdk/%2E%2E/%2E%2E/%2E%2E/%2E%2E/%2E%2E/%2E%2E/etc/vmware/hostd/vmInventory.xml)
Логи доступа и ошибок выявили автоматизированную двухфазную атаку, исходящую с одного IP-адреса (10.0.2.5) и направленную на веб-сервер Apache на порту 80.
Nikto выполнил 8 102 запроса за 17 секунд, проверяя известные веб-уязвимости, отсутствующие заголовки безопасности, опасные HTTP-методы и векторы path traversal. В логе ошибок зафиксировано несколько попыток доступа к /etc/passwd, /etc/shadow, boot.ini и базе данных SAM Windows — все они были заблокированы валидацией URI Apache. Nikto также попытался выполнить запрос PUT для создания тестового файла на сервере, подтверждая, что проверял разрешения на запись.
Dirb протестировал 4 612 слов из своего общего списка слов как для корневого каталога, так и для каждого обнаруженного подкаталога. Это породило большую часть из 21 740 ошибок 404. Dirb успешно идентифицировал /admin/, /backup/ и /login/ как существующие каталоги. Каталог /backup/ был найден с включённым просмотром содержимого — существенная ошибка конфигурации, позволяющая злоумышленнику напрямую просматривать его содержимое.
Концентрация 21 962 HTTP-запросов с одного IP-адреса за примерно 7 минут в сочетании с наличием попыток path traversal, запросов с недопустимыми HTTP-методами и специфическими сигнатурами инструментов в логах доступа и ошибок является явным свидетельством автоматизированной активности веб-разведки.
Успешной эксплуатации не наблюдалось. Все попытки path traversal были отклонены механизмом валидации URI Apache. Доступ к защищённым файлам (.htpasswd, .htaccess, server-status) был запрещён конфигурацией сервера.
На основе полученных данных рекомендуются следующие меры контроля:
X-Frame-Options, X-Content-Type-Options, Content-Security-Policy/backup//server-status только для localhosterror.log на наличие событий AH10244 (недопустимый путь URI)/admin/, /backup/)ServerTokens Prod, ServerSignature Off)Эта лабораторная работа продемонстрировала, как инструменты автоматизированного веб-сканирования оставляют в логах доступа и ошибок Apache чёткие и идентифицируемые паттерны. Сопоставив объём ошибок 404, наличие попыток path traversal в error.log, запросы с недопустимыми HTTP-методами и специфические сигнатуры инструментов в путях запросов и строках user-agent, удалось восстановить полную временную шкалу атаки и идентифицировать использованные инструменты — без какого-либо предварительного знания действий атакующего.
Упражнение подчёркивает важность мониторинга логов веб-сервера, настройки заголовков безопасности и контроля доступа к каталогам как фундаментальных практик Blue Team для веб-инфраструктуры, доступной извне.
| Индикатор | Значение |
|---|
| IP атакующего | 10.0.2.5 |
| IP цели | 10.0.2.15 |
| Порт цели | 80 (HTTP) |
| Веб-сервер | Apache 2.4.67 (Debian) |
| Идентифицированные инструменты | Nikto v2.5.0, Dirb v2.22 |
| Всего запросов от атакующего | 21 962 |
| HTTP-ответов 200 | 177 |
| HTTP-ответов 403 | 26 |
| HTTP-ответов 404 | 21 740 |
| Обнаруженные каталоги | /admin/, /backup/, /login/ |
| Попытки обхода пути | Множественные (все заблокированы) |
| Протестированные некорректные методы HTTP | TRACK, DEBUG, SEARCH, INDEX |
| Атакованные конфиденциальные файлы | /etc/passwd, /etc/shadow, .htpasswd, .htaccess |
| Успешная эксплуатация | Отсутствует |
| Временной интервал | 21:14–21:21 (2026-05-06) |
| Компонент | Детали |
|---|
| Атакующая ВМ | Kali Linux |
| Целевая ВМ | Debian 13 |
| Сеть | NAT Network (VirtualBox) |
| IP атакующего | 10.0.2.5 |
| IP цели | 10.0.2.15 |
| Веб-сервер | Apache 2.4.67 |
| Источники журналов | /var/log/apache2/access.log, /var/log/apache2/error.log |
| HTTP-порт | 80 |
| Индикатор | Значение |
|---|
| IP атакующего | 10.0.2.5 |
| IP цели | 10.0.2.15 |
| Целевой порт | 80 (HTTP) |
| Веб-сервер | Apache 2.4.67 (Debian) |
| Обнаруженные инструменты | Nikto v2.5.0, Dirb v2.22 |
| Общее количество запросов атакующего | 21 962 |
| HTTP-ответы 200 | 177 |
| HTTP-ответы 403 | 26 |
| HTTP-ответы 404 | 21 740 |
| Обнаруженные каталоги | /admin/, /backup/, /login/ |
| Попытки path traversal | Множественные (все заблокированы) |
| Проверенные недопустимые HTTP-методы | TRACK, DEBUG, SEARCH, INDEX |
| Целевые чувствительные файлы | /etc/passwd, /etc/shadow, .htpasswd, .htaccess |
| Успешная эксплуатация | Нет |
| Временной интервал | 21:14 – 21:21 (2026-05-06) |