Aprender Jugando Jugando Aprendiendo por Guillermo Gredilla de Avanzo
Jugando con tus atacantes
-
Upload
datio-big-data -
Category
Engineering
-
view
1.073 -
download
1
Transcript of Jugando con tus atacantes
![Page 1: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/1.jpg)
Jugando con tus atacantes
![Page 2: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/2.jpg)
¿Quién soy?
Óscar J. PérezSeguridad en Big Data Fundador de Mad 4 Hacking
![Page 3: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/3.jpg)
Índice
1
2
3
Sistemas de seguridad
WAF
OWASP
4
5
ModSecurity
A practicar
![Page 4: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/4.jpg)
1. sistemas de seguridad
Protegiendo las máquinas
![Page 5: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/5.jpg)
Historia de los Firewall
...La seguridad de las redes se basan en la segmentación de las redes realizadas por los routers
1988Aparece en documentación interna de DEC las primeras referencias sobre Firewall
1990Se crea el primer Firewall de uso interno creado por DEC conocido como “DEC SEAL”
1993se presenta el primer navegador “NCSA Mosaic” para unix
1994Check Point saca al mercado el primer firewall comercial bajo el nombre de FireWall-1
2007Palo alto saca a la venta el primer Next-Generation Firewall (NGFW)
![Page 6: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/6.jpg)
Firewall
Estableciendo el Perímetro de seguridad
![Page 7: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/7.jpg)
Firewall DMZ
Perímetro de Seguridad ampliado
![Page 8: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/8.jpg)
Primera generación
○ Filtrado de paquetes (packet filter luego stateless)○ No verifican secuencia de trafico○ Dirección de origen/destino, el protocolo o el puerto○ Capas 1-3 OSI
– Ej. bloquear samba
![Page 9: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/9.jpg)
Segunda generación
○ Cortafuegos de estado (stateful inspection)○ “inspección de estado de paquetes”○ Permite el “estado” de una conexión (nueva, activa, no existente)
![Page 10: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/10.jpg)
Tercera generación
○ Cortafuegos de aplicación (application filtering)
○ Son mas lentos
○ Capa 7 OSI
○ Entiende el funcionamiento de varios protocolos
– EJ. Configurar para filtrar una palabra.
![Page 11: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/11.jpg)
Cuarta generación
○ Firewalls de nueva generación (NGFW)○ Este nivel de control permite una mayor flexibilidad.○ Con mejoras: IDS, IPS, control granular.
– EJ. aplican reglas como "LinkedIn pero no Facebook"
![Page 12: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/12.jpg)
“2016 Gartner cree que la adopción de firewalls virtuales
ha sido bastante lenta, prediciendo menos del 5%.
![Page 13: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/13.jpg)
“Futuro "Rutime Application Self-Protection” (RASP)
sustituto de la mayoría de las tareas del firewall de red
![Page 14: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/14.jpg)
2. WAFProtegiendo servicios HTTP
![Page 15: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/15.jpg)
La evolución de las app
![Page 16: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/16.jpg)
La revolución web
Link
![Page 17: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/17.jpg)
Securizar aplicaciones WEB
○ Ciclo de Vida de Desarrollo de Software (SDLC)○ Pruebas de aplicaciones Web○ Web Application Firewall (WAF)
![Page 18: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/18.jpg)
Diagrama de red clásico
El filtrado se realiza sobre los puertos de los servicios expuestos
![Page 19: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/19.jpg)
Diagrama de red actual
Se accede a los servicios por un front-end web
![Page 20: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/20.jpg)
Diagrama de red actual con WAF
Se añade una capa más de seguridad al añadir un WAF a la arquitectura de red
![Page 21: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/21.jpg)
WAF vs Firewall
Trabajan en capas ISO diferentes complementándose
![Page 22: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/22.jpg)
FuncionamientoWAF
Se controla el flujo tanto de subida como el de bajada
![Page 23: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/23.jpg)
Clasificación de WAF Modelos de seguridad
Negativas
Se permite todas las peticiones denegando únicamente las identificadas como amenaza
Positiva
Se deniega todas las peticiones a no ser que estén identificadas como validas.
![Page 24: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/24.jpg)
Características ventajas
Complementa al FWNo tiene que ser el sustituto del FW ya que se complementan uno al otro
Capa 7Analizan a nivel de capa de aplicación
Analiza, filtra y bloqueaEl tráfico del protocolo HTTP que gestionan los servicios web
ProtegeProtege de ataques como XSS, bots, SQL-injection, capture session, Trojans, session hijacking y mucho mas
![Page 25: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/25.jpg)
Características ventajas
EspecializadoSistema centrado en tecnologías HTTP, protegiendo los puntos mas críticos de interacción con el usuario en internet
Logs completosGenera bitácoras detalladas de las transacciones HTTP
Evolución IDS/IPSSon más bien una evolución de los IDS/IPS que de los Firewal
Rompe TLSAl poder romper TLS tiene una ventaja clara frente a los IDS/IPS
![Page 26: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/26.jpg)
Características desventajas
Test obligatorioRequiere de un periodo de pruebas y adecuación
Cuello de botellaPuede provocar problemas de cuello de botella
Cambio de reglasSi las aplicaciones web cambian puede que se requieraadecuar el WAF a los cambios
Latencia añadida Se añade latencia al sistema con el procesado de reglas. Por eso es muy importante solo aplicar las necesarias.
![Page 27: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/27.jpg)
Arquitectura WAFEmbebido
los que se basan en el servidor de aplicaciones
![Page 28: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/28.jpg)
Arquitectura WAFProxy
Son un elemento más de la red
![Page 29: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/29.jpg)
Productos en el mercado.
Privativos
Sophos Imperva Trustwave Fortinet Akamai
Open Source
ModSecurity IronBee NAXSI WebKnight Shadow Daemon
![Page 30: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/30.jpg)
3. OWASP
![Page 31: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/31.jpg)
“OWASP El proyecto abierto de seguridad en aplicaciones
Web
![Page 32: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/32.jpg)
“
![Page 33: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/33.jpg)
OWASP ModSecurity CRS
CRS (Core Rule Set)
Reglas gratuitas para el WAF
![Page 34: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/34.jpg)
OWASP ModSecurity CRS
- SQL Injection (SQLi)- Cross Site Scripting (XSS)
- Local File Inclusion (LFI)- Remote File Inclusion (RFI)- Remote Code Execution (RCE)- PHP Code Injection- HTTP Protocol Violations
- Shellshock- Session Fixation- Scanner Detection- Metadata/Error Leakages- Project Honey Pot Blacklist- GeoIP Country Blocking
![Page 35: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/35.jpg)
CRS 2.2.x vs CRS 3.0.0
○ @detectSQLi y @detectXSS○ Reputación IP
– ID 981140
– ID 981175
![Page 36: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/36.jpg)
Instalación y configuración de las máquinas con VagrantVagrant
A la consola
![Page 37: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/37.jpg)
Vagrant
○ Herramienta gratuita de línea de comandos
○ Para Virtual box, VMware, Amazon EC2, LXC, DigitalOcean
○ Evitar el “en mi ordenador funciona”
![Page 38: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/38.jpg)
Vagrant - Box
○ VM con SO instalado [paquetes extra]○ Añadir box vagrant box add {title} {url}○ Se guarda en ~/.vagrant.d/boxes○ Box descargador vagrant box list○ https://app.vagrantup.com/boxes/search
![Page 39: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/39.jpg)
Vagrant - Comandos○ Vagrantfile○ vagrant init○ vagrant up○ vagrant ssh○ vagrant suspend → vagrant resume○ vagrant status○ !!!vagrant destroy!!!
Nota: el directorio local es compartido con /vagrant
![Page 40: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/40.jpg)
Desplegar el entorno
A la consola
![Page 41: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/41.jpg)
4. ModSecurityFirewalling las aplicaciones Web
![Page 42: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/42.jpg)
“Known as the "Swiss Army Knife"
of WAFs
![Page 43: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/43.jpg)
Características
Open sourceLicencia Apache versión 2.0
Motor de reglasMotor de reglas basado de perl versión 5
Servidor webSe puede instalar en:- IIS- Ngix - Apache
Reglas específicas- Joomla- Wordpress- Etc
Versión 2.9.1Futura versión 3.0
AntivirusSe puede configurar con motores antivirus (Ej. ClanAV)
![Page 44: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/44.jpg)
Que puede hacer?
Real timeControl acceso y motorización en tiempo real, mecanismo de persistencia
Virtual patchingSistema de mitigación fuera de la capa de la aplicación
Full HTTP traffic loggingTiene la capacidad de registrar todo el flujo de datos tanto de subida como de bajada
Hardenig webPermite reducir la superficie expuesta por la app reduciendo funcionalidades HTTP sin uso request method|header ...
FlexibilidadNos permite realizar tareas más allá de ser una herramienta de seguridad
![Page 45: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/45.jpg)
Fases
Tiene 5 fases.
Las reglas se pueden activar en una o varias fases.
![Page 46: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/46.jpg)
Fases
1. Request_Header Después de leer las cabeceras de la petición
2. Request_BodySistema de mitigación fuera de la capa de la aplicación
3. Response_HeadersAntes de enviar las cabeceras de respuesta al cliente
4. Response_BodyAntes de enviar el cuerpo de la respuesta al cliente.Se pueden programar las reglas que impidan la fuga de información.
5. LoggingAntes de registrar la transacción.No se puede realizar ninguna acción, ya que la respuesta ya la tiene el cliente
![Page 47: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/47.jpg)
Anatomía de una regla
Secrule VARIABLES OPERADORES [Func Trans] ACCIONES
Solo la acción id es obligatoria
SecRule REQUEST_HEADERS:User-Agent "MSIE 5.0" "phase:1,deny"
![Page 48: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/48.jpg)
Variables
Identifica partes de una transacción HTTP para las reglas
Contienen RAW bytes de datos
![Page 49: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/49.jpg)
Tipos Variables
Scalar variablesCollectionsRead-only collectionsRead/Write collectionsSpecial CollectionsPersistent Collections
REMOTE_ADDRARGS
TXXML
![Page 50: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/50.jpg)
Operadores
Especifica como se va a analizar la variable
Solo uno por regla
Expresiones regulares es lo más habitual
@rx@contains@endsWith@streq
![Page 51: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/51.jpg)
Transformaciones
Puede existir mas de una por regla
Cambia al input antes de la ejecución de la regla
![Page 52: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/52.jpg)
Acciones
Especifica que tiene que hacer cuando una regla “matche”
allowblock (error page)deny (network errordropidmsg
![Page 53: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/53.jpg)
Configuraciones
- SecDataDir- SecUploadDir- SecTmpDirss
- SecRequestBodyLimit- SecResponseBodyLimit
- SecRuleEngine- SecContentInjection- SecStreamOutBodyInspection- SecResponseBodyAccess - SecDisableBackendCompression- SecRequestBodyAccess
![Page 54: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/54.jpg)
Audit log
A - audit log headerB - request headersC - request bodyD - intended response headerE - intended response bodyF - response headersG - response body
H - audit log trailerI - reduced multipart request body (C)
J - multipart files informationK - rules matched transaction
Z - audit log footer
![Page 55: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/55.jpg)
Audit log estandar
A - audit log headerB - request headers
F - response headers
H - audit log trailerK - rules matched transactionZ - audit log footer
SecAuditLogParts
![Page 56: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/56.jpg)
Instalación ModSecurity
- apt install apache2- apt-get install libapache2-modsecurity
- mv /etc/modsecurity/modsecurity.conf{-recommended,}- a2enmod headers- a2enmod proxy_http- systemctl restart apache2.service- a2enmod proxy_http
![Page 57: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/57.jpg)
Primera prueba con ModSecurityModSecurity
A la consola
![Page 58: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/58.jpg)
5. A practicarManos a la obra
![Page 59: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/59.jpg)
Jugando con DVWADVWA
A la consola
![Page 60: Jugando con tus atacantes](https://reader034.fdocuments.es/reader034/viewer/2022050614/5a65af2e7f8b9aa4758b5ae9/html5/thumbnails/60.jpg)
A por los atacanteslos atacantes
A la consola