Просмотр полной версии : обход фильтраци для xss?
народ прошу помочь с xss...
как можно вывести алерт при таком php коде?(guestbook)
PHP:
'.mysql_error() .'');
}
?>
как быть с этим?
==============================================
$message = trim(strip_tags(addslashes($message)));
$message = htmlspecialchars($message);
brain[pillow]
31.07.2010, 18:29
Никак.
"]
brain[pillow] said:
Никак.
этот код есть в тесте по xss (уровень теста 2) всего 3!
так что проблема решимая!!!
тест dvwa 1.6
Nightmarе said:
имя не фильтруется htmlspecialchars, потому в нике думаю можно писать HTML код.
А так конечно же шаманство с кодировками.
ага, это так
но в
PHP:
$name=trim(strip_tags(addslashes($name)));
тут все пробелы и скрипты удаляються...
как это можно обойти?
и еще:
в переменную $name разрешено всего 10 символов!
|qbz| said:
попробуй 'alert(1)
в $message не выйдет... там htmspecialchars мешает!
в $name я уже описал!!!
s0llo said:
и еще:
в переменную $name разрешено всего 10 символов!
В том коде, что ты привел, я не вижу, что бы он обрезался. Если ограничение стоит на форму, то редактор исходников страницы тебе в помощь. Правда, возможности внедрить код я не наблюдаю всё равно.
P.S.
dvwa пройти невозможно, на высоких уровнях имеются непроходимые задания, и судя по всему это одно из них.
[Feldmarschall]
16.08.2010, 19:12
http://raz0r.name/vulnerabilities/sql-inekcii-svyazannye-s-multibajtovymi-kodirovkami-i-addslashes/
"]
[Feldmarschall] said:
http://raz0r.name/vulnerabilities/sql-inekcii-svyazannye-s-multibajtovymi-kodirovkami-i-addslashes/
Ок, есть скрипт.
PHP:
mysql_connect('localhost','root','');
mysql_select_db('bf');
if(isset($_GET['btnSign']))
{
$message=trim($_GET['mtxMessage']);
$name=trim($_GET['txtName']);
// Sanitize message input
$message=trim(strip_tags(addslashes($message)));
$message=mysql_real_escape_string($message);
$message=htmlspecialchars($message);
// Sanitize name input
$name=trim(strip_tags(addslashes($name)));
$name=mysql_real_escape_string($name);
$query="INSERT INTO guestbook (comment,name) VALUES ( '$message','$name');";
print$query;
mysql_query($query) or die(mysql_error());
}
Удачи.
vBulletin® v3.8.14, Copyright ©2000-2026, vBulletin Solutions, Inc. Перевод: zCarot