F-Secure: migliaia di siti infettati tramite SQL injection
di Fabio Gozzo, pubblicata il 29 Aprile 2008, alle 12:12 nel canale Sicurezza
Secondo una ricerca della software house finlandese, sono oltre 500.000 i siti infettati tramite SQL injection. La causa principale delle infezioni? la scarsa qualità del codice sorgente dei siti
Commenti (43)
Gli autori dei commenti, e non la redazione, sono responsabili dei contenuti da loro inseriti - Info
Commento # 11
di: LNdemon
pubblicato il 29 Aprile 2008, 13:39
Originariamente inviato da: II ARROWS
LNDemon, tu sì che ne sai! 
Peccato che l'SQL injection non ha niente a che fare con l'utente ma solo tra la macchina dell'hacker e il server che ospita il sito. Se hai dei dati personali salvati sul sito, e questi vengono presi non ci puoi fare nulla. Solo denunciarli ed ottenere un risarcimento per aver reso disponibile i tuoi dati.
Peccato che l'SQL injection non ha niente a che fare con l'utente ma solo tra la macchina dell'hacker e il server che ospita il sito. Se hai dei dati personali salvati sul sito, e questi vengono presi non ci puoi fare nulla. Solo denunciarli ed ottenere un risarcimento per aver reso disponibile i tuoi dati.
L'SQL Injection non ha scopi. Se riesco ad usare l'sql injection su un sito e quindi modificare a mio piacimento una query sql, posso fargli fare di tutto, di certo non solo farmi mostrare i dati degli utenti.
Nel post di prima non gli ho detto: si, puoi beccarti i trojan con le sql injection
Commento # 12
di: tomminno
pubblicato il 29 Aprile 2008, 14:30
Originariamente inviato da: LNdemon
esisteranno sempre fin quando ci sarà gente che farà siti senza alcuna competenza o esperienza in programmazione
E' proprio quello lo scopo di ASP.NET essere così facile da consentire a tutti di farsi il proprio sito.
Basta prendere i controlli e trascinarli niente di più facile.
Chi ha bisogno di conoscere HTML e Javascript?
SQL? Fa tutto ASP.NET.
DotNetNuke ad esempio è vulnerabile all'SQL-Injection su ogni textbox, ed è banale fare CrossSiteScripting.
Commento # 13
di: Kralizek
pubblicato il 29 Aprile 2008, 14:50
tomminno...
da sviluppatore ASP.NET mi dispiace ma devo dissentire.
qualunque sviluppatore serio di tale piattaforma (ma che usi in genere ADO.NET) sa che deve usare i DbParameter per inserire i parametri.
Inoltre, soprattutto giocando al "clicca e trascina" con ASP.NET, ovvero realizzare pagine secondo il paradigma dichiarativo cioè l'uso di DataSource, vengono utilizzati correttamente i parametri.
Piuttosto, un linguaggio come il PHP non ha alcuna struttura nativa per controllare l'immissione di parametri, con buona pace dei vari prodotti, anche open source, che stanno in giro.
da sviluppatore ASP.NET mi dispiace ma devo dissentire.
qualunque sviluppatore serio di tale piattaforma (ma che usi in genere ADO.NET) sa che deve usare i DbParameter per inserire i parametri.
Inoltre, soprattutto giocando al "clicca e trascina" con ASP.NET, ovvero realizzare pagine secondo il paradigma dichiarativo cioè l'uso di DataSource, vengono utilizzati correttamente i parametri.
Piuttosto, un linguaggio come il PHP non ha alcuna struttura nativa per controllare l'immissione di parametri, con buona pace dei vari prodotti, anche open source, che stanno in giro.
Commento # 14
di: _Magellano_
pubblicato il 29 Aprile 2008, 14:58
Originariamente inviato da: II ARROWS
LNDemon, tu sì che ne sai! 
Peccato che l'SQL injection non ha niente a che fare con l'utente ma solo tra la macchina dell'hacker e il server che ospita il sito. Se hai dei dati personali salvati sul sito, e questi vengono presi non ci puoi fare nulla. Solo denunciarli ed ottenere un risarcimento per aver reso disponibile i tuoi dati.
Peccato che l'SQL injection non ha niente a che fare con l'utente ma solo tra la macchina dell'hacker e il server che ospita il sito. Se hai dei dati personali salvati sul sito, e questi vengono presi non ci puoi fare nulla. Solo denunciarli ed ottenere un risarcimento per aver reso disponibile i tuoi dati.
Ancora una altra domanda sempre da ignorante ma quindi in questo caso se io mi loggo su questo sito/forum attaccato con questo sistema,l'hacker è in grado di vedere informazioni su di me utente come l'indirizzo ip o l'email con la quale sono registrato sul quel sito/forum?
Grazie e scusate la domanda che a molti può sembrare ovvia.
Commento # 15
di: !fazz
pubblicato il 29 Aprile 2008, 14:58
Originariamente inviato da: tomminno
E' proprio quello lo scopo di ASP.NET essere così facile da consentire a tutti di farsi il proprio sito.
Basta prendere i controlli e trascinarli niente di più facile.
Chi ha bisogno di conoscere HTML e Javascript?
SQL? Fa tutto ASP.NET.
Basta prendere i controlli e trascinarli niente di più facile.
Chi ha bisogno di conoscere HTML e Javascript?
SQL? Fa tutto ASP.NET.
ma come si fà ad usare un linguaggio di programmazione senza saper programmare?
ASP.NET è un linguaggio di programmazione che si avvale del framework .net
ma da li a dire che ti crea in automatico un'applicazione senza saper programmare ce ne passa di acqua sotto i ponti
Commento # 16
di: number4
pubblicato il 29 Aprile 2008, 15:45
?????
Scusate l'ignoranza ma quindi io potrei infettare facilmente un sito basato su Joomla e distruggerlo?? ma com'è possibile? non ci sono sistemi si sicurezza? e poi come fanno sti tipi ha introdurre sto SQL injection???
Scusate l'ignoranza ma quindi io potrei infettare facilmente un sito basato su Joomla e distruggerlo?? ma com'è possibile? non ci sono sistemi si sicurezza? e poi come fanno sti tipi ha introdurre sto SQL injection???
Commento # 17
di: LNdemon
pubblicato il 29 Aprile 2008, 16:08
Originariamente inviato da: tomminno
E' proprio quello lo scopo di ASP.NET essere così facile da consentire a tutti di farsi il proprio sito.
Basta prendere i controlli e trascinarli niente di più facile.
Chi ha bisogno di conoscere HTML e Javascript?
SQL? Fa tutto ASP.NET.
DotNetNuke ad esempio è vulnerabile all'SQL-Injection su ogni textbox, ed è banale fare CrossSiteScripting.
Basta prendere i controlli e trascinarli niente di più facile.
Chi ha bisogno di conoscere HTML e Javascript?
SQL? Fa tutto ASP.NET.
DotNetNuke ad esempio è vulnerabile all'SQL-Injection su ogni textbox, ed è banale fare CrossSiteScripting.
Scusami, ma da quello che hai detto, mi fa pensare che non conosci molto bene questo mondo.
Partiamo dal primo punto: ASP.NET è un linguaggio lato server mentre HTML e Javascript sono lato client. Quindi ASP.NET o meno, per sviluppare web, questi linguaggi li devi conoscere assolutamente.
Le SQL Injection vengono grazie alla porca accortezza nel scrivere query SQL, query ( domande ) che saranno volte al database cotenente ( che contiene tutti i dati del sito ) per estrapolare/modificare/inserire/cancellare dati.
ASP.NET, PHP, JAVA, C ... Per usare un database che usa l'sql come query-engine, il conoscere come costruire queste domande ti è indispensabile e, se lo fai male, ecco che una possibile conseguenza possono essere le sql-injection.
E poi, scusami un attimo, ma sarebbe alquanto scorretto che esistesse un linguaggio che faccia tutto "da solo, senza alcuna conoscenza" come dici tu.
Perchè allora non ci sarebbe più possibilità agli sviluppatori di svolgere il proprio lavoro dopo tanti anni di sacrificio ad acquisire le sue conoscenze.
Ti piacerebbe che, tutto d'un tratto, uscisse un qualcosa che faccia in modo automatico il tuo lavoro e quindi, come molti altri, non ci sarebbe più bisogno di te ?
Commento # 18
di: LNdemon
pubblicato il 29 Aprile 2008, 16:11
Originariamente inviato da: _Magellano_
Ancora una altra domanda sempre da ignorante ma quindi in questo caso se io mi loggo su questo sito/forum attaccato con questo sistema,l'hacker è in grado di vedere informazioni su di me utente come l'indirizzo ip o l'email con la quale sono registrato sul quel sito/forum?
Grazie e scusate la domanda che a molti può sembrare ovvia.
Grazie e scusate la domanda che a molti può sembrare ovvia.
Si, tutte le informazioni che inserisci nel sito e vengono salvate su database sarebbero facilmente ricavabili
Originariamente inviato da: number4
Scusate l'ignoranza ma quindi io potrei infettare facilmente un sito basato su Joomla e distruggerlo?? ma com'è possibile? non ci sono sistemi si sicurezza? e poi come fanno sti tipi ha introdurre sto SQL injection???
Beh, dipende, se Joomla è scritto in modo da permettere le injection, visto che i nomi delle tabelle di joomla sono ben note la cosa diventerebbe ancora più semplice.
In pratica basterebbe solo inserire in campi che invia informazioni via POST o GET ( Moduli web, come registrazioni etc ) di cui i dati finali vanno ad interagire col database: facendo in modo di interrompere il normale utilizzo della query e inserire istruzioni aggiuntive non previste.
Una cosa abbastanza semplice per chi conosce il diffusissimo linguaggio SQL
Commento # 19
di: tomminno
pubblicato il 29 Aprile 2008, 16:59
Originariamente inviato da: Kralizek
tomminno...
da sviluppatore ASP.NET mi dispiace ma devo dissentire.
qualunque sviluppatore serio di tale piattaforma (ma che usi in genere ADO.NET) sa che deve usare i DbParameter per inserire i parametri.
da sviluppatore ASP.NET mi dispiace ma devo dissentire.
qualunque sviluppatore serio di tale piattaforma (ma che usi in genere ADO.NET) sa che deve usare i DbParameter per inserire i parametri.
Parli degli "SqlParameter" che vengono tradotti sul database in stored temporanee che sono in grado di ammazzare le prestazioni di qualunque sito abbia più di qualche decina di visite contemporanee?
Se ti riferisci a quelli sono oggeti da evitare.
Inoltre, soprattutto giocando al "clicca e trascina" con ASP.NET, ovvero realizzare pagine secondo il paradigma dichiarativo cioè l'uso di DataSource, vengono utilizzati correttamente i parametri.
Piuttosto, un linguaggio come il PHP non ha alcuna struttura nativa per controllare l'immissione di parametri, con buona pace dei vari prodotti, anche open source, che stanno in giro.
Piuttosto, un linguaggio come il PHP non ha alcuna struttura nativa per controllare l'immissione di parametri, con buona pace dei vari prodotti, anche open source, che stanno in giro.
Chissà come mai allora in PHP con il magic_quotes_gpc (impostazione globale), ti eviti tanti dei problemi che ho riscontrato sul DotNetNuke.
Commento # 20
di: tomminno
pubblicato il 29 Aprile 2008, 17:08
Originariamente inviato da: !fazz
ma come si fà ad usare un linguaggio di programmazione senza saper programmare?
ASP.NET è un linguaggio di programmazione che si avvale del framework .net
ma da li a dire che ti crea in automatico un'applicazione senza saper programmare ce ne passa di acqua sotto i ponti
ASP.NET è un linguaggio di programmazione che si avvale del framework .net
ma da li a dire che ti crea in automatico un'applicazione senza saper programmare ce ne passa di acqua sotto i ponti
Evidentemente non hai mai avuto colleghi che affermavano che chiunque è in grado di fare lo sviluppatore web visto che basta prendere gli oggetti e trascinarli come in VB.
E comunque con le feature del .NET 2.0, dove mandi al diavolo l'archietttura three-tier per fare tutto all'interno di un controllo ASP, ci vai molto vicino a riuscire a fare tutto senza conoscere i principi base della programmazione web.












