|
|
|
| //--><script >alert(document.cookie);</script> | |
|
|
|
|
|
|
|
для: Loki
(04.09.2006 в 13:51)
| | оперативно:)
рассказывайте что теперь прикрутили?:) | |
|
|
|
|
|
|
|
для: Loki
(04.09.2006 в 13:56)
| | Заменил проверку script на
<?php
$str = preg_replace("|<[\s]*script[\s]*>|i","",$str);
$str = preg_replace("|<[\s]*/script[\s]*>|i","",$str);
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(04.09.2006 в 13:58)
| | //--><script language=javascript>alert(document.cookie);</script language=javascript>
Ваш путь порочен изначально!:) | |
|
|
|
|
|
|
|
для: Loki
(04.09.2006 в 14:00)
| | Не совсем, не следует не дооценивать реугулярные выражения :))) | |
|
|
|
|
|
|
|
для: cheops
(04.09.2006 в 14:30)
| | Я не о регулярных выражениях, а в принципе о попытке заткнуть все дырки... мне кажется что тут надо решать задачу как-то иначе. | |
|
|
|
|
|
|
|
для: Loki
(04.09.2006 в 14:47)
| | Полностью согласен. Решение народная мудрость сформировала в виде поговорки "Не ошибается только тот, кто ничего не делает". | |
|
|
|
|
|
|
|
для: cheops
(04.09.2006 в 14:52)
| | Ладно... намек мой вы проигнорировали, поэтому придется назвать слово целиком:
<script>
function show_text()
{
document.form.text.value='Превед --\>\</script\>';
}
</script>
<form name=form>
<textarea name=text></textarea>
</form>
<a href="#" OnClick="show_text();">сюда</a>
|
Приз в студию и все такое...
Рекламная пауза. | |
|
|
|
|
|
|
|
для: Loki
(04.09.2006 в 16:33)
| | Хм... чё-то не работает эксплоит.... | |
|
|
|
|
|
|
|
для: cheops
(04.09.2006 в 16:58)
| | Так это не эксплоит, а защита от него:)
Если спецсимволы экранировать, то они нормально подставляются в форму, но не позволяют коду выйти за пределы строки. | |
|
|
|
|
|
|
|
для: Loki
(04.09.2006 в 16:59)
| | Надо будет поковыряться в эту сторону, к сожалению коды \60\62 в addcslashes() чего-то не рабатывают, только тупая замена через str_replace(), хотя тоже не плохо - нужно будет применить... | |
|
|
|
|
|
|
|
для: cheops
(04.09.2006 в 22:06)
| | По моим понятиям, достаточно экранировать символы: <>'
В этом случае я не придумал как обойти защиту. | |
|
|
|
|
|
|
|
для: cheops
(04.09.2006 в 22:06)
| | - | |
|
|
|
|
|
|
|
для: cheops
(04.09.2006 в 22:06)
| | А почему \60\62, а не \74\76 ? | |
|
|
|
|
|
|
|
для: Trianon
(05.09.2006 в 11:40)
| | Хм... \74\76 - это же вроде J и L | |
|
|
|
|
|
|
|
для: cheops
(05.09.2006 в 11:49)
| | вообще-то там восьмеричные коды... )))
или, что мне более импонирует, 16-ричные \x3C\x3E | |
|
|
|
|
|
|
|
для: Trianon
(05.09.2006 в 11:50)
| | Мда, вполне такое возможно, иначе действительно с какого перепою до 37 экранирование идёт. Чего ж тогда мануал советует функцию ord() для определения кодов - любопытно, сейчас попробую. | |
|
|
|
|
|
|
|
для: cheops
(05.09.2006 в 11:56)
| | мануал советует её, чтоб случайно диапазон справа налево не записать. Для этого оно вполне годится.
Я вообще себе не представляю, зачем их надо экранировать?
Почему не записать в лоб
$str = addcslashes($str, '<>');
| ? | |
|
|
|
|
|
|
|
для: Loki
(04.09.2006 в 14:47)
| | На стыке двух языков всегда будут такие корявки... Именно по этому на других форумах используется специальная ссылка "Ответить с цитатой" - можно вообще цитату убрать, можно обезопасить текст при помощи htmlspecialchars(), можно сделать отдельную ссылку, чтобы цитат подставлялась в textarea - только не удобно будет. | |
|
|
|
|
|
|
|
для: cheops
(04.09.2006 в 14:57)
| | отдельная ссылка вроде нормально - не так часто тут цитируют друг друга | |
|
|
|
|
|
|
|
для: P@Sol
(04.09.2006 в 15:10)
| | Её тогда нужно помещать там где сейчас "Ответить" и будет целая батарея ссылок - не очень красиво и эргономично: лучше когда под одно действие отводится одна ссылка, а не каждая ссылка под один из вариантов действия. | |
|
|
|
|
|
|
|
для: cheops
(04.09.2006 в 15:19)
| | можно галочку ставить:) | |
|
|
|
|
|
|
|
для: P@Sol
(04.09.2006 в 15:23)
| | Галочку в портрете пользователя имеете ввиду или около ссылки? Всё равно забывать будут ставить... часто к цитате обращаются уже формируя ответ, отвечая посетитель не думает о том, что ему скоро понадобится цитата (не все думают) - хотелось бы сохранить текущий механизм - когда понадобилось, тогда и ответил. | |
|
|
|
|
|
|
|
для: Loki
(04.09.2006 в 13:51)
| | Угу... а ещё можно большими буквами script писать... придётся регулярными выражениями чистить... | |
|
|
|
|
|
|
|
для: cheops
(04.09.2006 в 13:56)
| | Проверка не завершилась успехом ))) | |
|
|
|
|
|
|
|
для: DEM
(04.09.2006 в 18:35)
| | Хм... в смысле? | |
|
|
|
|
|
|
|
для: cheops
(04.09.2006 в 22:07)
| | Я хотел кое что попробовать, но это не получилось :) | |
|
|
|
|
|
|
|
для: DEM
(04.09.2006 в 22:13)
| | Значит вы не слишком злы на окружающих :))) если взломы не срабатывают... | |
|
|
|
|
|
|
|
для: cheops
(04.09.2006 в 22:17)
| | У меня тоже ничего не вышло :) | |
|
|
|
|
|
|
|
для: cheops
(04.09.2006 в 22:17)
| | >Значит вы не слишком злы на окружающих :))) если взломы не срабатывают...
А вот лица попрошу не касацца!:) | |
|
|
|