Come installare e configurare ModSecurity con Apache su Debian/Ubuntu

Apache il web server è altamente personalizzabile e può essere configurato in diversi modi per soddisfare le tue esigenze. Esistono molti moduli di terze parti che puoi utilizzare per configurare Apache secondo le tue preferenze.

ModSecurity è un open source WAF (Firewall per applicazioni Web) nativo del server web Apache. Inizialmente era solo un modulo Apache, ma nel corso dell’anno è cresciuto fino a diventare un firewall per app Web a tutti gli effetti. Ora è supportato da Nginx e persino IIS.

ModSecurity controlla le richieste in entrata al server web rispetto a un insieme predefinito di regole. In genere, fornisce una serie di regole note come CRS (Insieme di regole fondamentali) che proteggono un sito Web da una serie di attacchi alle applicazioni Web come SQL injection, XSS e dirottamento di sessione tra gli altri exploit.

(Ti potrebbe interessare anche: 5 strumenti per scansionare un server Linux alla ricerca di malware e rootkit)

IL ModSecurity il firewall dell’applicazione costituisce parte integrante di PCIDSS conformità nella protezione dei siti da attacchi esterni. Quando il modulo è abilitato, attiva un “403 Forbidden Error” che implica semplicemente che non hai autorizzazioni sufficienti per accedere alla risorsa sul server web.

In questa guida ti mostreremo come impostare e configurare ModSecurity lavorare con Apache SU Debian E Ubuntu Linux.

Passaggio 1: installa ModSecurity su Ubuntu

Il primo passo è installare ModSecurity. Inizieremo innanzitutto aggiornando l’elenco dei pacchetti come segue:

$ sudo apt update

Successivamente, installa il file ModSecurity pacchetto insieme ad altre dipendenze e librerie.

$ sudo apt install libapache2-mod-security2
Installa ModSecurity su Ubuntu
Installa ModSecurity su Ubuntu

Successivamente, abilita il modulo.

$ sudo a2enmod security2

Quindi riavviare il server web Apache per applicare le modifiche.

$ sudo systemctl restart apache2

A questo punto, ModSecurity è installato con successo. Ora configuriamolo.

Passaggio 2: configura ModSecurity in Ubuntu

Per impostazione predefinita, ModSecurity è configurato solo per rilevare e registrare attività sospette. Dobbiamo fare un ulteriore passo avanti e configurarlo non solo per rilevare ma anche per bloccare attività sospette.

Copia, l’impostazione predefinita ModSecurity file di configurazione – consigliato modsecurity.conf – in un nuovo file come fornito nel comando seguente.

$ sudo cp /etc/modsecurity/modsecurity.conf-recommended /etc/modsecurity/modsecurity.conf

Utilizzando il tuo editor di testo preferito, apri il file

$ sudo nano /etc/modsecurity/modsecurity.conf

Individua la linea:

SecRuleEngine DetectionOnly

Impostalo su:

SecRuleEngine On
Configura ModSecurity su Ubuntu

Salvare le modifiche ed uscire dal file.

Per applicare le modifiche in Apacheriavviare il server web.

$ sudo systemctl restart apache2

Passaggio 3: Scarica il set di regole principali di OWASP ModSecurity

Il passaggio successivo è scaricare l’ultima versione OWASP ModSecurity Core Rule Set (CRS) dalla pagina GitHub.

Clona il repository git OWASP come mostrato.

$ git clone 

Navigare nella directory.

$ cd coreruleset/

Assicurati di spostare il crs-setup.conf.esempio file nella directory modsecurity e rinominarlo come crs-setup.conf.

$ sudo mv crs-setup.conf.example /etc/modsecurity/crs-setup.conf

Inoltre, sposta il file regole directory in modsecurity anche la directory.

$ sudo mv rules/ /etc/modsecurity/

Successivamente, modifica il file security2.conf file.

$ sudo nano /etc/apache2/mods-enabled/security2.conf

Assicurati che contenga le seguenti righe.

IncludeOptional /etc/modsecurity/*.conf
Include /etc/modsecurity/rules/*.conf
Configura le regole ModSecurity su Ubuntu

Quindi riavviare Apache affinché i cambiamenti persistano.

$ sudo systemctl restart apache2

Testiamo ora la nostra configurazione ModSecurity.

Passaggio 4: testare la configurazione di ModSecurity su Ubuntu

Infine, dobbiamo testarlo ModSecurity può rilevare e bloccare il traffico HTTP sospetto. Per raggiungere questo obiettivo, dobbiamo modificare il file host virtuale predefinito.

$ sudo nano /etc/apache2/sites-available/000-default.conf

Successivamente, creeremo una regola di blocco che bloccherà l’accesso a un determinato URL quando si accede da un browser web.

Aggiungi queste righe alla fine prima di ‘Host virtuale‘ tag di chiusura.

SecRuleEngine On
SecRule ARGS:testparam "@contains test" "id:254,deny,status:403,msg:'Test Successful'"

Sentiti libero di impostare il ‘id‘ E ‘msg‘ tagga qualunque valore desiderabile.

Prova ModSecurity su Ubuntu

Quindi riavviare il Apache webserver per applicare le modifiche apportate al file di configurazione dell’host virtuale.

$ sudo systemctl restart apache2

Sul tuo browser web, prova a visitare l’URL mostrato con ?testparam=test alla fine.

http://server-ip/?testparam=test

Ottieni un ‘403 Errore non consentito’ indicando che ti è stato bloccato l’accesso alla risorsa.

ModSecurity 403 Errore proibito
ModSecurity 403 Errore proibito

È possibile verificare ulteriormente che il client sia stato bloccato controllando i log degli errori come segue.

$ cat /var/log/apache2/error.log | grep “Test Successful”
Controlla i registri di Apache
Controlla i registri di Apache

Questa è la conferma che abbiamo impostato con successo ModSecurity per rilevare e bloccare il traffico indesiderato. In questa guida ti abbiamo guidato attraverso il processo di configurazione ModSecurity con Apache SU Debian/Ubuntu sistemi.

Autore

Classe Novanta3, Fondatore di TrgtKLS. Appassionato in Sec IT & Tech. Expert per l'amministrazione web server e supporto in Back-&, ottimizzazione e manutenzione di esso. • Metà Free e Metà Freelancer • [email protected]

Articoli correlati

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *