Введение

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