Вступление. Как-то мне понадобилось поискать на Софтодроме програмку название которой нашел в поисковике(Гугл).
Скопировал строчку, вставил в строку поиска Софтодрома. Найти.
Результат удивил настолько что забыл что я что-то искал. Удивил странностями вида результата.
Я видел ТЕГИ хотя знал что этого не может быть. Тем более было странно что сайт очень извесный и популярный.
Стал исследовать и вывел (как мне кажется) закономерность.
Если в строке поиска на сайте Softodrom.ru ввести "a a f" (без кавычек, можно не b b ... (одинаковые буквы через пробел)
и вместо f любую букву, слово лишь бы поиск нашел что-то), то результат выводится с ошибкой там
появляются теги.
Продолжая колупать нашел такую комбинацию "a /d a" (без кавычек) выдает такое
Warning: preg_replace() [function.preg-replace]: Unknown modifier 'd' in /usr/home/softodrom.ru/www/scr/seeknew.php
on line 570
Вопрос, это дырка или так должно быть? Хотя если должно то как искать "а а f"?
Дальше я пробовал разное но моих знаний по регулярным выражением недостаточно, хотя...
я знаю если в функции preg_replace() использовать модификатор /е то второй параметр функция воспринимает
как код ПХП, а это наводит на мысли что можно выполнить какой то код на серевере, а может и нет незнаю.
Опасно ли это для сайта? Прокоментируйте пожалуйста все вот это. Моих знаний (2 месяца ПХП и 2 недели регулярных
выражений) не хватает для ответа на вопрос "Дырка это или нет?"
З.Ы. Извините за много писанины. Впервые пишу в форум.
З.З.Ы. А еще умудрился вставить картинку Гугля в то место страницы где написсано "Результаты поиска: искали
_КАРТИНКА_ (не надпись а рисунок).
Для этого использовал такую строчку в поиске "а а <IMG SRC="http://www.google.com/intl/ru_ALL/images/logo.gif">а а" (без внешних кавычек).
Я не могу. Да можно и просто /d ввести, и тоже самое будет ))). А так молодец. Да, там че угодно можно ввести он это выплюнет:
Например
<font size="+10">Всем привет!</font>
И алерт в поиске какой-то вылетает...
Может я покажусь нахалом но немог бы кто нибудь зайти на обсуждаемый сайт (Софтодром). У меня не заходит, может его отключили после нашего общения, а может совпало и просто отключили.
Если не зайдете, ответте с чем связано, неужели с обсуждением?
А я копаю дальше терретичискую сторону функции preg_replace и работу с карманами.
Если все таки дырка как мне ответил уважаемый Little_W, то насколько опасна?
И спасибо за ссылку pop_kornу, читаю и учусь.
Red_Red опасность низкая- пасивная XSS, в лучшем случае ты угониш куки но неполучиш доступа в админку. Ну даже получить куки админа на софтодроме это уже чего стоит, я б там им вирей место новостей то понакидал! =) И кстати ща софтодром что то неработает, причина- хз !