中文站长

 找回密码
 立即注册

浅谈 JavaScript DDoS 攻击原理与防御

[复制链接]
发表于 2015-5-22 18:33:03 | 显示全部楼层 |阅读模式
散布式谢绝效劳进犯(DDoS)进犯是一种针对网站倡议的最陈旧最遍及的进犯。Nick Sullivan是网站减速和平安效劳供给商CloudFlare的一位系统工程师。近日,他撰文引见了进犯者若何操纵恶意网站、效劳器劫持和中心人进犯 倡议DDoS进犯,并申明了若何使用HTTPS和行将到来的名为 子资本分歧性(Subresource Integrity,简称SRI) 的Web新手艺庇护网站免受进犯。
现代网站的大部门交互都来自于JavaScript。网站经由过程间接向HTML中增加JavaScript代码或经由过程HTML元 素 script src= " 从近程位置加载JavaScript完成交互功用。JavaScript可以发出HTTP(S)要求,完成网页形式异步加载,但它也 能将阅读器酿成进犯者的兵器。例如,上面的代码可以向受进犯网站发出洪水般的要求:
function imgflood() {
var TARGET = 'victim-website.com'
var URI = '/index.php?'
var pic = new Image()
var rand = Math.floor(Math.random() * 1000)
pic.src = 'http://'+TARGET+URI+rand+'=val'
setInterval(imgflood, 10)
上述剧本每秒钟会在页面上建立10个image标签。该标签指向 victim-website.com ,并带有一个随机查询参数。若是用户拜候 了包括这段代码的恶意网站,那末他就会在不知情的情形下介入了对 victim-website.com 的DDoS进犯,以下图所示:
许多网站都使用一套通用的JavaScript库。为了节约带宽及提高功能,它们会使用由第三方托管的JavaScript库。jQuery是 Web上最风行的JavaScript库,截至2014年大约30%的网站都使用了它。其它风行的库还有Facebook SDK、Google Analytics。若是一个网站包括了指向第三方托管JavaScript文件的script标签,那末该网站的一切拜候者城市下载该文件并履行它。如 果进犯者攻下了这样一个托管JavaScript文件的效劳器,并向文件中增加了DDoS代码,那末一切拜候者城市成为DDoS进犯的一部门,这就是效劳 器劫持,以下图所示:
这类进犯之所以有用是由于HTTP中贫乏一种机制使网站可以或许制止被改动的剧本运转。为领会决这一成绩,W3C已建议增添一个新特征子资本分歧性。该特征许可网站告知阅读器,只要在其下载的剧本与网站进展运转的剧本分歧时才干运转剧本。这是经由过程密码散列完成的,代码以下:
script src="https://code.jquery.com/jquery-1.10.2.min.js"
integrity="sha256-C6CB9UYIS9UJeqinPHWTHVqh/E1uhG5Twh+Y5qFQmYg="
crossorigin="anonymous"
密码散列可以唯一标识一个数据块,任何两个文件的密码散列均不不异。属性integrity供给了网站进展运转的剧本文件的密码散列。阅读器鄙人载 剧本后会计较它的散列,然后将得出的值与integrity供给的值停止比力。若是不婚配,则申明方针剧本被改动,阅读器将不使用它。不外,许多阅读器目 前还不撑持该特征,Chrome和Firefox正在增添对这一特征的撑持。
中心人进犯是进犯者向网站拔出恶意JavaScript代码的最新体例。在经由过程阅读器拜候网站时,中心会经由许多节点。若是肆意中心节点向网页增加恶意代码,就构成了中心人进犯,以下图所示:
加密手艺可以完全阻断这类代码注入。借助HTTPS,阅读器和Web效劳器之间的一切通讯都要经由加密和考证,可以避免圈外人在传输进程中点窜网页。是以,将网站设为HTTPS-only,并保管好证书和做好证书考证,可以有用避免中心人进犯。
在答复网友评论时,Nick指出,SRI和HTTPS是相反相成的,两者同时使用可觉得网站供给更好的庇护。除上述方式外,采取一些防DDoS平安产物来增强防护也是一种挑选。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|中文站长

站长网 WWW.MSNZZ.COM 版权所有 All Rights Reserved.

MSN站长网

WWW.MSNZZ.COM中文站长

快速回复 返回顶部 返回列表