Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Безопасность сайта - метод trace
 
 автор: job   (17.09.2009 в 08:02)   письмо автору
 
 

Здравствуйте! Я вновь поднимаю тему о безопасности. На моем сайте стали появляться iframe содержащие вирусы. Что указывает на XSS уязвимость. Я запустил проверку сайта X-spider 7.5. Программа показала что доступен метод Trace.
В .httpacces я прописываю TraceEnable Off но при повторном сканировании уязвимость остается.

Скажите, как отключить метод Trace. И на сколько он опасен?

Так же хочу заверить, что все данные получаемы от пользователя (GET и POST) я пропускаю через функцию:

<?
function stop_xss($text){       
$text trim(htmlspecialchars(stripslashes($text)));
if(!
get_magic_quotes_gpc()){ 
$text mysql_escape_string($text);  

return 
$text;
}
?>

Cookie не использую.
Пароль на ftp сложный.

Скажите, на сколько моя функция совершенна?

  Ответить  
 
 автор: neadekvat   (17.09.2009 в 09:04)   письмо автору
 
   для: job   (17.09.2009 в 08:02)
 

Давайте пока говорить о работоспособности.

[поправлено модератором]

  Ответить  
 
 автор: Job   (17.09.2009 в 09:40)   письмо автору
 
   для: neadekvat   (17.09.2009 в 09:04)
 

безусловно!

Обрезаю пробелы
заменяю спец символы на их графическое отображение
перекрываю кавычки слешем
мнемонизирую страку для SQL запроса

Вы считаете что моя функция не работоспособна????
Что вы предлогаете заменить или усовершенсвовать в ней?

А что насчет метода Trace?

  Ответить  
 
 автор: serjinio   (17.09.2009 в 10:32)   письмо автору
 
   для: Job   (17.09.2009 в 09:40)
 

а $text после обработки данной функции где используется?
магические кавычки надо отключать ДО обработки глобальных переменных PGC!

  Ответить  
 
 автор: neadekvat   (17.09.2009 в 12:52)   письмо автору
 
   для: Job   (17.09.2009 в 09:40)
 

Спокойнее, я понимаю и один знак вопроса.
Спросил я, потому что многие тупо лепят функции, не знамо зачем

Так же хочу заверить, что все данные получаемы от пользователя (GET и POST) я пропускаю через функцию:

Вот из-за чего я спрашиваю. Если данные добавляются в бд, то конечно, нужно прослешить строку. А если отсылаются на мыло - то это бесполезное занятие

  Ответить  
 
 автор: cheops   (17.09.2009 в 10:38)   письмо автору
 
   для: job   (17.09.2009 в 08:02)
 

Хм... возможно пароль на FTP похищен с вашей клиентской машины - проверьте лучше на трояны все машины с которых осуществляется FTP-доступ и смените FTP-пароль.

Обычно перед сохранением в базу данных, данные на XSS не проверяются - это не продуктивно (их сложно потом редактировать), данные проверяются на XSS перед выводом непосредственно в браузер. Лучше разделить функцию на две - одна проверяет данные перед сохранением данных, другая перед выводом в барузер.

  Ответить  
 
 автор: Николай2357   (17.09.2009 в 10:43)   письмо автору
 
   для: job   (17.09.2009 в 08:02)
 

>Скажите, на сколько моя функция совершенна?
Для полноты картины не хватает функции strip_tags(). И тогда уж точно будет stop_xss.

Вам сюда. И поверьте, это поможет.

  Ответить  
 
 автор: Job   (17.09.2009 в 13:12)   письмо автору
 
   для: Николай2357   (17.09.2009 в 10:43)
 

:)))

Функцию я использую для форматирования текста и последующего его использования в БД MySQL. Это может быть как и SELECT так и INSERT запрос. Меня немного волнует что после применения функции % и _ в переменной $text никак не перекрываются.

поражен проницательностью cheops! )) я вспонил что когда еще только купил домен и на сайте был один index.html через некоторое время в него был дописан вредоностный код...
Значит дело скорее всего в краже пароля.

Так же согласен что лучше было бы разделить на две функции ... действительно есть проблемы с редактированием. подумаю над этим...

И всё же этой функции stop_xss будет достаточно для предотвращения sql-инъекций и xss уязвимостей?
И какой функцией можно избавиться от % и _ ?
метод Trace опасен?

  Ответить  
 
 автор: Николай2357   (17.09.2009 в 13:40)   письмо автору
 
   для: Job   (17.09.2009 в 13:12)
 

>И всё же этой функции stop_xss будет достаточно для предотвращения sql-инъекций и xss уязвимостей?
Следуя этой логике, нужно сделать так:
<?
if(isset($_POST$_GET$_COOKIE$_REQUEST........ )
die(
'Ой, боюсь, боюсь!');

Нельзя лепить в одну кучу все, что где то когда то увидел и считать, что всё надежно и хорошо. Всё длжно быть на своих местах.
Все, кто решил эту задачу, совершенно иначе смотрят на обработку данных, нежели раньше.
Сию тему продолжать бессмыслено, так как все сведется именно к тому.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования