PDA

Просмотр полной версии : О символах типа  \x3c


Algol
18.09.2004, 11:42
Вопрос к знающим:
Почему в некоторых системах прокатывают строки типа  
\x3cfont color=#800080\x3e 123 \x3c/font\x3e
И преобразуются в нормальный ХТМЛ?
На каком этапе это происходит? Пордозреваю что это какие то уязвимости на уровне ПХП, но какие именно?

~Ice_night_BeTeP~
18.09.2004, 15:29
Наверное потому что в любом чате стоит фильтр на символ < а
\x3c тоже он но в другой кодировке есть ещё замена < такая \74  .

Fr1k
20.09.2004, 14:29
Потому что в каждом чате есть как сказала ветер свой фильтр!!! вот типа таких
$ff =~ s/</\</g;
$ff =~ s/>/\>/g;
данное как видишь покаывает что в переменную $ff занесены символы <,< которые буду запрещены в чате или просто выводитса так как они есть!!!
\x3c  - как сказал ветер "x3c тоже он но в другой кодировке есть ещё замена < такая \74" - нивкакой он не в другой кодировке, он в своей кодировке вообщето... просто у каждого символа есть свой код 2-ый -8-ый 10-ый и т.д. так вот это и есть его код знака <.
<  - \x3c
>  - \x3e
;  - \x3b
:  - \x3a

Fr1k
20.09.2004, 14:31
А преобразоввание происходит аналогично как и хтмл запросу тоесть например А,Б,В,Г как преобразует в В %F0, %B0, %C0 ну и т.д. аналогично с тем символом!!!

Algol
20.09.2004, 15:19
Гм... никто не знает значить ....

zFailure
20.09.2004, 15:59
никто специально не приобразует \x3c в <

это скорее всего cgi баг, такой же как и нуль-байт обрубающий строку

это ведь обычная СИ-последовательность

так как perl и php (только если php установлен НЕ как модуль к апатчу) написаны на СИ это и происходит


я конечно не уверен, но так думаю!
для проверке в таком чате можно попробовать и символы новой строки \n и нуливой символ \0

Fr1k
20.09.2004, 18:43
Нда... эт точно!