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 Segui Discussione Inoltra Discussione Forum Programmazione, GDRCD, Open Source, Hosting Elenco Forum
Il gestore di Crystal Tokyo ha risposto alla recensione di stefy90
neropallido ha recensito Undead
New Orleans → La Città dai Mille Volti: Crime, Feste, Mistero, Voodoo, Natura Incontaminata, Fama, Grattacieli, Luci Splendenti e Ombre Profonde.
RAID Shadow Legends: Ma quanto è fastidioso Phrygius? 🧌
Enlisted: Fronte dell'Estremo Oriente
Feudera: DEVBLOG #2 - Aggiornamenti circa la #0.5
I dati del generatore di rank sono stati aggiornati!
Enlisted → Guida la tua squadra di soldati in combattimenti su larga scala, con fanteria, veicoli corazzati e aerei della IIa Guerra Mondiale!
New Orleans: I Regali di Babbo Grinch - La raccolta Ticket!
aver ha recensito Unwritten Destinies GDR
Ex Gratia GDR: Apriamo i battenti!
Storie di Agarthi: La Mano Nera si stringe attorno alla Città
World of Warship → MMO gratuito con frenetiche battaglie navali ambientate nel ventesimo secolo. Salpa con la tua nave ed affronta i nemici!
AlterEgo: Il Labirinto (Quest)
The Line: Reboot 4 Snowlight Village
Hero Wars: Il Winterfest è proprio dietro l'angolo ❄️🎁
Seconda Era - Le Terre Libere: La Caduta di Fanon
CRSED: F.O.A.D. → Brutale sparatutto MMO in cui vince l'ultimo giocatore che resta in vita! Il giocatore sarà accompagnato da armi realistiche e magie!
