У меня такой вопрос возник. На одном сайте существует строка поиска, при вводе в которую такого поискового запроса <script>alert()</script> вылетает заветное окошко, т.е. налицо XSS-уязвимость, но проблема в том что результаты запроса выводится в отдельном фрейме, для каждого клиента отдельно и кукис спионерить навряд ли получится. Тогда я попробовал встроить РНР-код, который благополучно выполнился, тогда я подумал, а что если создать на сервере свой файл, который будет является шеллом на Perle или PHP, но я столкнулся с проблемой и суть ее вот в чем при вводе строки поиска например такого вида <? fopen("cmd.php","w+")?>. На странице с результатами получаю примерно такой ответ Показано <b>1-10</b> из <b>22 (7881KB)</b> для<b> <? fopen( , )?> cmd.php w+ </b>с<b> 107</b> общим количеством совпадений. Т.е. все что находится в кавычках выносится за функцию и вообще за тег. Как можно это обойти. Помогите пожалуйста перелопатил море литературы, но так и не могу найти способ. Или подскажите как можно использовать этот баг еще?
Кавычки все фильтруются? Попробуй через функцию eval (`your code`); А вообще посммотри любую статью об обходе PHP SAFE MODE. И используй что-нибудь похожее.
Фильтруется только " или ещё ' ? Делай так fopen( $_GET[a], $_GET ); и обращайся так ...&a=cmd.php&b=w+