Tutoriales y Manuales
Entradas Mensuales
-
▼
2024
(Total:
1019
)
-
▼
noviembre
(Total:
67
)
- El Constitucional de España absuelve finalmente a ...
- Vulnerabilidad crítica de Laravel
- Nuevo ransomware Helldown
- Vulnerabilidad Crítica en Routers D-Link Fuera de ...
- Microsoft presenta Windows 365 Link, su Mini-PC pa...
- Aprovechan servidores Jupyter mal configurados par...
- Apple soluciona dos vulnerabilidades Zero-Days en ...
- Microsoft prepara un ordenador cuántico de uso com...
- IA logra operar sin intervención humana
- 12 aplicaciones de Android graban conversaciones s...
- Next SBC, el espectacular mini PC que te cabe en l...
- El chatbot Gemini de Google le responde a un usuar...
- Alemania y Finlandia denuncian el corte del cable ...
- Una vulnerabilidad en el complemento SSL de WordPr...
- EE.UU. quiere obligar a Google a vender Chrome por...
- ¿Qué significa PON, GPON, XG-PON, 10G-EPON…?
- Comandos de Docker básicos y avanzados
- Memorias DIMM vs UDIMM vs CUDIMM vs RDIMM vs SODIMM
- Microsoft confirma que está creando una IA con 100...
- AsusWRT 4.0 - 5.0 (Firmware 3.0.0.6)
- Qué es LLaMA, cómo funciona y cómo se puede probar...
- Qué placa base elegir: Guía de compras para Intel ...
- Las mejores distribuciones de Linux para usuarios ...
- Llega a España el malware ToxicPanda: un troyano b...
- Extraen datos de casi 500 millones de usuarios de ...
- La Guardia Civil desactiva Cristal Azul, el canal ...
- Google presenta dos funciones seguridad para Andro...
- OPNsense: un router y firewall gratuito
- El SSD más rápido del mundo con 60 TB con una velo...
- Guía de compra de todas las RaspBerry Pi
- Qué es una NPU, cómo funciona y por qué es importa...
- El peligro de los dominio .zip
- AMD despedirá al 4 % de su plantilla para centrars...
- Informe dark web de Google
- Apple Maps sin conexión: cómo descargar mapas y us...
- Hachazos y amputaciones por el Wifi: violenta trif...
- VMware Workstation y Fusion ahora son gratis
- Aprovechan el calor de la PS5 para mantener la piz...
- Guía compra AMD Ryzen 3, Ryzen 5, Ryzen 7 y Ryzen 9
- 50 cosas que puedes pedirle a Alexa y no conocías
- Mover archivos más rápido en Windows con "Enviar a"
- La Comisión Europea pide a Apple que elimine el ge...
- Grabar pantalla en macOS
- Apple presenta Share Item Location, la función par...
- Microsoft cambiará actualizaciones de Windows para...
- D-Link no solucionará una vulnerabilidad crítica q...
- Polvo cerámico mejora hasta un 72% el rendimiento ...
- Concatenación de ficheros comprimidos para infecta...
- Filtran datos de empleados de Amazon, McDonald's, ...
- El código IUA escrito en la roseta de fibra óptica...
- Fibra luminosa, descubierta por accidente, podría ...
- Canadá prohíbe el uso de TikTok
- Google tumbó la web de este matrimonio por hacerle...
- Visualizar con Grafana los eventos del IDS/IPS Sur...
- China está usando la IA de Meta para fines militares
- Multa de 85 millones a Telefónica en Estados Unido...
- Vulnerabilidad API de la web de Kia permitió a ata...
- Google revela el primer fallo de seguridad descubi...
- La IA llega a Paint y Notepad en Windows 11
- Alemania redacta una ley para proteger a los inves...
- Microsoft ralentizó el Panel de Control de Windows...
- Guías Equivalencias de procesadores Intel y AMD [G...
- Roban 15 mil credenciales en Git y hay 10 mil repo...
- Publican información del creador del infostealer "...
- Vulnerabilidad RCE en MS SharePoint explotada acti...
- Panel de Control Grafana para el WAF de Apache-Ngi...
- Cómo visualizar los registros de Apache/Nginx en m...
- ► septiembre (Total: 50 )
-
▼
noviembre
(Total:
67
)
-
►
2023
(Total:
710
)
- ► septiembre (Total: 65 )
-
►
2022
(Total:
967
)
- ► septiembre (Total: 72 )
-
►
2021
(Total:
730
)
- ► septiembre (Total: 56 )
-
►
2020
(Total:
212
)
- ► septiembre (Total: 21 )
-
►
2019
(Total:
102
)
- ► septiembre (Total: 14 )
-
►
2017
(Total:
231
)
- ► septiembre (Total: 16 )
-
►
2016
(Total:
266
)
- ► septiembre (Total: 38 )
-
►
2015
(Total:
445
)
- ► septiembre (Total: 47 )
-
►
2014
(Total:
185
)
- ► septiembre (Total: 18 )
-
►
2013
(Total:
100
)
- ► septiembre (Total: 3 )
-
►
2011
(Total:
7
)
- ► septiembre (Total: 1 )
Blogroll
Etiquetas
Entradas populares
-
Después de ver qué es una vCPU y la diferencia entre núcleos (cores) e hilos en los procesadores, pasamos a explicar toda la nomenclatura d...
-
En el panorama en constante evolución de la seguridad de redes, OpnSense se ha convertido en una formidable solución de firewall. Nacido de...
-
Pese a que Gemini ofrece multitudes de opciones, recientemente, se ha dado a conocer una situación fuera de lo común. Hace unos días, un es...
Panel de Control Grafana para el WAF de Apache-Nginx ModSecurity OWASP (GUI)
Mod security es uno de los mejores WAF's (firewall para aplicaciones web) que existen, pero carece de modo gráfico lo que dificulta visualizar fácilmente los falsos positivos y las reglas aplicadas. Mediante el registro (log) en formato JSON podemos visualizar de forma gráfica todos los eventos gracias a Grafana.
ModSecurity, el WAF más extendido en la actualidad, implementa las reglas de seguridad de OWASP, Open Web Application Security Project, un proyecto de código abierto dedicado a determinar y combatir las causas que hacen que el software sea inseguro, ofreciendo protección genérica para cualquier aplicación en las siguientes categorías de ataques, entre otras:
- Protección HTTP – detectando anomalías y violaciones del protocolo HTTP.
- Listas negras en tiempo real – utilizando bases de datos de reputación de terceros.
- Ataques de denegación de servicio (DoS, DDoS) – protección frente a ataques de HTTP Flooding y Slow HTTP DoS.
- Ataques genéricos de aplicación – detectando vulnerabilidades comunes en las aplicaciones web.
- Detección de bots, crawlers, scanners y otros agentes de actividad sospechosa.
- Integración con Antivirus para escanear la subida de archivos a través de la aplicación.
- Protección frente a malware y troyanos.
- Identificación de defectos de aplicación · alertando de errores de configuración en aplicación o de cumplimiento de estándares.
Falsos positivos y ModSecurity WAF
Es inevitable, se producen falsos positivos cuando se usa un WAF. No es algo que afecte únicamente a ModSecurity.
La eficacia de un WAF depende del valor y aplicación de sus reglas de seguridad, al tratarse de reglas que por naturaleza son «genéricas» o «comunes» es posible que se produzcan falsos positivos en su aplicación dependiendo del escenario de cada aplicación web.
Todos los firewall de aplicaciones web van a generar falsos positivos de vez en cuando, especialmente en el despliegue inicial, actualizaciones de reglas de seguridad o actualizaciones en la aplicación web.
Supervisar, solucionar, implementar y comprobar nuevas reglas para
gestionar los falsos positivos es muy importante.
Una de las pocas herramientas que permite visualizar es un script en Python llamado modsecurity-parser:
Para poder visualizar los registros haremos uso de Loki y Promtail, para luego visualizarlos con Grafana:
La plantilla JSON de Grafana para ModSecurity WAF OWASP CRS Log for Apache/NGINX está disponible en:
La instalación de Loki y Promtail está disponible en otra entrada del blog así como añadir el datasource de Loki a Grafana.
Configuración Loki (/etc/loki/config.yml)
# This is a complete configuration to deploy Loki backed by the filesystem.
# The index will be shipped to the storage via tsdb-shipper.
auth_enabled: false
server:
http_listen_port: 3100
grpc_server_max_recv_msg_size: 104857600 # 100 Mb
grpc_server_max_send_msg_size: 104857600 # 100 Mb
ingester:
chunk_encoding: snappy
ingester_client:
grpc_client_config:
max_recv_msg_size: 104857600 # 100 Mb
max_send_msg_size: 104857600 # 100 Mb
querier:
max_concurrent: 8
common:
ring:
instance_addr: 127.0.0.1
kvstore:
store: inmemory
replication_factor: 1
path_prefix: /var/lib/loki
#new
query_range:
parallelise_shardable_queries: true
cache_results: true
results_cache:
cache:
embedded_cache:
enabled: true
max_size_mb: 100
schema_config:
configs:
- from: 2024-10-28
store: tsdb
object_store: filesystem
schema: v13
index:
prefix: index_
period: 24h
storage_config:
filesystem:
directory: /var/lib/loki/chunks
limits_config:
reject_old_samples: true
reject_old_samples_max_age: 168h
retention_period: 360h
max_query_series: 100000
max_query_parallelism: 24
split_queries_by_interval: 15m
max_global_streams_per_user: 100000
per_stream_rate_limit: "3MB"
per_stream_rate_limit_burst: "15MB"
Configuración de Promtail (/etc/promtail/config.yml)
server:
http_listen_port: 9080
grpc_listen_port: 0
positions:
filename: /tmp/positions.yaml
clients:
- url: http://localhost:3100/loki/api/v1/push
scrape_configs:
# Modsecurity Log
- job_name: modsec
pipeline_stages:
- tenant:
value: sysmid-sensitive
- json:
expressions:
request:
source: transaction
- json:
expressions:
headers:
source: request
- json:
expressions:
Host:
source: headers
- labels:
Host: Host
static_configs:
- targets:
- localhost
labels:
job: modsec
__path__: /var/log/modsec/modsec_audit.log
Configuración ModSecurity (apache o Nginx):
SecAuditEngine RelevantOnly
SecAuditLogRelevantStatus "^(?:5|4(?!04))"
SecAuditLogParts ABFHJKZ
SecAuditLogType Serial
SecAuditLogFormat JSON
SecAuditLog /var/log/modsec/modsec_audit.log
SecAuditLogParts:
Section | Description |
---|---|
A | Audit log header (mandatory) |
B | Request headers |
C | Request body |
D | Reserved |
E | Response body |
F | Response headers |
G | Reserved |
H | Audit log trailer, which contains additional data |
I | Compact request body alternative (to part C), which excludes files |
J | Information on uploaded files |
K | Contains a list of all rules that matched for the transaction |
Z | Final boundary (mandatory) |
Fuentes:
https://portfoliodb.hslu.ch/files/fd545d6d-acab-442a-9254-c842ddacf0c1
0 comentarios :
Publicar un comentario
Los comentarios pueden ser revisados en cualquier momento por los moderadores.
Serán publicados aquellos que cumplan las siguientes condiciones:
- Comentario acorde al contenido del post.
- Prohibido mensajes de tipo SPAM.
- Evite incluir links innecesarios en su comentario.
- Contenidos ofensivos, amenazas e insultos no serán permitidos.
Debe saber que los comentarios de los lectores no reflejan necesariamente la opinión del STAFF.