Перейти к содержимому



Фотография
  • Авторизуйтесь для ответа в теме
В этой теме нет ответов

#1 roguevad

roguevad

    Эксперт.

  • Пользователи
  • PipPipPipPipPip
  • 387 сообщений

Отправлено 25 Декабрь 2020 - 02:28

Сегодня мы будем работать с таким сканером веб-серверов как Nikto.
У меня Parrot OS со встроенным Nikto, но вам придётся скачивать, если у вас обычный Линукс. 
С помощью него вы способны проверить сервера на ошибки, неверные настройки, дефолтные файлы и на уязвимости.
Скажу сразу, что Nikto не создавался быть незаметным и его активность останется в логах сервера и попадёт в поле зрения IPS/IDS(система обнаружения и предотвращения вторжений). Советую работать через прокси.
Обновляем пакеты ОС и клонируем репозиторий с GitHub'а:

sudo apt update

git clone https://github.com/sullo/nikto.git

Всегда перед использованием обновляйте Nikto:

nikto -ubdate

nikto -update

 

Тут нам представили некоторые аргументы к командам. Сегодня мы их тоже разберём. Плюс(+) значит требуется значение. То же самое вы увидите в результате аргумента "-h"(-help)

И так, заходим в директорию и введём первые команды:

cd nikto

nikto -host www.CyberCat.uz

Тут нам нужно указать хост сайта(IP или домен). Если вы хотите указать свой порт, то добавляете его "-p"(-port):

nikto -host www.CyberCat.uz -p 443

Если вы вводите IP адрес, то порт можно указать так:

111.111.11.11:443

Или перечислением:

nikto -host www.CyberCat.uz -p 88,443,80

также можно указать диапазон:

- p 80-90


Вы можете ещё указать несколько хостов для сканирования на одну сессию nikto. Для этого вам нужно создать текстовой файл с прописанными хостами внутри и вызвать его в команде с указанием полного пути. Хосты должны быть перечислены на каждой строке.

 

 

Чтобы сохранить отчёт о сканировании, нужно под аргументом "-o"(-output) указать куда кидать отчёт и выбрать формат под аргументом "-Format":

nikto -host www.CyberCat.uz -o ~/CyberCatTest.html -Format htm

Форматы могут быть следующие:
html, csv, txt, sql, nbe, xml. Если формат не указан, то он будет взят из расширения файла с аргументом "-о"

Nikto сначала начинает скан через HTTP и если он замечает SSL сертификат,он переходит на HTTPS. Если вы точно знаете что сайт имеет SSL, вы можете сразу начать скан через HTTPS с помощью аргумента "-ssl", дабы сохранить время. А аргумент "-nossl" отключает использование ssl

Аргумент "-Tuning+":

1 Интересные файлы/Увиденные в логах
2 Неправильно настроенные/Дефолтные файлы
3 Раскрытие информации
4 Инъекция (XSS/Script/HTML)
5 Удалённое извлечение файлов — Внутри корня веб
6 Отказ в обслуживании
7 Удалённое извлечение файлов — По всему серверу
8 Выполнение команд/Удалённый шелл
9 SQL-инъекция
0 Выгрузка файлов
a Обход аутентификации
b Идентификация программного обеспечения
c Удалённое внедрение кода
d Веб-служба
e Административная консоль
x Обратное значение опций настройки т. е. включить всё, кроме указанного)

 

Один из примеров вывода со значением Tuning. Тут я проверил наличие уязвимостей на инъекции (XSS/Script/HTML)

По дефолту запросы отправляются каждые 10 секунд, а с аргументом "-timeout+" вы сможете сами обозначить тот самый таймаут.

Как я сказал в начале, активность вашего скана будет замечена в логах,поэтому вам лучше использовать прокси. Это может быть любой ваш прокси или что-то, что обеспечивает вам какую-то анонимность. Также вы можете работать через прокси прямо в консоли введя аргумент "-useproxy" и

Аргумент "-Display+" позволяет включить или отключить отображение вывода:
1 Показать редиректы
2 Показать полученные кукиз
3 Показать все ответы 200/OK
4 Показать URL, которые требуют аутентификацию
D Отладочный вывод
E Отобразить все HTTP ошибки
P Печатать прогресс в STDOUT (стандартный вывод)
S Собрать из вывода IP и имена хостов
V Вербальный вывод

Также, если вы добавите аргумент "-dbcheck", то база данных проверится на ошибки синтаксиса.

"-404code" позволяет игнорировать HTTP коды. Формат: 302,301Аргумент "-id+" позволяет использовать аутентификацию на хосте, формат id:pass или id:pass:realm

"-mutate+"
Предположить дополнительные имена файлов:
1 Проверить все файлы по всем корневым директориям
2 Предположить имена файлов с паролями
3 Перечислить имена пользователей через Apache (запросы вида /~user)
4 Перечислить имена пользователя через cgiwrap (запросы типа /cgi-bin/cgiwrap/~user)
5 Попытаться брут-форсить имена субдоменов, предположить, что имя хоста является родительским доменом
6 Попытаться угадать имена директорий из вашего словаря

Я никого ни к чему не призываю, статья написана в ознакомительных целях!

 





Темы с аналогичным тегами сканер, взлом, взломщик, хакер, хакинг, уязвимость, сканер веб-серверов, скан сервера, сеть, эксплойт, программа для сканирования, сканирование сетей, линукс, linux


Яндекс.Метрика Analysis Счетчик ИКС
Добавить Vkontakte Добавить в Facebook Добавить в Twitter Добавить в LiveJournal