Neuigkeiten:

still alive...

Hauptmenü

Checken der Eingaben in die Datenbank

Begonnen von k00ni, 11. März 2007, 13:14:16

Vorheriges Thema - Nächstes Thema

k00ni

Hallo,
was sollte man alles für Funktionen über eine Variable rutschen lassen, welche in einem SQL-Query verwendet wird.
Folgendes habe ich mir bereits überlegt:
- html blocken
- SQL-Sonderzeichen, wie einfache und doppelte Anführungsstriche, Semikolon blocken
- Wörter wie SELECT, FROM, WHERE und das \"=\" blocken
Sollte eine Variable diese enthalten bricht entweder die Routine ab oder die Zeichen werden auskommentiert.
Gedanken dazu? Was kann man noch einbauen? Gibt es sowas bereits als Implementierung in einem der pScripte?

k00ni

So habe aus einem alten Skript von mir folgende Funktion ausgekramt
 

function  check_variable_status ($variable_contents)
{  
$break = false;
for ($i=0; $i{
    if (strpos ($variable_contents [$i], \"\\\"\") OR
        strpos ($variable_contents [$i], \"\'\") OR
        strpos ($variable_contents [$i], \"=\") OR
        strpos ($variable_contents [$i], \"<\") OR
        strpos ($variable_contents [$i], \",\") OR
        strpos ($variable_contents [$i], \";\"))
   {
          $break = true;
          break;                
   }
}
return $break;    
}

 
 
Sie erkennt sowohl HTML-Tags, als auch SQL-Statements.


k00ni

Danke, statt zu blocken, maskiert man einfach, auch nicht schlecht. Hab zu lange C# gemacht, kenne fast keine PHP-Funktionen mehr  :ugly:

all your base are belong to us