Il server SQL sp_executesql stored procedure esegue le istruzioni SQL dinamiche create in un'applicazione. SQL injection è un hack che permette agli utenti di accedere al database SQL . Utilizzare le stored procedure sp_executesql insieme con la funzione "Sostituisci " per sostituire il carattere apice singolo , che viene utilizzato per eseguire codice dannoso sul vostro server . Istruzioni
1
Fare clic sul pulsante di Windows "Start " e selezionare " Tutti i programmi ". Clicca su " SQL Server", quindi fare clic su " SQL Server Management Studio " per aprire il software .
2
Inserisci il tuo nome utente e password al server SQL schermata di accesso per accedere ai database del server . Fare clic su un database che si desidera eseguire una query e selezionare " Nuova query " per aprire l'editor .
3
creare una query SQL dinamico . Il seguente codice crea una query dinamica che contiene citazioni all'interno del commento :
dichiarare @ query come nvarchar ( 500) SET @ query = ' select nome da parte dei clienti in cui signupdate = 1/1/2011 '' '''
in questo esempio , un hacker potrebbe inserire citazioni nella clausola " dove" , il che provoca errori nella query SQL .
4
Utilizzare la stored procedure sp_executesql con la funzione Sostituisci per evitare di SQL injection . Digitare il seguente codice nella all'editor:
sp_executesql Replace ( @ query , ' \\ '' , '''' ) per
Il codice sostituisce ogni singola citazione , con un doppio apice , che elimina la possibilità di SQL injection .
5 Premere il tasto F5 per eseguire l'istruzione . Il SQL esegue e dei risultati della visualizzazione query nel pannello dei risultati .