Bonjour a tous,
j'ai fait un petit programme en php pour un forum entre amis, mais on ma dit que mes variables sont apparemment mal protégées, donc que j'ai une faille de sécurité de type XSS, voilà une idée du code que je commence a faire.

l'index :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<html>
 
	<head>
		<title>Forum entre amis</title>
	</head>
 
	<body>
    		<center>Forum</center>
		<br />
		<ul>
		 <br />
		 <script> document.cookie = "aaaa = bbbb";</script>
			<ul>
				<?php
@mysql_connect("localhost", "root") or die("Impossible de se connecter à la base de données");
					@mysql_select_db("forum") or die("Table inexistante");
 
					$nombre = mysql_query("SELECT * FROM message;");
 
					if (mysql_numrows($nombre) > 0) 
 
for ($Compteur=0 ; $Compteur<mysql_numrows($nombre) ; $Compteur++)
							{
$pseudo = mysql_result($nombre , $Compteur , "pseudo");
								echo "- ".$pseudo."<br>";
$message = mysql_result($nombre , $Compteur , "message");
echo "mon message: ".$message."<br><br><br><br><br><br>";
							}
 
					else echo "Aucun message pour le moment<br>";
 
					mysql_close();
				?>
 
			</ul> <br />
 
			Pour ajouter un commentaire  <a href="list.php">cliquer ici</a>
 
		</ul>
	</body>
 
</html>
La partie inscription :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<html>
	<head> 
		<title>Forum entre amis</title>
	</head>
 
	<body>
		<br />
		<ul>
			<li> <br /> 
			<div align="center"> 
				<form method="POST" action="./inscription.php"> 
Pseudo : <input type="text" name="pseudo" value="Ecrir votre pseuod ici"> <br />
Message: <input type="text" name="message" value="Ecrir votre message ici"> <br /><br /><br />
						<input type="submit" name="envoi" value="Enregistrer !">
				</form>
			</div>
			</li>			
			<br /> <br />			
		</ul>
	</body>
</html>
et le fait de cliquer sur l'enregistrement :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
<!-- inscription.php - Inscription des pseudos et messages -->
 
<?php
	$pseudo = $_POST["pseudo"];
	$message = $_POST["message"];
	@mysql_connect("localhost", "root") or die("Impossible de se connecter à la base de données");
	@mysql_select_db("forum") or die("Table inexistante");
$nombre = mysql_query("INSERT INTO message values('$pseudo','$message');");
	mysql_close();
	header("Location: ./index.php");
 
?>
j'aimerai que quelque m'indique en quoi mes variables sont mal protégées.

Merci à l'avance pour votre aide