
Avaliação Rápida do WAF "paranóico" Doctor | Ferramenta WAFPARAN01D3
A Ferramenta de Teste de Nível de Paranoia do Firewall de Aplicação Web.
— De alt3kx.github.io
Em essência, o Nível de Paranoia (PL) permite definir o quão agressivo é o Core Rule Set.
Referência: https://coreruleset.org/20211028/working-with-paranoia-levels/
wafparan01d3.py envia requisições maliciosas usando payloads codificados colocados em diferentes partes das requisições HTTP com base em parâmetros GET. Os resultados da avaliação são registrados no arquivo de debug wafparan01d3.log criado na sua máquina.mysql_gosecure.txt, com base na pesquisa "A Scientific Notation Bug in MySQL left AWS WAF Clients Vulnerable to SQL Injection" da gosecure, disponível aqui https://www.gosecure.net/blog/2021/10/19/a-scientific-notation-bug-in-mysql-left-aws-waf-clients-vulnerable-to-sql-injection/ avaliando nossos WAFs usando modsecurity em seus diferentes níveis de paranoia, seja em uma configuração padrão ou desabilitando diferentes regras / IDs de forma escalonada e rápida.
Pentesters: Escopo GreyBox com acesso limitado à máquina Linux do WAF usando um "shell" com privilégios para iniciar/recarregar e editar arquivos de configuração do Apache do WAF em ambientes DEV/STG/TEST, enviando diferentes payloads.Oficiais de Segurança: Tomar a melhor decisão para aplicar o nível de paranoia do WAF para cada solução na sua organização. Blueteamers: Aplicação de regras, melhores alertas, menos resultados de falsos positivos na sua organização. Integradores: Realizar um troubleshooting mais aprofundado e definir o nível adequado de paranoia do WAF rapidamente, personalizando regras ou criando patches virtuais. Referência: https://www.inmotionhosting.com/support/server/apache/install-modsecurity-apache-module/
$ sudo apt update -y && sudo apt dist-upgrade -y
$ sudo apt-get install build-essential -y
$ sudo apt-get install apache2 -y
$ sudo apt install libapache2-mod-security2 -y
$ sudo apt-get install curl vim gridsite-clients net-tools -y
$ sudo systemctl restart apache2
$ sudo apt-cache show libapache2-mod-security2

$ sudo cp /etc/modsecurity/modsecurity.conf-recommended /etc/modsecurity/modsecurity.conf
Em seguida, altere o modo de detecção do ModSecurity. Primeiro, entre na pasta cd /etc/modsecurity
2. Edite o arquivo de configuração do ModSecurity com vi, vim, emacs ou nano.
$ sudo vim /etc/modsecurity/modsecurity.conf
SecRuleEngine DetectionOnly. Altere DetectionOnly para On. Valor original: SecRuleEngine DetectionOnly
Novo valor: SecRuleEngine On

$ sudo systemctl restart apache2
$ cd ~
$ wget https://github.com/coreruleset/coreruleset/archive/refs/tags/v3.3.2.zip
$ sha1sum v3.3.2.zip && echo ProvidedChecksum
88f336ba32a89922cade11a4b8e986f2e46a97cf v3.3.2.zip
ProvidedChecksum

$ unzip v3.3.2.zip
$ sudo mv coreruleset-3.3.2/crs-setup.conf.example /etc/modsecurity/crs/crs-setup.conf
$ sudo mv coreruleset-3.3.2/rules/ /etc/modsecurity/crs/
$ sudo vim /etc/apache2/mods-enabled/security2.conf
# Default Debian dir for modsecurity's persistent data
SecDataDir /var/cache/modsecurity
# Include all the *.conf files in /etc/modsecurity.
# Keeping your local configuration in that directory
# will allow for an easy upgrade of THIS file and
# make your life easier
IncludeOptional /etc/modsecurity/crs-setup.conf
IncludeOptional /etc/modsecurity/rules/*.conf
# Include OWASP ModSecurity CRS rules if installed
#IncludeOptional /usr/share/modsecurity-crs/*.load

6. Garanta que tanto o arquivo de configuração padrão do ModSecurity quanto o novo arquivo de configuração do CRS estejam listados. O caminho da primeira linha do arquivo de configuração pode já estar incluído.
O segundo caminho deve ser onde você moveu o diretório /rules. </br>
7. Edite /etc/apache2/apache2.conf </br>
$ sudo vim /etc/apache2/apache2.conf
Copie e cole o código a seguir e salve-o. </br>
Include ports.conf
Include /etc/modsecurity/modsecurity.conf Include /etc/modsecurity/crs/crs-setup.conf Include /etc/modsecurity/crs/rules/*.conf
