XSS跨站漏洞(一)

XSS跨站漏洞产生的原理:

XSS又叫CSS(Cross Site Script),跨站脚本攻击,它指的是恶意攻击者往Web页面里插入恶意代码脚本,而程序员在设计网站中输入输出的部分时,没有对用户输入的内容进行过滤,当用户浏览该页之时,嵌入其中Web里面的脚本代码会被执行,从而达到恶意攻击用户的特殊目的。

XSS跨站漏洞危害:

跨站脚本攻击最常见的Web安全漏洞之一,全球OWASP排名第七位,在2017年信息安全团队检测发现中,XSS跨站漏洞数位列于第三位。

XSS漏洞危害:

1、盗取身份信息,窃取会和Cookie从而窃取网站用户隐私、包括账户、浏览历史、IP等。

2、更广泛的蠕虫传播,借助网站进行传播,使网站的使用用户受到攻击。

3、劫持用户会话,从而知悉任意操作,比如弹窗跳转、篡改页面、网页挂马。

XSS漏洞根源:前端输入不可信!没有对客户端提交参数或可执行代码进行校验或过滤。

XSS蠕虫案例攻击经典案例分析

事件经过:2011.06.28晚

新浪微博出现一次较大的XSS攻击事件

大量用户自动发送如“郭美美事件的一些未注意到的细节”等微博和私信,

并自动关注一位名为hellosamy的用户

具体时间如下:

20:14 开始有大量V的认证用户中招转发蠕虫

20:30 2kt.cn中的病毒页面无法访问

20:32 新浪微博中hellosamy用户无法访问

21:02 新浪漏洞修补完毕

攻击方式分析:

黑客通过对新浪微博的分析测试发现新浪名人堂由于代码过滤不严,导致XSS漏洞的存在,并可以通过构造脚本的方式植入恶意代码。

通过分析发现,在新浪名人堂部分中,当提交

http://weibo.com/pub/star/g/xyyd">?type=update

新浪会对该字符串进行处理,变成类似

http://weibo.com/pub/star.php?g=xyyd'>?type=update

而由于应用程序没有对参数g做充足的过滤,且将参数值直接显示在页面中,相当于weibo.com在页面中嵌入了一个来自于2kt.cn的JS脚本。

该JS脚本是黑客可以控制的文件,使得黑客可以构造任意JS脚本嵌入到weibo.com的页面中,且通过Ajax技术完全实现异步提交数据的功能,进而黑客通过构造特定的JS代码实现了受此XSS蠕虫攻击的客户自定发微博、添加关注、发微信等操作。

解决思路:

若要过滤掉XSS,可以在输入层面过滤,也可以在输出层面过滤或HTML实体编码。

修复方法:HTML实体编码

...插入不可信数据前,对其进行HTML实体编码...

...插入不可信数据前,对其进行HTML实体编码...

...插入不可信数据前,对其进行HTML实体编码...

备注:

领导说了

您点一个

小编的工资就涨五毛!

分享IT技术、汇集最新资讯

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180602G08ZNU00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券