Защита форума от javascript/vbscript

Zanzibar

Новичок
Защита форума от javascript/vbscript

Здравствуйте.
как лучше защитить форум от сообщений типа


или

javascript:..............

спасибо
 

diamond_krnl

pure-php
регулярками проверять валидность урл до картинки.
посмотри как сделанно в phpbb, v bulletin...etc/
 

Zanzibar

Новичок
значит отфильтровать "vbscript" и "javascript"?

а если форма записи будет
?

я слышал, что так можно фильтр обойти

-~{}~ 21.09.06 15:18:

а кроме
скрипты никуда нельзя воткнуть? если картинки запретить вообще, проблема со скриптами снимется?
 

vd

Новичок
Тебе могут подсунуть валидную картинку (если можно давать ссылки на картинки с внешних ресурсов) а потом через неделю вместо картинки - будет подгружаться скрипт:)

А фильтры нужно продумывать. В 95% случаев, если запретить подгружать картинки из сети проблемы можно избежать.

Запрещать картинки - не выход:)
 

vd

Новичок
Автор оригинала: phprus
Или ты правда веришь в то, что скрипт подключенный через <img src="..."> выполнится?
Право же - нет:) Наверняка Вы слышали про XSS:) Так вот вы даете ссылку на картинку, которую собственно выдает скрипт php-й. А в один прекрасный момент вместо картинки возвращается javascript-код(это конечно если картинки каждый раз загружаются с удаленного ресурса - но я об этом упоминал). Большого вреда не принесет:) Сервер завалит, может быть;)
И мне интересно Ваше удивление... Если хотите кину ссылку на различные пути проведения XSS атак.
 

bkonst

.. хочется странного?...
С какой это радости Javascript-код, полученный вместо содержимого картинки завалит сервер? С какой радости он вообще выполнится? Работу браузера представляем, или только слышали про XSS?
 

BeGe

Вождь Апачей, блин (c)
bkonst завалит не JavaScript, а человек получивший данные при помощи XSS методов, а если картинка ещё и генерируется на пхп, она может показывыться только определенным броузерам с определённым окружением....
 

bkonst

.. хочется странного?...
Ок. Представим себе ситуацию: есть ссылка на картинку, например
<img src="http://evil.hacker.com/picture.gif">. Демонстрацию XSS, основанного на выдаче Javascriptа вместо картинки, можно?

Худший вариант - редирект пользователя на "управляющий" URL, принимающий параметры через GET (a-la http://victim.com/delete.php?id=everything). Блокируется - элементарно. И к скриптам не относится.
 

vd

Новичок
Автор оригинала: bkonst
Ок. Представим себе ситуацию: есть ссылка на картинку, например
<img src="http://evil.hacker.com/picture.gif">. Демонстрацию XSS, основанного на выдаче Javascriptа вместо картинки, можно?
А теперь представьте - у Вас на форуме некий посетитель сделал 250 сообщений. У каждого из этих сообщений - аватар. Затем вместо рисунка на сервер загружается яваскрипт. Например, просто выполняющий бесконечный цикл. И у всех посетителей форума будет вываливаться сообщение - "на странице скрипт, тормозящий систему!" - это ли не прелесть;) А если еще на каждой итерации создавать глобальный массив по 1000 элементов - то памяти на много не хватит. Это конечно, на сервер особенно не повлияет - но работу форума остановит. Но ведь есть у javascript и другие возможности...
 

bkonst

.. хочется странного?...
Повторяю вопрос: с какой радости браузер будет выполнять Javascript, который ему передали вместо picture.gif?
 

crocodile2u

http://vbolshov.org.ru
vd
перестань уже пургу гнать.

BeGe
ты вообще, похоже, не врубаешься, о чем речь.
 

vd

Новичок
bkonst
Повторяю вопрос: с какой радости браузер будет выполнять Javascript, который ему передали вместо picture.gif?
Ладно распишу подробно:

Вы в качесве аватара даете ссылку на файл php: http://site/image.php. Этот файл, охраняя информацию о запросе, выводит заголовок с Content-type: image/jpeg и собственно файл изображения.
Сдесь уже предусмотрена одна фишка - сбор статистики.
Но ладно спустя определенное время сервер выдает 301 moved c location на какую-то страницу использующую дырки или с URL типа ”javascript:alert(document.cooke)”.
......
Нашел статью на security lab-е. Все заинтересованные могут почитать.http://www.securitylab.ru/contest/212115.php
 

bkonst

.. хочется странного?...
Но ладно спустя определенное время сервер выдает 301 moved c location на какую-то страницу использующую дырки или с URL типа ”java script:alert(document.cooke)”.
Никак, пробовал? Особенно "URL типа java script".

Нашел статью на security lab-е.
Ты сам-то её прочитал?
 

crocodile2u

http://vbolshov.org.ru
vd
Однако, ты упорный... но тупой - донельзя. ГДЕ В ЭТОЙ СТАТЬЕ хоть слово о картинках, которые выполняют Java-Script'ы ???
 

vd

Новичок
Ну может и переврал немного. (Но статья хорошая!) Однако, уважаемый crocodile2u, это не повод для оскорблений.
Всего доброго;)
 

bkonst

.. хочется странного?...
Переврал - совершенно. Слышал звон (волшебное слово "XSS"), да не знаешь, где он.
 
Сверху