HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > БЕЗОПАСНОСТЬ И УЯЗВИМОСТИ > Уязвимости
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

PHP addcslashes() vulnerabilitiy
  #1  
Старый 05.01.2008, 13:01
Евгений Минаев
Познающий
Регистрация: 12.11.2007
Сообщений: 69
С нами: 9734726

Репутация: 676
По умолчанию PHP addcslashes() vulnerabilitiy

PHP функция addcslashes экранирует спецсимволы в стиле языка C , является аналогом addslashes с возможностью указывать свой набор символов для экранирования . Некорректно работает с некоторыми спецсимволами , а именно null byte считает концом строки.

PHP код:
echo addcslashes "some\0thing" '\'' );
->
some 
PHP код:
echo addcslashes "some\0thing'" chr(0).'..\'' );
-> 
some\000thing\
 
Ответить с цитированием

  #2  
Старый 05.01.2008, 13:23
-=lebed=-
Флудер
Регистрация: 21.06.2006
Сообщений: 3,193
С нами: 10467746

Репутация: 4738


По умолчанию

символы с Ascii менее 32 и более 126 преобразуются в восьмеричное представление.
На выходе должно быть тоже что и на входе:
Код:
echo addcslashes ( "some\0thing" , '\'' ); 
->some\0thing
но \0 нулевой байт интерпретируется как конец стироки, так?
Во втором примере экранируются все символы из диапазона от chr(0) до одинарной кавычки, должно быть на выходе:
Код:
 echo addcslashes ( "some\0thing'" , chr(0).'..\'' ); 
-> some000thing\'
, потому как \0 преобразовался в восьмеричное представление 000, а вот почему пропала кавычка? её в аргументе тоже надо было экранировать?

P.S. В тэгах php тут на форуме тоже иногда пропадают экранирующие слэши, лучше в code заключать, потому что я не уверен, что в посте вывелось то, что реально в php выводится...

Последний раз редактировалось -=lebed=-; 05.01.2008 в 14:25..
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Books PHP FRAGNATIC PHP 186 21.02.2010 02:41
Что такое Php? PAPA212 Болталка 13 28.12.2007 20:44



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.