sql >> Database teknologi >  >> RDS >> Mysql

SQL-injektioner i ADOdb og generel hjemmesidesikkerhed

SQL-injektionsangreb sker, når brugerinput er forkert kodet. Typisk er brugerinputtet nogle data, som brugeren sender med sin forespørgsel, dvs. værdier i $_GET , $_POST , $_COOKIE , $_REQUEST , eller $_SERVER arrays. Brugerinput kan dog også komme fra en række andre kilder, såsom stikkontakter, eksterne websteder, filer osv.. Derfor bør du virkelig behandle alt undtagen konstanter (som 'foobar' ) som brugerinput .

I den kode, du sendte, mysql_real_escape_string bruges til at kode (=escape) brugerinput. Koden er derfor korrekt, dvs. tillader ikke nogen SQL-injektionsangreb.

Bemærk, at det er meget nemt at glemme opkaldet til mysql_real_escape_string - og én gang er nok for en dygtig angriber! Derfor vil du måske bruge den moderne PDO med forberedte erklæringer i stedet for adodb.



  1. Hvordan kører man den samme forespørgsel på alle databaser på en instans?

  2. SQLite aggregerede funktioner

  3. PL/SQL-blokeringsproblem:Ingen data fundet fejl

  4. Uordnede resultater i SQL