Изучение параметров командной строки Nikto

Kali LinuxBeginner
Практиковаться сейчас

Введение

Nikto — популярный сканер веб-серверов с открытым исходным кодом, который выполняет комплексное тестирование веб-серверов на наличие множества элементов, включая более 6700 потенциально опасных файлов/программ, проверяет устаревшие версии более чем 1250 серверов и проблемы, специфичные для версий, на более чем 270 серверах.

Прежде чем проводить какие-либо сканирования, крайне важно понимать доступные параметры и как их правильно использовать. Меню справки командной строки — это самый прямой способ узнать о возможностях Nikto.

В этой лаборатории вы изучите различные параметры командной строки, связанные со справкой, доступные в Nikto. Вы узнаете, как получить доступ к базовой и подробной справке, вывести список всех доступных плагинов для тестирования и проверить версию инструмента. Освоение этих простых команд обеспечит прочную основу для эффективного использования Nikto в более сложных сценариях.

Доступ к базовому меню справки с помощью -h

На этом шаге вы узнаете, как получить доступ к базовому меню справки. Как и многие инструменты командной строки, Nikto предоставляет опцию -h (или --help) для отображения сводки наиболее распространенных параметров командной строки. Это первое место, куда следует обратиться, когда вам нужно быстро напомнить, как использовать инструмент.

Выполните следующую команду в терминале, чтобы отобразить базовое меню справки:

nikto -h

Вы увидите сокращенный список параметров. Этот вывод предназначен для быстрого ознакомления при повседневном использовании.

- Nikto v2.5.0
---------------------------------------------------------------------------
   -config+            Использовать этот файл конфигурации
   -Display+           Включить/выключить вывод отображения
   -evasion+           Метод кодирования
   -Format+            Формат файла сохранения (-o)
   -host+              Целевой хост
   -Help               Расширенная справочная информация
   -id+                Аутентификация хоста для использования, формат: id:pass или id:pass:realm
   -list-plugins       Список всех доступных плагинов
   -nointeractive      Отключает интерактивные функции
   -nossl              Отключает использование SSL
   -no404              Отключает проверку 404
... (вывод усечен) ...
+ требует значения

Это дает вам краткий обзор того, что делает каждый параметр. Обратите внимание, что некоторые параметры отмечены знаком +, что указывает на то, что они требуют значения.

Просмотр расширенного меню справки с помощью -H

На этом шаге вы просмотрите расширенное меню справки. Хотя опция -h полезна для быстрого напоминания, иногда требуется более подробная информация обо всех доступных параметрах, включая менее распространенные. Для этой цели Nikto предоставляет опцию -H (или --Help).

Выполните следующую команду, чтобы увидеть полный вывод справки:

nikto -H

Вывод этой команды гораздо более полный, чем у базового меню справки. Он предоставляет полный список всех параметров, часто с более подробными объяснениями и примерами.

- Nikto v2.5.0
---------------------------------------------------------------------------
        -ask+ (yes/no)                  Указать, следует ли запрашивать отправку обновленной
                                        информации на CIRT.net.
        -config+ (config.txt)           Указать файл конфигурации для использования вместо
                                        файла по умолчанию.
        -dbcheck                        Проверить базы данных сканирования на наличие синтаксических ошибок.
        -Display+ (1234D)               Управлять выводом, который показывает Nikto. Используйте
                                        порядковый номер или букву для указания типа. Можно использовать несколько.
                                        1 - Показывать перенаправления
                                        2 - Показывать полученные cookie
                                        3 - Показывать все ответы 200/OK
                                        4 - Показывать URL, требующие аутентификации
                                        D - Отладочный вывод
                                        E - Отображать все HTTP-ошибки
                                        P - Выводить прогресс в STDOUT
                                        S - Очищать вывод от IP-адресов и имен хостов
                                        V - Подробный вывод
... (вывод усечен) ...

Уделите минуту, чтобы просмотреть этот вывод. Вы обнаружите множество мощных функций, которые не были перечислены в базовом меню справки.

Список всех доступных плагинов с помощью -list-plugins

На этом шаге вы узнаете, как вывести список всех доступных плагинов Nikto. Сканирующая мощь Nikto обеспечивается его плагинами, которые представляют собой отдельные скрипты, выполняющие конкретные тесты. Понимание того, какие плагины доступны, может помочь вам настроить ваши сканирования.

Чтобы увидеть полный список всех установленных плагинов, используйте опцию -list-plugins.

Выполните команду ниже:

nikto -list-plugins

Это выведет длинный список всех плагинов, которые Nikto может использовать во время сканирования. Каждый плагин отвечает за проверку конкретной уязвимости или неправильной конфигурации.

- Nikto v2.5.0
---------------------------------------------------------------------------
Загружено 289 плагинов из /var/lib/nikto/plugins

Plugin:
 - aolserver
   http://cirt.net/plugins.shtml#aolserver
   Проверяет элементы, специфичные для AOLserver

Plugin:
 - apache
   http://cirt.net/plugins.shtml#apache
   Проверяет элементы, специфичные для Apache

Plugin:
 - apache_expect_xss
   http://cirt.net/plugins.shtml#apache_expect_xss
   Проверяет заголовок Apache Expect XSS.

... (вывод усечен) ...

Этот список показывает имя плагина, ссылку на дополнительную информацию и краткое описание его назначения.

Проверка синтаксиса для конкретного параметра

На этом шаге вы научитесь находить синтаксис для конкретного параметра с помощью меню справки. Расширенная справка (-H) является вашим справочным руководством. Когда вы хотите узнать, как использовать определенную функцию, вы можете выполнить поиск в выводе этой справки.

Предположим, вы хотите использовать параметр -Tuning для управления типами выполняемых тестов, но не уверены, какие значения являются допустимыми. Вы можете объединить команду nikto -H с grep, чтобы быстро найти нужную информацию.

Выполните следующую команду, чтобы найти сведения о параметре -Tuning:

nikto -H | grep 'Tuning'

Символ конвейера | передает вывод команды nikto -H команде grep, которая затем фильтрует вывод, показывая только строки, содержащие слово "Tuning".

        -Tuning+ (1234567890ab)          Параметры тюнинга управляют тестами, которые Nikto
                                        будет использовать против цели. Используйте порядковый
                                        номер или букву для указания типа.
                                        Можно использовать несколько.
                                        1 - Интересные файлы / Виден в логах
                                        2 - Неправильная конфигурация / Файл по умолчанию
                                        3 - Раскрытие информации
                                        4 - Внедрение (XSS/Script/HTML)
                                        5 - Получение удаленных файлов - внутри корневой директории веб-сервера
                                        6 - Отказ в обслуживании
                                        7 - Получение удаленных файлов - по всему серверу
                                        8 - Выполнение команд / Удаленная оболочка
                                        9 - SQL-инъекция
                                        0 - Загрузка файлов
                                        a - Обход аутентификации
                                        b - Идентификация программного обеспечения
                                        x - Обратный тюнинг (т.е. включить
                                        все, кроме указанных)

Этот вывод четко объясняет, что делает параметр -Tuning, и перечисляет все допустимые значения, которые вы можете с ним использовать.

Проверка установленной версии Nikto

На этом заключительном шаге вы узнаете, как проверить установленную версию Nikto. Знание версии важно по нескольким причинам: оно помогает определить, есть ли у вас последние функции и проверки безопасности, и является необходимой информацией при сообщении об ошибке или обращении за помощью.

Nikto имеет специальную опцию -Version (обратите внимание на заглавную 'V') для отображения информации о версии инструмента и его ключевых компонентах.

Выполните следующую команду в вашем терминале:

nikto -Version

Команда выведет подробную информацию о версии.

---------------------------------------------------------------------------
- Nikto v2.5.0
- LibWhisker v2.5
- Perl v5.34.0
- Поддержка SSL:    Net::SSLeay 1.92
- Параметры компиляции SSL: OPENSSL_VER=0x30000020, OPENSSL_INC=/usr/include, OPENSSL_LIB=/usr/lib/x86_64-linux-gnu
- База данных Nikto:    20231125
- База данных CIRT:    20221101
---------------------------------------------------------------------------

Этот вывод показывает версию самого Nikto, а также версии его базовых компонентов, таких как Perl и OpenSSL, и статус обновления его баз данных.

Резюме

В этой лабораторной работе вы успешно изучили основные параметры командной строки для веб-сканера Nikto.

Вы научились:

  • Использовать nikto -h для получения краткого обзора распространенных параметров.
  • Использовать nikto -H для просмотра полного и подробного списка всех доступных параметров.
  • Использовать nikto -list-plugins для просмотра всех плагинов тестирования, которые Nikto может использовать.
  • Находить информацию о конкретном параметре, передавая вывод справки команде grep.
  • Проверять установленную версию Nikto и его компонентов с помощью nikto -Version.

Теперь вы обладаете фундаментальными знаниями, необходимыми для навигации по параметрам Nikto и понимания его возможностей. Это позволит вам уверенно создавать более сложные команды сканирования в будущем.