Eine bestehende, eventuell komplexere Website nachträglich vor Cross-Site-Scripting-Attacken (XSS) zur sichern, kann sich als sehr aufwändig erweisen. Mit diesem PHP-Skript, dass bei jedem Aufruf der Website vor allen anderen Funktionen ausgeführt werden sollte, lassen sich die meisten Angriffsszenarien entschärfen.
function xss_protect($string) { // nur Strings prüfen if(!is_string($string)) return $string; // eventuelle Kodierung berücksichtigen $string=urldecode($string); // Ausführbaren Code entfernen $string=strip_tags($string); $string=htmlspecialchars($string); $string=filter_var($string, FILTER_SANITIZE_STRING); return $string; } if(is_array($_GET)) $_GET = array_map("xss_protect", $_GET); if(is_array($_POST)) $_POST = array_map("xss_protect", $_POST); if(is_array($_REQUEST)) $_REQUEST = array_map("xss_protect", $_REQUEST); $_SERVER['REQUEST_URI'] = array_map("xss_protect", $_SERVER['REQUEST_URI']); $_SERVER['REDIRECT_QUERY_STRING'] = array_map("xss_protect", $_SERVER['REDIRECT_QUERY_STRING']); $_SERVER['QUERY_STRING'] = array_map("xss_protect", $_SERVER['QUERY_STRING']);