Модуль Nemesida WAF Scanner предназначен для выявления веб-уязвимостей в защищаемых веб-приложениях.
Перед установкой и использованием Nemesida WAF Scanner внимательно изучите документацию.
При работе модуль производит обращения к nemesida-security.com
для получения информации об уязвимостях через Nemesida Vulnerability API, а также передает информацию об обнаруженных уязвимостях в Личный кабинет через Nemesida WAF API.
Информация, передаваемая Nemesida WAF Scanner при обращении к Nemesida Vulnerability API, может быть передана сторонним базам данных уязвимостей.
Установка модуля на сервер:
DebianUbuntuCentOS
# apt install apt-transport-https
Debian 9
# echo "deb https://repository.pentestit.ru/nw/debian stretch non-free" > /etc/apt/sources.list.d/NemesidaWAF.list
Debian 10
# echo "deb https://repository.pentestit.ru/nw/debian buster non-free" > /etc/apt/sources.list.d/NemesidaWAF.list
# wget -O- https://repository.pentestit.ru/nw/gpg.key | apt-key add -
# apt update && apt upgrade
# apt install python3-pip python3-venv python3-dev postgresql-server-dev-all dmidecode
# apt install nwaf-scanner
# apt install apt-transport-https
16.04
# echo "deb [arch=amd64] https://repository.pentestit.ru/nw/ubuntu xenial non-free" > /etc/apt/sources.list.d/NemesidaWAF.list
# wget -O- https://repository.pentestit.ru/nw/gpg.key | apt-key add -
Подключите репозиторий Python 3.6:
# apt install software-properties-common
# add-apt-repository ppa:deadsnakes/ppa
Произведите установку пакетов:
# apt update && apt upgrade
# apt install python3.6 python3.6-venv python3.6-dev postgresql-server-dev-all gcc dmidecode
# curl https://bootstrap.pypa.io/get-pip.py | python3.6
18.04
# echo "deb [arch=amd64] https://repository.pentestit.ru/nw/ubuntu bionic non-free" > /etc/apt/sources.list.d/NemesidaWAF.list
# wget -O- https://repository.pentestit.ru/nw/gpg.key | apt-key add -
# apt update && apt upgrade
# apt install python3-pip python3-venv python3-dev postgresql-server-dev-all dmidecode
20.04
# echo "deb [arch=amd64] https://repository.pentestit.ru/nw/ubuntu focal non-free" > /etc/apt/sources.list.d/NemesidaWAF.list
# wget -O- https://repository.pentestit.ru/nw/gpg.key | apt-key add -
# apt update && apt upgrade
# apt install python3-pip python3-venv python3-dev postgresql-server-dev-all dmidecode
# apt install nwaf-scanner
Произведите настройку политики SELinux или деактивируйте ее командой:
# setenforce 0
после чего приведите файл /etc/selinux/config
к виду:
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of three two values:
# targeted - Targeted processes are protected,
# minimum - Modification of targeted policy. Only selected processes are protected.
# mls - Multi Level Security protection.
SELINUXTYPE=targeted
CentOS 7
Подключите репозитории и установите необходимые зависимости:
# rpm -Uvh https://repository.pentestit.ru/nw/centos/nwaf-release-centos-7-1-6.noarch.rpm
# rpm -Uvh https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
# yum install centos-release-scl-rh
# yum update
# yum install python36 python36-pip python36-devel postgresql11-devel gcc dmidecode
# yum install nwaf-scanner
CentOS 8
Подключите репозитории и установите необходимые зависимости:
# rpm -Uvh https://repository.pentestit.ru/nw/centos/nwaf-release-centos-8-1-6.noarch.rpm
# dnf update
# dnf install python3 python3-pip python3-devel gcc dmidecode
# dnf install nwaf-scanner
Для первичной настройки модуля внесите необходимые изменения в основной конфигурационный файл /opt/nws/main.conf
.
Параметры main.conf
Параметр для указания лицензионного ключа модуля Nemesida WAF Scanner. В случае, если лицензионный ключ не будет обнаружен или будет недействителен, запуск модуля завершится соответствующей ошибкой.
Настройка адреса прокси-сервера для обращения к nemesida-security.com:443
(проверка лицензионного ключа, взаимодействие с Nemesida Vulnerability API). Пример:
sys_proxy = proxy.example.com:3128
.
Настройка адреса API для отправки результатов сканирования в Nemesida WAF API. Пример:
api_host = http://localhost:8080
.
Настройка адреса прокси-сервера для обращения к Nemesida WAF API. Пример:
api_proxy = proxy.example.com:3128
.
Параметр активации/деактивации вывода информации об ошибках в консоль.
Проверка уязвимостей с использованием функционала модуля Личный кабинет.
Параметр активации/деактивации функционала.
db_name
db_user
db_pass
db_host
Параметры подключения к БД модуля Личный кабинет.
Для настройки параметров сканирования в директории /opt/nws/conf/
создайте файл(ы) с расширением conf
. Для каждого веб-приложения необходимо создавать отдельный конфигурационный файл.
Пример конфигурационного файла example.conf
Адрес веб-приложения. Пример:
target = example.com
target = example.com:85
Активация/деактивация подключения с использованием SSL/TLS при обращении к веб-приложению. Пример: ssl = false
.
Адрес прокси-сервера для обращений к веб-приложению. Пример: scan_proxy = example.com:1111
.
Адрес страницы веб-приложения для выполнения процедуры авторизации. Пример auth_uri = /login
.
Имя и пароль пользователя для авторизации. Пример: login = user
и password = pass
.
Прочая информация
Информация об ошибках в работе Nemesida WAF Scanner содержится в журнале регистрации событий модуля /var/log/nwaf/nws.log
.