2013-12-19 7 views
0

Я вижу, что мой скрипт уязвим для XSS, я новичок в PHP, поэтому я действительно понятия не имею, на что я должен смотреть. Вот все коды, которые я использую:Защита от XSS

<?php 
$host = $_SERVER['HTTP_HOST']; 
$map = opendir(gif); 
$m = 0; 
while(false !=($file = readdir($map))){ 
if($file != "." && $file != ".."){ 
$gif[$m]= $file; 
$m++; 
} 
} 
$random_gif=rand(0,count($gif)-1); 
?> 

&

<html> 
<head> 
    <meta http-equiv = "Content-Type" content = "text/html; charset=UTF-8"> 
    <title><?php echo $_GET['gif']; ?> - Xanu</title> 
</head> 
<body><center> 
<object width="650" height="650"> 
<embed src="gif/<?php echo $_GET['gif']; ?>" width="640" height="480"></embed> 
<br><b><font face="Arial"> 
     <font size="10"><?php echo $_GET['gif']; ?></font><br><br> 
     Link naar de bullshit die hier boven staat?<br> 
     <input type="text" size="55" name="giflink" value="http://<?php echo $host; ?  
>/file.php?gif=<?php echo $_GET['gif']; ?>"><br><br> 
<?php 
echo '<a href="http://'.$host.'/file.php?gif='.$gif[$random_gif].'">Klik hier voor  nieuwe bullshit!</a>'; 
?> 
+0

возможно дубликат [Защита от XSS-эксплоиты?] (Http://stackoverflow.com/questions/5414962/protection-against-xss-exploits) – MeNa

ответ

0

Вы посылаете $_GET['gif'] назад к пользователю, так что вы должны использовать htmlspecialchar:

<?php echo htmlspecialchar($_GET['gif'] , ENT_QUOTES); ?> 
Смежные вопросы