[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: xss
maximka787
Все добрый вечер, вопрос в том, что у меня сайт хорошо защищен.
Все формы принимают данные в POST
На следующем скрипте они фильтруются жестко и урезаются.
insert и select * from baza where mail = '".mysql_real_escape_string($mail)."
и так ко всем переменным текстовым к числовым intval

Почему, кто знает, xSpider пишет мне про XSS и что у меня труба с сайтом будет?



Спустя 5 минут, 51 секунда (12.11.2010 - 21:00) Nikitian написал(а):
Воспользуйтесь этим
Раз уж пациента не показываете.

Спустя 1 минута, 37 секунд (12.11.2010 - 21:01) inpost написал(а):
А как насчет вывода значений? К ним применяешь: htmlspecialchars?

Спустя 3 минуты, 3 секунды (12.11.2010 - 21:05) maximka787 написал(а):
Да, применяю конечно. Я не думаю, что программа анализатор Xspider настолько глубоко залезает. Может просто это он предостережения показывает?

Спустя 4 дня, 19 часов, 2 минуты, 13 секунд (17.11.2010 - 16:07) maximka787 написал(а):
Ну как ребят? Это просто вопрос, может кто сталкивался.

Спустя 3 часа, 15 минут, 43 секунды (17.11.2010 - 19:22) fire написал(а):
Может выложишь кусок кода в котором сканер находит уязвимость ? Думаю так легче будет сказать, и не будем гадать smile.gif

Спустя 3 дня, 19 часов, 52 минуты, 38 секунд (21.11.2010 - 15:15) maximka787 написал(а):
$username = $_POST['username'];
$password = $_POST['password'];

$username = substr($username,0,30);
$password = substr($password,0,30);

$username = strip_tags($username);
$password = strip_tags($password);

//ввод в sql
$query = "insert into users values('',
'"
.mysql_real_escape_string($username)."','".mysql_real_escape_string(md5($password))."'";
или
$var = substr($var,0,10);
$query = "insert into table values('".intval($var)."' ";

ну как тут проберется код XSS? это сканер видимо напоминает про безопасность видимо.
Вывод осуществляется
$result = mysql_query("select * from users where username = '".mysql_real_escape_string($username)."'");
$row = mysql_fetch_array($result);
echo 'Ваше имя: '.htmlspecialchars(stripslashes($row['name']));
//или echo 'Ваше имя: '.htmlspecialchars($row['name']);

Спустя 7 часов, 54 минуты, 1 секунда (21.11.2010 - 23:09) maximka787 написал(а):
Я выложил код) может кто посмотреть?

Спустя 1 день, 18 часов, 49 минут, 34 секунды (23.11.2010 - 17:59) maximka787 написал(а):
мужики, подскажите, злые хацкеры тоже)

Спустя 3 часа, 1 минута, 18 секунд (23.11.2010 - 21:00) ApuktaChehov написал(а):
2 вопроса:
1. Зачем mysql_real_escape_string к md5 применять?
2. зачем stripslashes в месте с htmlspecialchars?

В этом куске кода XSS я не вижу, вы уверены, что ваш сканер ругается именно на этот кусок кода?

Покажите что он говорит.

Спустя 33 минуты, 19 секунд (23.11.2010 - 21:33) maximka787 написал(а):
1. Ну тут представлена параноидальная защита .mysql_real_escape_string(md5($password)). + 1 к безопасности smile.gif, может и не особо нужна но я приучил все данные в sql сохранять через mysql_real_escape_string.

2. И я в коде закоментил htmlspecialchars($row['name']). тут вывод правильный

Ругается именно сюда почему-то, причем ввод везде одинаковый на всех сайтах, впринципе

Спустя 22 минуты, 55 секунд (23.11.2010 - 21:56) DySprozin написал(а):
;;мужики, подскажите, злые хацкеры тоже)
— Я считал... Вы парень.
— Все так считают.
(с) TheMatrix

именно в этом участке кода XSS нет 100%, либо ты недопонял сообщение сканера, либо он ошибся (такое с ним бывает - например, он до сих пор кричит, что половина машин заражено MS03-039, хотя этой уязвимости сто лет в обед)))

Спустя 5 минут (23.11.2010 - 22:01) ApuktaChehov написал(а):
maximka787 - md5 сделает из любой строки набор бвкав и цифер, по этому шо бы туда не попало, какие бы злобные не были атаки еще более злых хацкеров, у тебя в базу все равно будут идти только букавы и цыферы.

Спустя 40 минут, 30 секунд (23.11.2010 - 22:42) maximka787 написал(а):
В принципе все ясно, скорее всего сканер ошибся, 8 раз подряд на разных страницах. у меня везде одинаковая вышеописанная система проверки данных стоит. я специально пропускаю все вводимые данные через функцию проверки состоящую из 5-6 этапов) думаю нет больше смысла обсуждать глупую прогу) всем спасибо за разъяснения


_____________
..Работает - не трогай!
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.