Spam Injection attack postato il 27/02/2009 10:31:36 nel forum programmazione, gdrcd, open source, hosting
In questi giorni mi sono imbattuto in un tipo di attacco che, ammetto, di non conoscere. Ossia un Spam Injection attack. Dopo aver letto dei log ho cominciato a cercare un po' su internet(stasera che sono a casa darò uno sguardo anche ai vari manuali) per vedere se vi è qualche spiegazione di questo tipo di attacco e, se devo essere sincero, ho capito ben poco. Quello che ho compreso è che una debolezza di PHP per cui si può, attraverso una form, inserendo una determinata sequenza di caratteri inserire un header di una mail e di conseguenza generare l'exploit.
Ho capito male? Ho capito bene?
C'è qualcuno che saprebbe approfondirmi il problema? Chiarirmi l'attacco, come viene effettuato e magari in quale modo prevenire? :)
Ed, in questo caso, chiarirlo anche ad altri che come me sono totalmente ignoranti di questo argomento :D
Grasie in anticipo a chi mi chiarirà le idee
nb: faccio presente che non è un bombardamento di Mail ma proprio l'inserimento di un messaggio dentro ad una form che, lato php, NON usa la funzione per l'invio di mail =P
ps: ovviamente i dati verranno filtrati togliendo i backslash generati da eventuali magic_quote e poi rimettendoli con la funzione mysql_real_escape_string con una aggiunta di un preg_replace del carattere @ che la funzione precedente non considera :D
Pagine → 1
27/02/2009 10:39:17
http://it.wikipedia.org/wiki/Cross-site_scripting ↗
27/02/2009 10:43:45 e modificato da rhllor il 27/02/2009 11:08:11
Mi ero dimenticato:
Ovviamente prima di essere stampato a video viene anche rimossa la possibilità di inserimento di codice html con la classica funzione htmlspecialchars() =P
Provo a sostituirla con htmlentities con clausola entquotes va :)
27/02/2009 16:09:39 e modificato da rhllor il 27/02/2009 16:42:01
Ok, gira che ti rigira son riuscito a capire, più o meno, l'argomento e trattarlo. Ovviamente se qualcuno ne capisce di più è invitato a discutere e correggere eventuali miei errori o imprecisioni.
Il problema, generalmente, ricade sui form utilizzati per l'invio di mail. Utilizzando i caratteri di fine riga ( r n ) è possibile generare degli Header/Parametri aggiuntivi a quelli che noi abbiamo settato alle nostre email. Anche partendo dalle variabili che verranno utilizzate per inserire una il destinatario o il testo della mail.
La funzione mail()http://it.php.net/manual/it/function.mail.php ↗ non si preoccupa di controllare i dati passati ma si limita ad assemblarli per poi spedirli.
Poniamo ad esempio di avere una formmail che richiede tre parametri:
Email Destinatario, Titolo, Testo.
All'interno del parametro titolo potrei inserire un testo del genere:
"invio mail r n
Bcc: pippo@topolonia.it; pluto@topolonia.it; paperino@topolonia.it"
Questo generebbe l'invio della mail non al solo destinatario ma, anche, alle tre mail messe in copia nascosta in quanto abbiamo appena aggiunto un parametro in più alla mail.
Come risolvere questo problema:
Innanzitutto dobbiamo filtrare tutte e tre i parametri.
Per quanto riguarda il parametro della mail possiamo utilizzare il seguente controllo
Discussione seguita da
Pagine → 1
Rispondi alla Discussione Aggiungi ai Preferiti Inoltra Discussione Forum Programmazione, GDRCD, Open Source, Hosting Elenco Forum
Hogwarts Express - Harry Potter GDR Forum: 🦉 Gazzetta del Castello – Speciale nomine!
Nyx Insight - Project S.E.T.: Aggiornamenti Tryouts
Storie di Agarthi → Un Varco si apre davanti a te, un mondo tra i mondi è a portata di mano. Lasciati alle spalle le certezze, inizia l'avventura!
Sea of Conquest: Vi presento Fung! 🐼
Hero Wars: Guadagnare Catalysts nella Totem Fusion
Star Trek Horizon: Questlog: Il mondo fantasma
enigmatrix ha recensito Cleveland City
World of Warship → MMO gratuito con frenetiche battaglie navali ambientate nel ventesimo secolo. Salpa con la tua nave ed affronta i nemici!
I dati del generatore di rank sono stati aggiornati!
Il gestore di Exclusive Villa GdR ha risposto alla recensione di hhhh
enor_staff ha risposto alla discussione: Eroi di Enor
onestamente ha recensito Cleveland City
Dark Genesis → Ascendi al cielo in Dark Genesis! Raduna potenti semidei, costruisci il tuo impero volante e scontrati in battaglie divine!
Sea of Conquest: Nuovo Eroe: Alonso, la Lama d'Ombra!
Hero Wars: Lara Croft è ora disponibile per il preordine!
La Tana del Ladro: Ser Gnic e Lady Gnac
Le Cronache di Raja Dunia: Fiera Maggiore - Domogt Aral
Entropia Universe → Lascia che il tuo avatar esplori nuovi mondi e viaggi tra i pianeti in questo stupendo MmoRpg Sci-Fi Free to Play!
Niubbo Armageddon - Il niubbo, in un gdr online, può essere considerato un Armageddon. Scopriamo come...
Caratteristiche Gdr - Le caratteristiche dei giochi di ruolo online: è previsto il pvp? E la resurgo come viene gestita? Vediamo le statistiche!
Glossario - Non conosci un termine utilizzato in un gioco di ruolo online? Cercalo nel nostro glossario!
eXtremelot - Leggi la nostra recensione di eXtremelot... il più famoso GDR italiano!
New Old Tale - Intervista ai gestori del gioco di ruolo via chat ad ambientazione manga New Old Tale Magi Parallel Universe
L'Isola di Mon - Recensione di uno dei primi giochi di ruolo online fantasy in Italia
The Young Riders Italia - Intervista alla gestione del play by email western The Young Riders Italia
Implicazioni Tecnologiche - In questa tesi si parla di implicazioni scientifiche e tecnologiche nella pratica dei giochi di ruolo