Bonjour,

Je voudrais savoir s'il existe des scripts ou des outils qui permettent de tester les injection XSS et SQL sur ses application.

J'avais vu sur un forum des plugins Firefox 'XSS Me' et 'SQL Inject Me' que j'ai testé. Mais ils ne semblent pas vraiment fonctionner correctement: Lorsque par exemple je ne protège pas mes variables $_POST, je ne vois pas de différence, et 'XSS Me' ne trouve rien. Peut être que le navigateur (Firefox 3.6.3) y est pour quelque chose...

Je profite pour demander si mes fonctions de protection de mes variables $_POST et $_GET sont bonnes. J'appelle systématiquement ces fonctions dans toutes utilissation de ces variables. Les voici:

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
function protect_str($myvar) //Protège les chaines
{
		if (function_exists('mysql_real_escape_string'))
			{
				$myvar = mysql_real_escape_string($myvar);
			}
			else //pour version de PHP < 4.3.0 on utilise addslashes
				{
					$myvar = addslashes($myvar);
				}
        if(get_magic_quotes_gpc()) 
		{
            if(ini_get('magic_quotes_sybase')) 
				{
					$myvar = str_replace("''", "'", $myvar);
				} 
			else 
				{
					$myvar = stripslashes($myvar);
				}
        } 
	$myvar = htmlentities($myvar, ENT_QUOTES, 'ISO-8859-1');
	//$myvar = htmlspecialchars($myvar, ENT_QUOTES);
	$myvar = mysql_real_escape_string($myvar);
	return $myvar ;
}

function protect_int($myvar) //Protège les nombres entiers
{
	$myvar = sprintf('%d', $myvar);
	$myvar = intval($myvar);
	return $myvar ;
}

function protect_reel($myvar) //Protège les nombres réels
{
	$myvar = sprintf('%f', $myvar);
	$myvar = floatval($myvar);
	return $myvar ;
}
Merci pour vos réponses.