xss fuzz小记
挖XSS遇到这样一种姿势:
<script> var a = "123\" alert(1);//"; </script>
这里没有转码的符号有\ / > < ; 可以输出换行符,你觉得能弹出1吗?
答案是不能。
正常的字符串换行连接,可以这样写:
<script> var a = "123\ alert(1);//"; </script>
正确的弹出姿势:
<script> var a = "123\ </script><script>alert(1);//"; </script>
其实写这些,只是想说一个<script></script>之间如果出错,之间出错内容之后的脚本不会执行,而同时并不影响另一个<script></script>之间的内容执行。具体原因,我也还没看。
我原来想着,FUZZ到底要怎么进行呢,输出在同一个页面,如果有报错,其他不是都执行不了了?后来由上知道,把所有fuzz姿势单独装在<script></script>盒子里就好了,该报错的报错,该执行的执行,互不影响。
FUZZ方法可参考《Web前端黑客技术揭秘》6.2.5 一种DOM fuzzing技巧:http://book.2cto.com/201301/14509.html
附FUZZ腾讯可用标签:
http://message.finance.qq.com/tips/get_msg_num.php?uid=【标签】&_r=0.8224575822241604
<a>
<abbr>
<acronym>
<address>
<area>
<article>
<aside>
<audio>
<b>
<basefont>
<bdi>
<bdo>
<big>
<blockquote>
<br>
<button>
<canvas>
<caption>
<center>
<cite>
<code>
<col>
<colgroup>
<command>
<datalist>
<dd>
<del>
<details>
<dfn>
<dialog>
<dir>
<div>
<dl>
<dt>
<em>
<fieldset>
<figcaption>
<figure>
<font>
<footer>
<h1>
<header>
<hr>
<html>
<i>
<img>
<input>
<ins>
<kbd>
<keygen>
<label>
<legend>
<li>
<map>
<mark>
<menu>
<meter>
<nav>
<noframes>
<noscript>
<ol>
<optgroup>
<option>
<output>
<p>
<pre>
<progress>
<q>
<rp>
<rt>
<ruby>
<s>
<samp>
<section>
<select>
<small>
<source>
<span>
<strike>
<strong>
<sub>
<summary>
<sup>
<table>
<tbody>
<td>
<textarea>
<tfoot>
<th>
<thead>
<time>
<title>
<tr>
<track>
<tt>
<u>
<ul>
<var>
<video>
<wbr>