Tag Archives: htaccess

Htaccess: limitare l’azione di bot, spider ed exploit

Pubblicato da

Htaccess: limitare l'azione di bot, spider ed exploit

Uno dei modi più semplici per attaccare un sito realizzato con un linguaggio dinamico (ASP.NET, PHP, ecc.) è quello di scrivere URL malformati o di inoltrare molteplici richieste contemporanee.
Anche l’azione troppo “invadente” di certi spider automatici può causare problemi di accessibilità ad un sito.
I server come Apache hanno la possibilità di configurare l’accesso ad una directory tramite il file .htaccess .
Sfruttando questa caratteristica si possono impostare una serie di regole per filtrare gli accessi.

5G Blacklist è un progetto condiviso per la realizzazione di un .htaccess “definitivo” in cui siano contemplati tutti i casi per limitare l’azione di bot, spider automatici e hacker alle prime armi.
Il nome deriva dal fatto che è la quinta generazione di questo file che è un po’ come una blacklist di un firewall.
Non si tratta della soluzione contro tutti i mali ma permette di risparmiare molta banda e rintuzza gli attacchi più classici.
Il file è strutturato molto bene permettendo di personalizzare, ad esempio, l’elenco degli IP bloccati (o consentiti) oppure quello degli User-Agent (i software che manifestano la propria identità) non consentiti.
Bisogna  dire che entrambi i metodi sono soggetti a raggiro: uno spider può avere diversi IP e un User-Agent può essere simulato.

C’è poi tutta una sezione che “cura” le query string (quelle URL che al loro interno passano valori e parametri).
Il lungo lavoro della community è stato quello di filtrare le URL formate in maniera anomala facendo passare quelle corrette.
Nonostante qualche limite la validità di 5G Blacklist rimane. E’ un metodo semplice e alla portata di tutti per aumentare la sicurezza delle proprie applicazioni web.

Funziona perfettamente con WordPress.

Link: 5G Blacklist (qui la versione beta della 6G)

Piccolo vademecum al .htaccess

Pubblicato da

Piccolo vademecum al .htaccess

Chi lavora con Apache conosce benissimo l’utilità del .htaccess. Questo file serve per impostare alcuni comportamenti del server.
Qui di seguito un piccolo vademecum delle impostazioni più utilizzate

Abilitare la navigazione nella directory

Options +Indexes
## bloccare alcuni tipi di file
IndexIgnore *.wmv *.mp4 *.avi

Disabilitare la navigazione nella directory

Options All -Indexes

Disabilitare l’hotlinking (le immagini o le altre risorse prelevate dal proprio sito)

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?miodominio.com/.*$ [NC]
RewriteRule \.(gif|jpg|js|css)$ – [F]

Pagine di errore personalizzate

ErrorDocument 400 /errori/richiestaerrata.html
ErrorDocument 401 /errori/autorizzazionerichiesta.html
ErrorDocument 403 /errori/paginavietata.html
ErrorDocument 404 /errori/paginanontrovata.html
ErrorDocument 500 /errori/erroredelserver.html

Cambiare l’ordine di priorità di pagina

DirectoryIndex primapagina.htm index.htm index.php

Bloccare un utente tramite IP o dominio

order deny,allow
deny from 123.456.789.00
deny from 123.456.789.00
deny from .specificodominio.com
allow from all

Bloccare utenti provenienti da specifici siti (deve essere abilitato il modulo mod_rewrite)

RewriteEngine on
RewriteCond %{HTTP_REFERER} sitodabloccare.com [NC]
RewriteCond %{HTTP_REFERER} sitodabloccare2.com [NC]
RewriteRule .* – [F]

Bloccare specifici bot di siti (deve essere abilitato il modulo mod_rewrite)

RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} ^botricerca1 [OR]
RewriteCond %{HTTP_USER_AGENT} ^botricerca2 [OR]
RewriteCond %{HTTP_USER_AGENT} ^botricerca3
RewriteRule ^(.*)$ http://www.altrosito.com/

Redirezionare la navigazione

es. Redirect 302 /unadirectory http://www.sito.com/altradirectory

permanent (301) – La risorsa è stata spostata definitivamente
temp (302) – La risorsa è stata spostata temporaneamente
seeother (303) – La risorsa è stata sostituita
gone (410) – La risorsa è stata rimossa. In questo caso l’indirizzo di destinazione non va indicato