![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
<безопасные>. Это наиболее трудоемкий и потенциально опасный путь:
@BADTAG = ("applet", "script",
"iframe",
йит. д., все "опасные" тэги "img"); foreach
$t(@BADTAG)
{
$string =~ s/<$t/<none/gi; $string =' s/</$t/</none/gi: }
Такой подход чреват некоторыми опасностями. Например, известный скрипт formmail Мэтта Райта в
последнее время фильтрует SSI следующим образом: value =~s/<!--(. l\n)*-->//g;
Это несомненный прогресс по сравнению с первыми версиями, просто пропускавшими SSI. Однако проблема
в том, что Apache, по крайней мере, не требует присутствия закрывающих символов <-->> для выполнения
указанной директивы, поэтому злоумышленник может добиться своего, просто введя строку <! --ftinclude
virtual="some. html".
Казалось бы, можно справиться с проблемой, <выкусывая> <!- (value =~ s/<! --//g,), но и в этом случае
остается обходной маневр: строка <!--!--^include virtual="some.html" в итоге преобразуется в <i--#include virtual^
"some. html".
. Достаточно безопасной можно считать конструкцию while(s/<!--//g){}, хотя и у нее есть свои минусы. Похожие
Проблемы возникают на серверах,
Использующих ASP, РНР и т. д., причем большинство свободно распространяемых скриптов их просто
Игнорирует. Будьте крайне осторожны, адаптируя готовый скрипт к своему серверу, если он (сервер) умеет чуть
Дата публикования: 2014-11-04; Прочитано: 321 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!