bytes.cat

La wiki d'FP d'informàtica

Eines de l'usuari

Eines del lloc


waf

Diferències

Ací es mostren les diferències entre la revisió seleccionada i la versió actual de la pàgina.

Enllaç a la visualització de la comparació

Ambdós costats versió prèvia Revisió prèvia
Següent revisió
Revisió prèvia
Ultima revisió Ambdós costats nova versio
waf [2022/03/05 19:33]
enrique_mieza_sanchez [mod_security en Apache]
waf [2023/06/30 14:43]
enric_mieza_sanchez [Monitoritzant el trànsit]
Línia 1: Línia 1:
 ====== WAF: Web Application Firewall ====== ====== WAF: Web Application Firewall ======
  
-Un WAF o Web Application Firewall és un tipus particular de //Fireweall// que monitoritza el contingut del servei web HTTP , permetent bloquejar l'accés en cas que es detectin atacs com [[SQL injection]], cross-site-scripting (XSS), etc.+Un WAF o Web Application Firewall és un tipus particular de //firewall// que monitoritza el contingut del servei web HTTP, permetent bloquejar l'accés en cas que es detectin atacs com [[SQL injection]], cross-site-scripting (XSS), i similars. 
 + 
 + 
 +{{ waf.png?550 }} 
 + 
 +Referencias 
 +  * [[https://dementium2.com/administrador-neto/12-mejores-firewalls-de-aplicaciones-web-waf/|12 mejores aplicaciones WAF]] incloent versions //hardware// i //software//
 +  * [[https://diegooo.com/aws-athena-consulta-de-registro-cloudfront-y-waf/|WAF en AWS Cloud]]
  
 {{tag> #FpInfor #Ciber #Ceti #CiberMp03 #CetiMp03 #Asix #AsixMp17 web server mod_security waf firewall }} {{tag> #FpInfor #Ciber #Ceti #CiberMp03 #CetiMp03 #Asix #AsixMp17 web server mod_security waf firewall }}
Línia 9: Línia 16:
 ===== mod_security en Apache ===== ===== mod_security en Apache =====
  
-Referència: +Farem una pràctica amb Apache2 en Ubuntu LTS i amb el clàssic mod_security.
-  * [[https://adalmau.notion.site/LAB-3-9-WAF-Web-Application-Firewall-19d81908114e4af79327e44ee799d1a1#5ceb0c600d794b039cbb217a985fc061|LAB mod_security i Docker d'Anton Dalmau]]+
  
 +Referències:
 +  * [[https://adalmau.notion.site/LAB-3-9-WAF-Web-Application-Firewall-19d81908114e4af79327e44ee799d1a1#5ceb0c600d794b039cbb217a985fc061|LAB mod_security amb Nginx i Docker d'Anton Dalmau]]
 +  * [[https://owasp.org/www-project-modsecurity-core-rule-set/|OWASP CRS - Code Rule Set]]
 +  * [[https://resources.infosecinstitute.com/topic/analyzing-mod-security-logs/|Com analitzar els logs de mod_security]]
 +  * [[https://www.linuxbabe.com/security/modsecurity-apache-debian-ubuntu|mod_security en Ubuntu]] un tutorial més complert.
  
-Guia: +==== Instal·lació ==== 
-  Crea una màquina Ubuntu LTS +  Crea una màquina Ubuntu LTS. Pots utilitzar [[Vagrant]]. 
-  Instal·la Apache2 i libapache2-mod-security2 +  Instal·la Apache2 i **libapache2-mod-security2** 
-  Activa mod_security amb<code>$ sudo a2enmod security2</code> +  Activa mod_security amb<code>$ sudo a2enmod security2</code> 
-  Activa la configuració estàndard de OWASP fent<code># cp modsecurity.conf-recommended modsecurity.conf</code> +  Activa la configuració estàndard de OWASP a la carpeta ''/etc/modsecurity'':<code># cp modsecurity.conf-recommended modsecurity.conf</code> 
-  - Reinicia Apache +  * Reinicia Apache
-  - Visita la pàgina principal i mira els logs d'Apache. +
-    Veus algun arxiu especial? Què hi ha? Quanta informació hi ha aparegut amb una sola request? +
-    * De què se'ns informa a ''errors.log''? Quina severitat té? +
-  - Fes una pàgina amb un formulari (només cal el HTML, sense PHP ni processament) a <code>/var/www/html</code> +
-  - Intenta un atac de [[SQL injection]] com per exemple:<code>dades' OR 1=1; -- </code> +
-  - De moment hauria de permetre enviar les dades igualment. +
-  - Mira els logs d'Apache. Quina severitat té ara l'avís? +
-  - Activem la política de bloqueig enlloc de només monitorització. Anem a ''/etc/modsecurity/modsecurity.conf'' i canviem:<code>SecRuleEngine DetectionOnly</code> per <code>SecRuleEngine On</code> +
-  - Reinicia Apache +
-  - Comprova ara què passa si intentes un atac de SQL injection.+
  
 +==== Monitoritzant el trànsit ====
 +  * Visita la pàgina principal via IP (no amb nom de domini).
 +    * Mira els logs d'Apache. Veus algun arxiu especial? Què hi ha? (a grans trets)
 +    * Quanta informació hi ha aparegut amb una sola request?
 +    * De què se'ns informa a ''errors.log''?
 +    * Si apareix algun advertiment, quina severitat té?
 +  * Fes una pàgina amb un formulari (només cal el HTML, sense PHP ni processament) a <code>/var/www/html</code>
 +  * Intenta un atac de [[SQL injection]] com per exemple:<code>dades' OR 1=1; -- </code>
 +  * De moment hauria de permetre enviar les dades igualment (està en mode //DectectionOnly//).
 +  * Mira els logs d'Apache. Quina severitat té ara l'avís?
  
 +==== Bloqueig d'atacs ====
 +  * Activem la política de bloqueig enlloc de només monitorització. Anem a ''/etc/modsecurity/modsecurity.conf'' i canviem:<code>SecRuleEngine DetectionOnly</code> per <code>SecRuleEngine On</code>
 +  * Reinicia Apache
 +  * Comprova ara què passa si intentes diversos atacs de SQL injection. Com et bloqueja l'atac?
  
 +\\
  
 +===== Exercici =====
  
 +<WRAP todo>
 +Si has fet el 1r exerici de [[SQL injection]], pots modificar el Dockerfile que apareix al repositori per tal que l'Apache inclogui el ''mod_security''. Seguint les passes d'aquest tutorial hauria de ser molt similar.
 +
 +Modifica-ho en el teu repositori on has fet el //fork// del projecte.
 +
 +</WRAP>
 +
 +\\
  
waf.txt · Darrera modificació: 2024/04/15 16:24 per enric_mieza_sanchez