FREE WAF и Личный кабинет

sastor

New member
Поскажите пожалуйста, как правильно установить ЛК для Фри версии? По инструкции вышли ошибки.
 

rr

Administrator
Staff member
На каком этапе возникает ошибка и что в ней содержится?
 

sastor

New member
Использую ISPmanager 5 lite
1. Установил WAF FREE. Тут все ок - настроил, работает. Сложно сказать как.
2. Устанавливаю API. Но возникает вопрос - а может ли Waf, Api и Cabinet размещаться на одной машине? Первый раз попробовал - не понял. Сервер ругался мол не может подключиться. Что указывать например для nwaf_api_conf host=http://nwaf-api.example.com:8080 ? Нужно 127.0.0.1:8080?
 
Last edited:

rr

Administrator
Staff member
Использую ISPmanager 5 lite
1. Установил WAF FREE. Тут все ок - настроил, работает. Сложно сказать как.
2. Устанавливаю API. Но возникает вопрос - а может ли Waf, Api и Cabinet размещаться на одной машине? Первый раз попробовал - не понял. Сервер ругался мол не может подключиться
Лучше API c кабинетом разместить на отдельной машине, но можно все на одной.
 

sastor

New member
Постгрес вижу первый раз в жизни))) Ругается, что не может к базе подкулючиться, если я правильно понял. Пробовал указывать local, host, localhost, 127.0.0.1, 127.0.0.1/32 в файле /var/www/app/cabinet/settings.py для DB_HOST_CABINET и DB_HOST_CONF

Видать, что-то неправильно делаю

django.db.utils.OperationalError: could not translate host name "local" to address: Name or servi
ce not known
 

evil_box

Member
Апну тему, похоже сию поделку не тестируют совсем ибо после инсталляции в /var/log/uwsgi/cabinet/debug.log она хочет какой то attack
Bash:
env
Centos 7 latest
Nginx 1.17
web server, nwaf, cabinet, php-fpm, postgres на одной машине
Bash:
Internal Server Error: /
Traceback (most recent call last):
  File "/var/www/app/venv/lib64/python3.6/site-packages/django/db/backends/utils.py", line 84, in _execute
    return self.cursor.execute(sql, params)
psycopg2.errors.UndefinedTable: ОШИБКА:  отношение "attack" не существует
LINE 1: ...attack"."ip" AS "ips", "attack"."id" AS "id" FROM "attack" W...
На странице https://waf.pentestit.ru/manuals/1446
Про дебаг не упомянули вообще, очевидно пользователи должны сами и подгружать libastral.so и понимать что писать в конфиг спасибо что хоть его местоположение указали
Там же не упомянуто что этот cabinet не поддерживает Postgres9, там вообще нет информации как поставить Postgres
Единственные намеки что нужна 11 версия только здесь
Bash:
rpm -Uvh https://yum.postgresql.org/11/redhat/rhel-7-x86_64/pgdg-centos11-11-2.noarch.rpm
Естественно из родных репозиторием прилетает 9 ветка и имеем
Bash:
  Applying main.0002_auto_20170426_1537...Traceback (most recent call last):
  File "/var/www/app/venv/lib64/python3.6/site-packages/django/db/backends/utils.py", line 84, in _execute
    return self.cursor.execute(sql, params)
psycopg2.errors.SyntaxError: ОШИБКА:  ошибка синтаксиса (примерное положение: "WITH ORDINALITY")
LINE 6:                     FROM unnest(c.conkey) WITH ORDINALITY co...

А еще, команда
Bash:
yum install python36 python36-pip python36-devel nginx memcached libmemcached-devel [B]postgresql-libs[/B] gcc
Лихо завезет 9 либы для Postgres и на выхлопе получаем кривой environment постгрес
Bash:
psql (9.2.24, сервер 11.5)
ПРЕДУПРЕЖДЕНИЕ: psql имеет версию 9.2, а сервер - 11.0.
                Часть функций psql может не работать.
Введите "help", чтобы получить справку.
P.S полные питоновые трэйсы форум приложить не дает, бесконечно думает
 
Last edited:

rr

Administrator
Staff member
Апну тему, похоже сию поделку не тестируют совсем ибо после инсталляции в /var/log/uwsgi/cabinet/debug.log она хочет какой то attack
Bash:
env
Centos 7 latest
Nginx 1.17
web server, nwaf, cabinet, php-fpm, postgres на одной машине
Bash:
Internal Server Error: /
Traceback (most recent call last):
  File "/var/www/app/venv/lib64/python3.6/site-packages/django/db/backends/utils.py", line 84, in _execute
    return self.cursor.execute(sql, params)
psycopg2.errors.UndefinedTable: ОШИБКА:  отношение "attack" не существует
LINE 1: ...attack"."ip" AS "ips", "attack"."id" AS "id" FROM "attack" W...
На странице https://waf.pentestit.ru/manuals/1446
Про дебаг не упомянули вообще, очевидно пользователи должны сами и подгружать libastral.so и понимать что писать в конфиг спасибо что хоть его местоположение указали
Там же не упомянуто что этот cabinet не поддерживает Postgres9, там вообще нет информации как поставить Postgres
Единственные намеки что нужна 11 версия только здесь
Bash:
rpm -Uvh https://yum.postgresql.org/11/redhat/rhel-7-x86_64/pgdg-centos11-11-2.noarch.rpm
Естественно из родных репозиторием прилетает 9 ветка и имеем
Bash:
  Applying main.0002_auto_20170426_1537...Traceback (most recent call last):
  File "/var/www/app/venv/lib64/python3.6/site-packages/django/db/backends/utils.py", line 84, in _execute
    return self.cursor.execute(sql, params)
psycopg2.errors.SyntaxError: ОШИБКА:  ошибка синтаксиса (примерное положение: "WITH ORDINALITY")
LINE 6:                     FROM unnest(c.conkey) WITH ORDINALITY co...

А еще, команда
Bash:
yum install python36 python36-pip python36-devel nginx memcached libmemcached-devel [B]postgresql-libs[/B] gcc
Лихо завезет 9 либы для Postgres и на выхлопе получаем кривой environment постгрес
Bash:
psql (9.2.24, сервер 11.5)
ПРЕДУПРЕЖДЕНИЕ: psql имеет версию 9.2, а сервер - 11.0.
                Часть функций psql может не работать.
Введите "help", чтобы получить справку.
P.S полные питоновые трэйсы форум приложить не дает, бесконечно думает ... видимо тоже немезидой защищен
Безусловно, Free версия нужна что бы привлекать клиентов. Мы рассматривали приобретение вашей платной версии, однако теперь мы видимо вынуждены рассмотреть varnish waf
Перечисленные проблемы вызваны пропуском пункта установки и настройки Nemesida WAF API (вкл. PostgreSQL):
Перед установкой модуля Личный кабинет Nemesida WAF необходимо произвести установку и настройку модуля Nemesida WAF API и СУБД PostgreSQL.
 

evil_box

Member
Перечисленные проблемы вызваны пропуском пункта установки и настройки Nemesida WAF API (вкл. PostgreSQL):
Перед установкой модуля Личный кабинет Nemesida WAF необходимо произвести установку и настройку модуля Nemesida WAF API и СУБД PostgreSQL.
Благодарю за оперативный ответ! Скажите пожалуйста, а есть ли step by step мануал по сбору ваших продуктов в единое целое? А то не очень понятно что ставить первым, вторым итд
 

rr

Administrator
Staff member
Благодарю за оперативный ответ! Скажите пожалуйста, а есть ли step by step мануал по сбору ваших продуктов в единое целое? А то не очень понятно что ставить первым, вторым итд
Продукт представлен в виде основных (дин. модуль и модуль машинного обучения) и вспомогательных (апи, кабинет и тд) модулей. В зависимости от архитектуры применения, некоторые модули могут быть не установлены (например, кому-то не потребуется сканер уязвимостей). Поэтому мы не можем предложить строгую последовательность. Тем не менее, в большинстве случаев подойдет стандартная последовательность: https://waf.pentestit.ru/category/manuals
 

evil_box

Member
Продукт представлен в виде основных (дин. модуль и модуль машинного обучения) и вспомогательных (апи, кабинет и тд) модулей. В зависимости от архитектуры применения, некоторые модули могут быть не установлены (например, кому-то не потребуется сканер уязвимостей). Поэтому мы не можем предложить строгую последовательность. Тем не менее, в большинстве случаев подойдет стандартная последовательность: https://waf.pentestit.ru/category/manuals
Добрый день! Увы все равно не работает

Bash:
ноя 10 18:15:16 1 systemd[1]: Starting nginx - high performance web server...
ноя 10 18:15:16 1 nginx[3532]: nginx: [emerg] module "/etc/nginx/modules/ngx_http_waf_module.so" version 1017004 instead of 1017005 in /etc/nginx/nginx.conf:1
ноя 10 18:15:16 1 systemd[1]: nginx.service failed.
Nginx свежий из репозиториев
Bash:
nginx -V
nginx version: nginx/1.17.5
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC)
built with OpenSSL 1.0.2k-fips  26 Jan 2017
TLS SNI support enabled
 
Last edited:

evil_box

Member
Пока взял предыдущую версию Nginx и залочил версию в yum. Решение так себе если честно, так как модуль безопасности блокирует патчи безопасности от разработчиков Nginx 😄

Дополните инструкцию здесь - https://waf.pentestit.ru/manuals/1446
Строкой ln -s /usr/pgsql-11/bin/pg_config /usr/bin/
В разделе CentOS, в первом пункте
Если не сделать симлинк, psycopg2 не найдет pg_config и вывалить при установки пакета nwaf-cabinet следующее:
Bash:
Error: pg_config executable not found.
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-929gxb7l/psycopg2/
 

rr

Administrator
Staff member
Добрый день! Увы все равно не работает

Bash:
ноя 10 18:15:16 1 systemd[1]: Starting nginx - high performance web server...
ноя 10 18:15:16 1 nginx[3532]: nginx: [emerg] module "/etc/nginx/modules/ngx_http_waf_module.so" version 1017004 instead of 1017005 in /etc/nginx/nginx.conf:1
ноя 10 18:15:16 1 systemd[1]: nginx.service failed.
Nginx свежий из репозиториев
Bash:
nginx -V
nginx version: nginx/1.17.5
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC)
built with OpenSSL 1.0.2k-fips  26 Jan 2017
TLS SNI support enabled
>> module "/etc/nginx/modules/ngx_http_waf_module.so" version 1017004 instead of 1017005
запись о том, что версия nwaf-dyn-1.17 выпущена для 1.17.4, при этом пытаетесь подключить дин. модуль для nginx 1.17.5, в связи с чем возникает ошибка. На днях выпустим версию для 1.17.5, следите за обновлениями: https://waf.pentestit.ru/updates/1468
Достаточно будет обновить nwaf-dyn-1.17 через apt/yum.
 

evil_box

Member
И все равно данная поделка не работает, даже пройдя весь челендж установки, не словя больше кол-во ошибок, оно все равно способно только резать все что попало, например просто плагин капчи на вход в админку Wordpress (а как же там заявление что все работает из коробки и нет ложных срабатываний?)
Bash:
2019/11/10 20:16:31 [error] 2802#2802: *29002 Nemesida WAF: the request 1c84ccf7654809e564501d707201d153 blocked by rule id 1313 in zone BODY, client: 91.132.107.91, server: 1.ru, request: "POST /wp-admin/admin.php?page=google-captcha.php HTTP/2.0", host: "1-engineer.ru", referrer: "https://1-engineer.ru/wp-admin/admin.php?page=google-captcha.php"
и срать в лог Nginx этим
Bash:
2019/11/10 20:18:31 [error] 2803#2803: *59622 readv() failed (104: Connection reset by peer) while reading upstream, client: 127.0.0.1, server: , request: "POST /nw-api/attack HTTP/1.1", upstream: "uwsgi://unix:/var/www/nw-api/nw-api.sock:", host: "127.0.0.1:8080"
при этом
systemctl status nw-api
Active: active (running) since Вс 2019-11-10 20:15:12 MSK; 5min ago
 

evil_box

Member
а в дебаг логе этим
Bash:
Traceback (most recent call last):
  File "/var/www/app/venv/lib64/python3.6/site-packages/django/template/base.py", line 835, in _resolve_lookup
    if isinstance(current, BaseContext) and getattr(type(current), bit):
AttributeError: type object 'RequestContext' has no attribute 'alias_list'
Поправьте уже свой форум, править сообщения невозможно же
 

rr

Administrator
Staff member
В плагине от клиента на сервер передается "<?php" в body? Я думаю, это не нормально и такой запрос должен блокироваться.
Остальные проблемы вызваны пропуском некоторых пунктов инструкции.
 

evil_box

Member
В плагине от клиента на сервер передается "<?php" в body? Я думаю, это не нормально и такой запрос должен блокироваться.
Остальные проблемы вызваны пропуском некоторых пунктов инструкции.
Скажите пожалуйста, каких пунктов? Где?
Я по пунктам выполнил следующие инструкции

Не завелось, ошибки выше
 

evil_box

Member
В плагине от клиента на сервер передается "<?php" в body? Я думаю, это не нормально и такой запрос должен блокироваться.
Остальные проблемы вызваны пропуском некоторых пунктов инструкции.
По поводу первого вопроса,
подскажите пожалуйста как отдебажить и куда зарепортить, я с радостью сделаю 🙂
 
Top