Ein Kollege von mir, welcher sich neuerdings mit PHP auseinandersetzt, suchte sich ein SQL Injection Script. Da hab ich ihn auf das Sciprt in der Tutorial-Section von Basti aufmerksam gemacht. Da sagt der mir, das funnktioniert nicht.
Dann hab ich das Ding mal seber angeschaut. Wenn man einen einzelnen Begriff beim eregi() angibt funktionierts, über die Arrayvariable aber nicht...:S
- Code: Alles auswählen
function checkString($string)
{
$check = array();
$check[] = "SELECT";
$check[] = "DROP";
$check[] = "INSERT";
$check[] = "TABLE";
$check[] = "CREATE";
$check[] = "DELETE";
$check[] = "UPDATE";
$check[] = "WHILE";
$check[] = "#";
$check[] = "=";
$check[] = "BETWEEN";
$check[] = "OR";
$check[] = "AND";
$check[] = ":";
$check[] = "//";
$check[] = ";";
$check[] = "'";
$check[] = "-";
$check[] = """;
$freigabe=true;
foreach ($check as $array)
{
if(eregi($check, $string)) // ich glaube hier liegt das Problem.. oder steh ich auf dem Schlauch?
$freigabe=false;
}
return $freigabe;
}
Steh ich jetzt einfach total auf dem Schlauch, den ich weiss nicht wie ich ihm sonst helfen kann..