APP下载

跨站脚本攻击及防范方法研究

2020-01-05刘建亮乔兴华

科学技术创新 2020年10期
关键词:脚本攻击者浏览器

刘建亮 乔兴华

(航空工业沈阳飞机工业(集团)有限公司,辽宁 沈阳110000)

在生活中有很多需要使用到脚本技术的时候,给人们的工作以及生活带来了一定的便利。但是,在便利的背后却隐藏着巨大的安全隐患,使多数网页系统中都含有跨站脚本漏洞,给攻击者实施跨站脚本攻击的机会。根据相关调查数据显示,跨站脚本攻击属于应用风险最高的网络漏洞之一,已经成为目前网络安全管理中的重要内容之一。随着网络技术的快速普及,很多政府部门以及事业单位都开始使用网上信息系统,使工作以及信息传递变得更加及时、高效。如果攻击者利用跨站脚本对网站进行攻击,会使网站丢失大量的数据和信息。因此,需要多吸纳相关的专业人才,对网络系统进行定时的维护和检查,做好跨站脚本攻击的防范。

1 跨站脚本攻击的概念阐述极其触发机制

1.1 跨站脚本攻击的概念

跨站脚本攻击一种恶意危害网络环境的行为,是指攻击者使用正常登录的身份来登录网站,并利用该网站出现的漏洞来对目标服务器进行攻击[1]。在攻击过程中,攻击者会利用漏洞输入恶意的程序代码,如果网站并没有对上传信息进行严格检验,那么当有其他用户访问这一网站或者页面的时候,浏览器会在后台自动加载代码,并按照这段代码进行运行,最终完成对目标的跨站脚本攻击。由此可见,跨站脚本攻击属于一种间接攻击,与SQL 注入攻击这一类直接攻击的方法是不同的。跨站脚本攻击会利用服务器的漏洞来攻击用户,这也是跨站脚本攻击中“站”的含义,这给登录网站用户的安全和隐私造成了严重的威胁。

1.2 触发跨站脚本攻击漏洞的机制

跨站脚本攻击是以为网站的漏洞为基础的,而跨站脚本攻击触发这些漏洞的机制主要分为以下三个类型:第一,利用超文本标记语言所携带的标签属性进行触发,例如当超文本标记语言的标签属性为img 时就可能会触发跨站脚本漏洞;第二,利用超文本标记语言事件进行触发。超文本标记语言是一种特殊的带有标识性的语言,其中会被定义多种事件,例如鼠标事件或者键盘事件,当这些事件被触发之后很有可能会给跨站脚本攻击带来机会;第三,当攻击者直接在网站中输入相应的脚本标记之后,就会直接触发跨站脚本漏洞,威胁到用户的信息和数据安全[2]。

2 跨站脚本攻击类型以及攻击效果

2.1 跨站脚本攻击的攻击类型

跨站脚本攻击的攻击主要有两种攻击模式:第一,是Reflection 跨站脚本攻击,在这种攻击模式下,攻击者是对攻击用户实施诱骗来让攻击用户点击链接,进而对用户进行攻击。当被攻击的用户在正常情况下登录网站之后,在登录过程中所产生的小型文本文件会含有一些会话的标识内容。在被攻击用户登录完成之后,攻击者会向用户发送链接,进而诱导被攻击用户进行点击。如果被攻击用户点击这一链接之后,攻击者所编写的跨站脚本会变成一种请求参数,进而被上传到带有跨站脚本漏洞的网页服务器之中。由于服务器无法正常识别这种信息,会将其当做简单的文本进行返回,当被攻击用户的浏览器将攻击者所编写的跨站脚本进行执行操作后,被攻击者的信息就会传到攻击者手中,使攻击者完成信息盗取[3]。第二,是Stored跨站脚本攻击,这是一种与上述第一种跨站脚本攻击类型有很大不同的攻击形式。在实施这种攻击类型之后,攻击者需要向网页提交两次请求,第一主要是构造跨站脚本,将其发送至网页的服务器之上进行保存,第二次是攻击者将自己伪装成为被攻击者发送请求,使被攻击者所使用的浏览器能够执行这些脚本。这一种攻击模式也是在被攻击用户登录网站之后,让用户自主浏览带有脚本攻击内容的页面,网站将这一页面内容返回给被攻击的用户之后,被攻击代表用户就会进行自动加载跨站脚本攻击中的代码,将被攻击的用户的信息传送给攻击者。

2.2 跨站脚本攻击的攻击效果

攻击效果主要有以下三种:第一,会让攻击者窃取到小型的文本文件,这种攻击模式的主要目标就是盗取网页中的小型文本信息,进而从这些信息中提取相应的用户的隐私信息。第二,对被攻击者进行钓鱼攻击,是由跨站脚本攻击的实施者构造一个假的网页页面或者与原有的网页地址相同的链接,使被攻击者在诱骗下点击链接[4]。第三,是一种在网络蠕虫基础上所实施的跨站脚本攻击,这种攻击模式中包含着发现漏洞、蠕虫传播、蠕虫控制以及蠕虫攻击这四个攻击阶段。这种攻击效果比前两种要更强,能够直接对网页本身造成攻击,在一定程度上扩大了跨站脚本攻击的范围,增加了网页中的安全问题。面对不断提高的跨站脚本攻击技术,相关网页或者网络的安全管理人员,也需要不断的研发防范措施,保证能够给用户提供良好的、安全的网络环境。

3 防范跨站脚本攻击的有效措施

跨站脚本攻击作为一种危害网站以及用户的攻击手段,需要从网站以及用户两处端口进行防范,最大程度的降低跨站脚本攻击的出现可能性,给用户的网络使用带来重要的保障。跨站脚本攻击是利用用户在网站中的活动来进行攻击的,因此首先需要使网页中的程序代码编写变得更加规范,减少跨站脚本漏洞的出现,不再给攻击者能够实施跨站脚本攻击的机会[5]。在编写网页程序中的代码时,需要将用户所提交信息中的个别字符进行过滤,对跨站脚本攻击中经常使用的字符进行严查。在使用这种方式时,需要注意到超文本标识语言所携带的标签,不断的更新用户所不合规则的编码,利用单引号、大于号、小于号等。其次,当网页接受到用户请求之后需要对用户进行反馈,在反馈的过程中需要再次检查用户提交数据中的信息,将用户所输入的一些较为敏感的字符进行替换,例如,>属于一种特殊的编码,在这种情况下可以使用十进制编码来进行替换。最终,对用户能够输入的字符长度进行限制,降低用户使用跨站脚本攻击的几率。

在用户端进行防范时,首先需要用户在主观上有一定的防范意识,不要乱点网页中的提示链接,特别时在浏览网页文章的过程中,不能随意点进链接。其次,可以提高自己所使用的浏览器的安全等级,将浏览器设置为禁止跨站脚本运行,对网页的权限进行限制。用户也需要及时对浏览器进行更新,提升浏览器的防范功能。最后,在电脑中安装防病毒的软件,如防火墙系统,利用这些软件来阻挡跨站脚本攻击[6]。

4 结论

随着各种网络技术以及软件的应用,导致跨站脚本攻击的危害性也被扩大,攻击的后果也逐渐增大。跨站脚本攻击主要是一种利用原本网页中的代码漏洞进而攻击网站以及数据库的手段,对网络健康造成了一定的威胁。这种跨站脚本攻击方式不仅可以对网页中的数据进行盗取,同时还可能会危害到登录网站的用户的安全。个别用户在使用被攻击的网站时,会自动加载攻击者所上传的脚本代码,进而获取到用户的信息。面对这种跨站脚本攻击,需要通过在客户端以及用户端两处进行防范,加大对跨站脚本攻击的防范力度,保证信息的安全性,净化网络环境。

猜你喜欢

脚本攻击者浏览器
酒驾
基于贝叶斯博弈的防御资源调配模型研究
安奇奇与小cool 龙(第二回)
微软发布新Edge浏览器预览版下载换装Chrome内核
反浏览器指纹追踪
正面迎接批判
正面迎接批判
自动推送与网站匹配的脚本
浏览器