SQL injectie is een vorm van netwerkaanval dat " injecteren " code omvat in een database in een poging om de database query programma dwingen een fout terug en geeft de injector wat informatie over zowel de databank en de informatie daarin . Het kan worden uitgevoerd vanaf elke webpagina die fungeert als een poort naar een onveilige databank en niet zijn vragen ontsmetten. Instructies 1 Zorg ervoor dat u het type ingang nodig bij het schrijven van uw SQL-query code opgeven . De meeste ontwikkelomgevingen toestaan om " string" opgeeft , " integer" of " date " . Bijvoorbeeld , wordt de URL http://mysite.com/listauthordetails.aspx?user_id=1234 Muziek van de database uitgelegd als SELECT voornaam , achternaam FROM gebruikers WHERE user_id = '1234 ' Deze query kan worden herschreven om Dim ID als String = Request.QueryString ( " ID " ) Dim cmd als nieuwe SqlCommand ( " SELECT user_id FROM gebruikers WHERE user_id = @ user_id " ) Dim param = new SqlParameter ( " user_id " , SqlDbType.VarChar ) param.Value cmd = ID . Parameters.Add ( param ) op Deze code voorkomt dat aanvullende informatie wordt toegevoegd aan het einde van de SQL-query , en geeft alleen het resultaat van de user_id aanvraag. kopen van 2 Gebruik de . htaccess bestand aan onwettige verzoeken te blokkeren voordat ze worden doorgegeven aan de database , met behulp van de RewriteCond ( ) commando . Bijvoorbeeld , om een script probeert om een REQUEST variabele wijzigen blokkeren , gebruikt u de lijn " RewriteCond % { } QUERY_STRING _REQUEST ( = | \\ [ | \\ % [ 0 - 9A - Z ] { 0,2 } ) " in je htaccess . bestand . 3 Test uw SQL-query code voordat u het in live- dienst op het web . Dit is waarschijnlijk het belangrijkste wat je kunt doen , en moet elke keer dat u uw site te updaten worden gedaan .
|