Chiarimenti Escape

di il
7 risposte

Chiarimenti Escape

Salve a tutti,

Volevo chiedere a voi utenti del forum un chiarimento riguardante il concetto di : "Escape dei dati ricevuti dal form"

Documentandomi online ho capito che e' una tecnica non elevata per tentare di evitare l'sql injection.

Qualcuno di voi sa spiegarmi in cosa consiste questa tecnica?

Grazie

7 Risposte

  • Re: Chiarimenti Escape

    Ciao, SQL Injection è una tecnica che consente di manipolare le query eseguite da un' applicazione (in genere capita su quelle web) sfruttando la vulnerabilità di form web che passano a db i dati cos'ì come gli vengono immessi.
    Questo capita in genere su applicazioni sviluppate da sviluppatori junior e altri che si credono senior....

    Comunque sia il concetto è che i dati vanno validati prima di essere passati a una query:
    - Se ci si aspetta un dato numerico si deve controllare che lo sia davvero, ovvero bisogna controllare il tipo di dato passato e il formato (per questo ci sono le regexp)
    - Si devono fare i replace degli apici raddoppiandoli e gestire l'escape dei caratteri pericolosi

    La migliore soluzione è usare query parametriche o stored procedure.
    Classicamente le SQL Injection funzionano su query contruite tramite concatenazione di stringhe e valori dei campi di input (su cui non è stata fatta la validazione di cui sopra)
  • Re: Chiarimenti Escape

    Grazie della risposta toki

    Quando dici : "gestire l'escape dei caratteri pericolosi" cosa intendi?
  • Re: Chiarimenti Escape

    mydb ha scritto:


    Grazie della risposta toki

    Quando dici : "gestire l'escape dei caratteri pericolosi" cosa intendi?
    Basta semplicemente usare i Command con i Parmetri (ed è su questo che ti devi documentare bene) ed automaticamente ti sollevi da qualsiasi altro problema.

    Ogni altra strada è a rischio.

    Una piaga chiamata SQL Injection
    http://msdn.microsoft.com/it-it/library/cc185099.asp

    Query parametriche (Command)
    http://en.wikipedia.org/wiki/SQL_injection#Parameterized_statements

    SQL Injection
    http://it.wikipedia.org/wiki/SQL_injectio

    Tecniche: SQL Injection
    http://sicurezza.html.it/articoli/leggi/973/tecniche-sql-injection/
  • Re: Chiarimenti Escape

    Grazie per i link riguardanti l'sql injection.

    un po lo conoscevo ma l'ho letti volentieri.

    Sul web ho letto la seguente frase riguardante l'escape :
    l'escape, ovvero l'inserimento di un backslash, appena prima di un ' (apice singolo), " (apice doppio), \ (backslash)

    In che modo questo mi aiuterebbe da attacchi di sql injection?
  • Re: Chiarimenti Escape

    Up
  • Re: Chiarimenti Escape

    Ad esempio impedisce che qualcuno chiuda la stringa di una query in anticipo.
  • Re: Chiarimenti Escape

    dvaosta ha scritto:


    Ad esempio impedisce che qualcuno chiuda la stringa di una query in anticipo.
    in che modo?
Devi accedere o registrarti per scrivere nel forum
7 risposte