Web firewall
Come il web firewall di InfraFence assegna un punteggio a ogni visitatore dagli access log: tipi di attacco e punti, decadimento, livelli, regole di frequenza e regole personalizzate.
Ultimo aggiornamento:
Il web firewall legge gli access log dei tuoi web server, assegna un punteggio a ogni indirizzo visitatore e banna l'indirizzo sul firewall quando il punteggio sale abbastanza. Funziona con qualsiasi web server che scriva un access log, non richiede modifiche alla sua configurazione e non aggiunge latenza alle richieste.
Da dove arrivano i log
L'agente trova da solo gli access log, in questo ordine:
WEB_LOG_PATH, se impostato (in quel caso sostituisce il rilevamento);- la configurazione di nginx e Apache (
access_log,CustomLog), i virtual host di OpenLiteSpeed, i domlog di cPanel; - i container web sull'host (vedi Docker);
- i log per dominio di Plesk, ISPConfig, DirectAdmin, CyberPanel e altri, e i percorsi abituali di nginx, Apache, LiteSpeed e Caddy.
Ricontrolla ogni 5 minuti, così i nuovi siti vengono inclusi. Le richieste di file statici (CSS, JavaScript, immagini, font) non ricevono punteggio e gli indirizzi privati vengono ignorati.
Tipi di attacco e punti
| Tipo di attacco | Punti |
|---|---|
| Esecuzione di codice remoto, web shell, Shellshock, user agent di scanner | 50 |
| SQL injection, SSRF, exploit web, honeypot | 40 |
| Path traversal, header injection, brute force su WordPress o CMS | 30 |
XSS, sondaggio di .env, abuso di XML-RPC |
25 |
| Sondaggio di file di configurazione | 20 |
| Flood di 404 | 15 |
Tra gli user agent di scanner ci sono sqlmap, nikto, nmap, masscan, wpscan, gobuster, nuclei, acunetix e nessus. Il catalogo integrato completo, 109 pattern, è pubblicato con ogni release come waf-catalog.json, e la pagina Web firewall elenca ogni pattern applicato dall'agente.
Regole di frequenza
Alcuni attacchi sono una questione di volume. Queste regole aggiungono i loro punti quando un indirizzo supera la soglia entro la finestra:
| Regola | Soglia predefinita | Finestra |
|---|---|---|
| Login di WordPress | 10 | 2 minuti |
admin-ajax.php di WordPress senza sessione |
10 | 30 secondi |
| XML-RPC | 5 | 1 minuto |
| Login di Drupal, login di Joomla | 5 | 30 secondi |
| Scansione dei plugin | 5 | 5 minuti |
| Flood di 404 | 15 | 5 minuti |
Punteggio e azioni
I punteggi calano di 5 punti al minuto, così una singola richiesta strana svanisce. Il punteggio decide il livello:
| Punteggio | Livello | Cosa succede |
|---|---|---|
| 30 | observe | Segnalato come evento informativo. |
| 60 | throttle | Segnalato come warning. |
| 80 | block | Bannato sul firewall, segnalato come critico. |
| 100 | firewall ban | Bannato sul firewall, segnalato come critico. |
Un ban dura quanto indicato in Impostazioni › Agente › Durata dei ban, come un ban SSH. Un indirizzo che ModSecurity ha già segnalato non riceve un secondo punteggio.
Modificare le regole
Nella pagina Web firewall (proprietari e admin; i membri possono consultarla):
- per tipo di attacco: i Punti, una Soglia per le regole di frequenza e la modalità: Attivo, Solo rilevamento (segnalato, mai bannato) o Spento;
- Pattern integrati: disattiva i singoli pattern che causano falsi positivi;
- Regole personalizzate: un pattern di testo semplice o un'espressione regolare confrontato con l'URL, lo User-Agent o il Referer, con il punteggio del tipo di attacco che scegli. Un percorso esca con punteggio honeypot intrappola gli scanner. Le espressioni regolari usano la sintassi RE2, senza distinzione tra maiuscole e minuscole, e il campo Prova su prova un pattern prima di salvarlo.
Salva impostazioni WAF invia le modifiche; i server le applicano in pochi secondi.
Modalità monitor
Con Modalità monitor attiva, ogni tipo è in solo rilevamento: punteggi ed eventi continuano, nulla viene bannato.
Per bloccare dentro il web server, alla prima richiesta, vedi ModSecurity.
