浅析XSS与XSSI异同

所属分类: 网络安全 / 黑客教程 阅读数: 195
收藏 0 赞 0 分享

Michael Cobb:自上世纪90年代,攻击者就已经开始利用XSS漏洞,并且,最主要的网站(例如谷歌、雅虎和Facebook)都在一定程度上受到过XSS漏洞的影响。与大多数应用层攻击(例如SQL注入),基于XSS的攻击会攻击应用的用户,而不是应用或服务器。这些攻击的工作原理是注入代码(通常例如JavaScript客户端脚本)到Web应用的输出。大部分网站有很多注入点,包括搜索域、cookies和表格。虽然这些恶意脚本不能直接感染服务器端信息,它们仍然可以破坏网站的安全性。通过使用Document Object Model操作来更改表格值,改变网页的外观或切换表格操作以张贴提交的数据到攻击者的网站,攻击者可以窃取数据、控制用户的会话、运行恶意代码或用作网络钓鱼欺诈的一部分。

XSSI是XSS的一种形式,它利用了这样一个事实,即浏览器不会阻止网页加载图像和文字等资源,这些资源通常托管在其他域和服务器。例如,脚本可能提供攻击者需要的功能,帮助创建特定的页面—很多网站包含托管在https://developers.google.com/speed/libraries/#jquery的JavaScript库jQuery。然而,这种包含可能被利用来从一个域名读取用户数据—当用户正在访问另一个域名时。例如,如果ABC银行有一个脚本用于读取用户的私人账户信息,攻击者可以在其自己的恶意网站包含这个脚本,当ABC银行的客户访问攻击者的网站时,攻击者就可以从ABC银行的服务器提取用户信息。

开发者可以部署多种措施来抵御XSSI攻击。其中一种方法是向用户提供独特的不可预测的授权令牌,在服务器响应任何请求之前,需要发送回该令牌作为额外的HTTP参数。脚本应该只能响应POST请求,这可以防止授权令牌作为GET请求中的URL参数被暴露,同时,这可以防止脚本通过脚本标签被加载。浏览器可能会重新发出GET请求,这可能会导致一个操作会执行一次以上,而重新发出的POST请求需要用户的同意。

在处理JSON请求时,在响应中增加非可执行前缀,例如“\n”,以确保脚本不可执行。在相同域名运行的脚本可以读取响应内容以及删除前缀,但在其他域名运行的脚本则不能。此外,开发者还应该避免使用JSONP(具有填充功能的JSON)来从不同域名加载机密数据,因为这会允许钓鱼网站收集数据。同时,发送响应表头“X-Content-Type-Options: nosniff”也将帮助保护IE和谷歌Chrome用户免受XSSI攻击。

为了应对XSS攻击,可在HTTP Content-Type响应表头或者HTML代码中meta标签中http-equiv属性中指定CHARSET,让浏览器不会解译其他字符集的特殊字符编码。对于使用ASP.NET开发网站的开发者,微软Anti-Cross Site Scripting Library可以帮助保护Web应用抵御跨站脚本漏洞。

现在有很多开源漏洞扫描工具可供开发者使用,以测试其代码是否容易遭受XSS攻击,例如Vega、Wapiti、OWASP的Zed Attack Proxy和Skipfish。企业应该定期对网站进行扫描,同时,在底层代码变更或依靠第三方库的功能集成到各种网页时,也应该扫描网站。

读完此文,大家应该知道两者的区别在哪了。

更多精彩内容其他人还在看

病毒、木马ARP攻击行为的原理分析及解决思路

带有ARP攻击行为的病毒,木马很是常见,主要有两种表现形式:频繁的出现地址冲突的现象以及 上网速度很慢甚至上不了网,这类问题如何解决呐?
收藏 0 赞 0 分享

ARP欺骗攻击原理另一种理解方法

本文子明特别用通俗的例子,说明ARP欺骗攻击的原理,使ARP欺骗攻击原理更加清楚的展现在你的面前。
收藏 0 赞 0 分享

七招教你抵御ARP欺骗攻击

本文介绍了七种简易方法助你抵御ARP欺骗攻击,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

全面剖析DDoS攻击 黑客常用攻击方式

纵观网络安全攻击的各种方式方法,其中DDoS类的攻击会给你的网络系统造成更大的危害。因此,了解DDoS,了解它的工作原理及防范措施,是一个计算机网络安全技术人员应必修的内容之一。
收藏 0 赞 0 分享

最简单的防止ARP欺骗的方法

局域网中的计算机容易遭受攻击的原因是使用动态的arp获取协议所以很不安全,当把arp协议设为静态的可以杜绝arp攻击的发生,需要了解的朋友可以参考一下
收藏 0 赞 0 分享

路由器防止ARP欺骗的设置步骤

ARP欺骗是一个比较常见的网络问题,它会盗取用户账号,还会导致网络的瘫痪。为此,很多路由器开发商都设置了路由器防止ARP欺骗的功能。下面小编说说路由器防止ARP欺骗的设置方法。
收藏 0 赞 0 分享

怎样隔离ARP攻击源 电脑受到ARP断网攻击应对策略

局域网如何隔离感染ARP病毒的电脑呢?当局域网电脑存在ARP病毒时,会导致其它电脑出现断网现象。对此比较好的解决方法就是将ARP攻击源给隔离掉。以下就是具体的实现方法。
收藏 0 赞 0 分享

如何从运营角度保障DNS安全

如何从不同层面综合运营,保证DNS服务安全高效的运行?DNSPod工程师认为,主要应该从状态监控、信息告警、事件处理、数据记录、综合运营数据分析这五个方面入手。
收藏 0 赞 0 分享

DNS欺骗的原理 DNS防御实战演练

DNS即Domain Name System的缩写,域名系统以分布式数据库的形式将域名和IP地址相互映射。DNS协议即域名解析协议,简单的说:DNS是用来解析域名的。
收藏 0 赞 0 分享

对付DDoS攻击的三大绝招

不知道身为网络管理员的你是否遇到过服务器因为拒绝服务攻击都瘫痪的情况呢?就网络安全而言目前最让人担心和害怕的入侵攻击就要算是拒绝服务攻击了。和传统的攻击不同,采取的是仿真多个客户端来连接服务器,造成服务器无法完成如此多的客户端连接,从而无法提供服务。
收藏 0 赞 0 分享
查看更多