Forstår stadig nada men hvad gør de, og hvordan forhindre man det?
Stol aldrig på dine brugere. Alt der kommer fra brugerne skal ses som mulige angreb.
Inden en bruger leveret parameter bruges i en databaseforespørgsel skal den igennem mysql_real_escape_string():
$sql = "SELECT * FROM users WHERE id='" . mysql_real_escape_string($_REQUEST['userid']) . "'";
Inden du inkluderer en fil baseret på bruger leveret indput skal du tjekke, om det er en legal streng:
$action_to_perform = isset($_REQUEST['action']) ? $_REQUEST['action'] : "default";
$action_files['default'] = "default.php";
$action_files['delete_user'] = "deluser.php";
if (!isset($action_files[$action_to_perform])) {
$action_to_perform = "default";
}
include($action_files[$action_to_perform]);
...maaaange ting man skal tage højde for. Læs tykke bøger om det, men start her:
http://www.owasp.org