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

  #11  
Старый 11.07.2008, 10:59
nc.STRIEM
Members of Antichat - Level 5
Регистрация: 05.04.2006
Сообщений: 1,066
С нами: 10578566

Репутация: 1228


По умолчанию

Цитата:
Сообщение от Helios  
ага, а такая вот ссылка заставит твой винт пожужжать:
Код:
**.php??tel=8913-";system("rm - rf /"); print (">
ничего не произойдет. твой код не выйдет за приделы "
 
Ответить с цитированием

  #12  
Старый 11.07.2008, 18:11
ShAnKaR
Постоянный
Регистрация: 14.07.2005
Сообщений: 964
С нами: 10960226

Репутация: 1424


По умолчанию

Цитата:
Сообщение от Helios  
ага, а такая вот ссылка заставит твой винт пожужжать:
Код:
**.php??tel=8913-";system("rm - rf /"); print (">
ты прав что это не безопастно, надо так:
PHP код:
preg_replace("#tel=(.*)></td>#e","print('$1\\n')",file_get_contents('http://www.sexnsk.com/index.php')); 
в кавычках фишка, всем видно думаю.
 
Ответить с цитированием

  #13  
Старый 11.07.2008, 18:56
Helios
Постоянный
Регистрация: 14.01.2007
Сообщений: 459
С нами: 10169427

Репутация: 589
По умолчанию

Отнюдь не в кавычках тут дело. Строка, идущая вторым параметром, после подстановки туда значения из регекспа по сути передается как аргумент функции eval. Поэтому никакие кавычки тут не спасут. Выход куда проще: нужно просто подправить саму регулярку, чтобы ничего лишнего туда не попало:
Код:
было:
(.*)

стало:
([0-9\-]*)
 
Ответить с цитированием

  #14  
Старый 11.07.2008, 19:28
Дикс
Познавший АНТИЧАТ
Регистрация: 16.04.2006
Сообщений: 1,488
С нами: 10562786

Репутация: 537


По умолчанию

ага.
может кто ещё подобный скриптец на форум подкинет?
 
Ответить с цитированием

  #15  
Старый 11.07.2008, 22:16
ShAnKaR
Постоянный
Регистрация: 14.07.2005
Сообщений: 964
С нами: 10960226

Репутация: 1424


По умолчанию

Цитата:
Сообщение от Helios  
Отнюдь не в кавычках тут дело. Строка, идущая вторым параметром, после подстановки туда значения из регекспа по сути передается как аргумент функции eval. Поэтому никакие кавычки тут не спасут. Выход куда проще: нужно просто подправить саму регулярку, чтобы ничего лишнего туда не попало:
Код:
было:
(.*)

стало:
([0-9\-]*)
если не согласен - дай код который выполнится в моем последнем примере тогда. с одним phpinfo() чтоб проще было.
PS если кстати дашь реальный ответ то похекаем сразу кучи двигов ) с регулярками.

Последний раз редактировалось ShAnKaR; 11.07.2008 в 22:25..
 
Ответить с цитированием

  #16  
Старый 11.07.2008, 23:17
genom--
Постоянный
Регистрация: 09.07.2006
Сообщений: 937
С нами: 10441826

Репутация: 1686


По умолчанию

интересно зачем ему база с номерами проституток? 0_0
 
Ответить с цитированием

  #17  
Старый 11.07.2008, 23:32
+toxa+
[Лишённый самовыражени
Регистрация: 16.01.2005
Сообщений: 1,787
С нами: 11217866

Репутация: 3812


По умолчанию

спам по смс ^^
тематический
__________________
 
Ответить с цитированием

  #18  
Старый 11.07.2008, 23:45
5triker
Участник форума
Регистрация: 05.04.2007
Сообщений: 150
С нами: 10052876

Репутация: 77
По умолчанию

званить и апщаца имхо
 
Ответить с цитированием

  #19  
Старый 12.07.2008, 01:47
Helios
Постоянный
Регистрация: 14.01.2007
Сообщений: 459
С нами: 10169427

Репутация: 589
По умолчанию

Кажется ты не совсем понял мою мысль. Смотрим в ман:
Цитата:
The e modifier makes preg_replace() treat the replacement parameter as PHP code after the appropriate references substitution is done.
Отсюда видим, что второй параметр выполняется как код после замены переменных. Отсюда следует, что никаким способом невозможно изменить второй параметр так, чтобы невозможен был инжект (вариант удалить замену в принципе - не рассматриваем=)).

А уже следуя из этого приходим к тому, что нужно следить за регулярным выражением, убирая лишнее еще там. Ну а предложенное тобой (.*) пропускает все что угодно.

Этим то и грешили многие движки, да и грешат до сих пор.
ЗЫ: и похекать мы сможем только единицы, т.к. девелоперы за регулярками обычно следят
 
Ответить с цитированием

  #20  
Старый 12.07.2008, 01:55
Sharky
Познавший АНТИЧАТ
Регистрация: 01.05.2006
Сообщений: 1,021
С нами: 10541186

Репутация: 921


По умолчанию

Цитата:
Сообщение от D=P=CH= MOD=  
Код:
http://forum.sexnsk.com/forumbackup-06.05.2008-ff546.sql
жжошь ... лови плюсы =)
 
Ответить с цитированием
Ответ



Предыдущая тема Следующая тема

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


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




ANTICHAT ™ © 2001- Antichat Kft.