- Uses rfp's LibWhisker as a base for all network funtionality
- Main scan database in CSV format for easy updates
- Fingerprint servers via favicon.ico files
- Determines "OK" vs "NOT FOUND" responses for file type, if possible
- Determines CGI directories for each server, if possible
- Switch HTTP versions as needed so that the server understands requests properly
- SSL Support (Unix with OpenSSL or maybe Windows with ActiveState's Perl/NetSSL)
- Output to file in plain text, HTML or CSV
- Plugin support (standard PERL)
- Checks for outdated server software
- Proxy support (with authentication)
- Host authentication (Basic)
- Watches for "bogus" OK responses
- Attempts to perform educated guesses for Authentication realms
- Captures/prints any Cookies received
- Mutate mode to "go fishing" on web servers for odd items
- Builds Mutate checks based on robots.txt entries (if present)
- Scan multiple ports on a target to find web servers (can integrate nmap for speed, if available)
- Multiple IDS evasion techniques
- Users can add a custom scan database
- Supports automatic code/check updates (with web access)
- Multiple host/port scanning (scan list files)
- Username guessing plugin via the cgiwrap program and Apache ~user methods
Описание:
Nikto - это Perl сканер под GPL лицензией, который выполняет всесторонние тесты для веб-серверов, включая более 3500 потенциально опасных уязвимостей, вариантами для более чем 900 серверов, и специфическими проблемами для более чем 250 серверов. Позволяет находить ошибки в конфигурациях серверов и программ, ошибки в байлах, проблемы с безопасностью файлов и программ, устаревшие программы. Сканер поддерживает SSL, прокси сервера, аутентификацию, IDS evasion. База уязвимостей а также плагины очень часто обновляются и процесс обновления можно сделать автоматическим.
Nikto не был разработан как стелс сканер. Следы активности программы будут скорее всего отражены в лог-файлах. Однако, присутствует поддержка LibWhisker's anti-IDS(Intrusion-detection system) методов если вы хотите использовать именно этот метод ну или для тестирования вашей системы обнаружения вторжений.
Не обязательно каждая проверка нужна только для обнаружения проблем с безопасностью, в сканере есть несколько тестов информационного характера, которые могут показать информацию, которая не была известна вебмастеру или инженеру по безопасности.
Требования:
Windows c Perl/Linux/Mac OS X
Единственная библиотека PERL которая не работает с Nikto - это LibWhisker
Также для работы с SSL, необходимо установить Net::SSLeay модуль
Чтобы сканировать большое количество портов рекомендуется установить nmap - он работает гораздо быстрее сканера портов в Nikto.
Установка:
Опишу для Windows, потому как для *Nix систем эта процедура выглядет куда проще.
- Установите ActivePerl
- Распакуйте Nikto(под Windows это легко делается с помощью Winrar)
Использование:
perl nikto.pl -h 192.168.0.1 -p 80,88,443сканирует хост 192.168.0.1 по портам 80,88 и 443. Самое примитивное тестирование.
perl nikto.pl -updateПозволяет загрузить апдейты.
perl nikto.pl -help
Выведет помощь для более полного использования сканера.
Продвинутое использование:
Использование техники "мутаций" - Nikto может комбинировать тесты или попытки для того чтобы "угадать" значения. Эта техника может вызвать громадное количество запросов к "жертве". Можно указать один или несколько подвидов техники:
- тестировать все файлы и все рутовые директории. Nikto берет каждый тест и разбивает его на директории и файлы, а потом создает скан-лист из комбинаций каждого файла и каждой директории.
- Угадывание имен файлов с паролями. Берется список наиболее употребляемых имен, расширений файлов и составляется список для проверки.
- Подсчитываение имен пользователей в Apache(/~user type request). Експлоит в неверной конфигурафии Apache UserDir который позволяет обнаружить список реальных пользователей.
- Подсчет пользователей через cgiwrap (/cgi-bin/cgiwrap/~user type requests).
- Отображение редиректов
- Показ полученных cookies
- Показ всех 200/OK ответов
- Показ URL для которых требуется аутенификация
Ситаксис такой:
perl nikto.pl -h 192.168.0.1 -T 58-T 58 означает, что будут сделаны опции 5 и 8 из списка ниже.
Перечень опций:
0 - File Upload. Проверка возможности загрузки файла на удаленный сервер.
1 - Interesting File / Seen in logs. Неизвестный или подозрительный файл, который можно будет увидеть в логах. Ничего конкретней на сайте не нашел.
2 - Misconfiguration / Default File. Проверка стандартных файлов и конфигурации. Это может быть документация или ресурс, который защищен паролем.
3 - Information Disclosure. Раскрытие информации - тестирование на получение информации: пути к файам или имени аккаунта.
4 - Injection (XSS/Script/HTML). Любые методы иньекций, включая cross site scripting (XSS) или контент (HTML).
5 - Remote File Retrieval - проверка на возможность несанкционированного получения файлов из корневой папки веб сервера.
6 - Denial of Service. Отказ в обслуживании. Не DDos атака.
7 - Remote File Retrieval - Проверка на возможность несанкционированного получения файлов из любого места веб сервера.
8 - Command Execution / Remote Shell. Тестирование на возможность вызова командной строки или шела.
9 - SQL Injection. Тестирование на возможность исполнения SQL запросов к базе
Официальный сайт программы.
No comments:
Post a Comment