Введение
Taint - расширение, используемое для определения кодов XSS (испорченные или подозрительные строки, tainted strings). Также может использоваться для выявления попыток использования SQL-инъекций, shell-инъекций и т.д.
Если расширение включено, то когда вы передаете подозрительную строку (из $_GET, $_POST или $_COOKIE) некоторым функциям, будет выдано предупреждение.
Пример #1 Пример использования Taint()
<?php
$a = trim($_GET['a']);
$file_name = '/tmp' . $a;
$output = "Welcome, {$a} !!!";
$var = "output";
$sql = "Select * from " . $a;
$sql .= "ooxx";
echo $output;
print $$var;
include($file_name);
mysql_query($sql);
?>
Результатом выполнения данного примера будет что-то подобное:
Warning: main() [function.echo]: Attempt to echo a string that might be tainted Warning: main() [function.echo]: Attempt to print a string that might be tainted Warning: include() [function.include]: File path contains data that might be tainted Warning: mysql_query() [function.mysql-query]: SQL statement contains data that might be tainted