2011-12-21 5 views
3

Я вдали от компьютера с установленной PHP и было интересно, что результат strip_tags() будет следующий текст: "< < экр h1 > > IPT оповещения ('о о ') </экр </h1 > IPT > "ли strip_tags() обрабатывать вложенные теги

Будет ли возвращение: " < сценария > предупреждения (' о, о ') </скрипта > "(т.е. не признать, что, удалив очевидный тег он подвергается новый) или "alert ('oh oh')

Я знаю, что если он вернет первый случай, я могу просто повторно вызвать функцию, пока не выйду из того, что я вложил, но мне любопытно.

Заранее спасибо.

+0

Я полагаю, правильный вопрос будет: Почему вы хотите это сделать? Если вы хотите избежать контекстного кодирования XSS, это правильный метод, а не снятие тегов. – Erlend

ответ

0

Большой вопрос.

Нет, он ничего не раздеть из этой строки:

<?php 
$b = "ipt>alert('oh oh')ipt>"; 
echo strip_tags($b); 
?> 

И выход ваша исходная строка: ipt>alert('oh oh')ipt>

Редактировать

В вашем втором случае он будет печатать alert('oh oh') поэтому он полоски все это похоже на бирку за один шаг

+0

Извините, что сообщение отредактировало мою исходную строку, потому что я не использовал коды символов HTML, не могли бы вы взглянуть на нее снова для меня. Благодаря! – Cailen

0

возвращает только:

 
alert('oh oh') 
Смежные вопросы