• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com专业计算机教程网站
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure
您的位置:首页 > 网页设计 >html5 > 界面操作劫持与HTML5安全的图文详解

界面操作劫持与HTML5安全的图文详解

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-12-03

本文主要包含界面操作劫持,HTML5安全等相关知识,匿名希望在学习及工作中可以帮助到您

一、界面操作劫持

1)ClickJacking

ClickJacking点击劫持,这是一种视觉上的欺骗。

攻击者使用一个透明的、不可见的iframe,覆盖在网页的某个位置上,诱使用户点击iframe。

2)TapJacking

现在移动设备的使用率越来越高,针对移动设备的特点,衍生出了TapJacking(触屏劫持)。

手机上的屏幕范围有限,手机浏览器为了节约空间,可以隐藏地址栏,手机上的视觉欺骗会更加容易实施。

1. 第一张中最上方显示了浏览器地址栏,同时攻击者在页面中画出了一个假的地址栏;

2. 第二张中真实的浏览器地址栏已经自动隐藏了,此时页面中只剩下假的地址栏;

3. 第三张中是浏览器地址栏被正常隐藏的情况。

这种针对视觉效果的攻击可以被利用进行钓鱼和欺诈。

3)X-Frame-Options

针对传统的界面劫持,通过禁止iframe来防范。

HTTP头中有一个响应头X-Frame-Options,有三个值可以选择:

1. DENY:该页面不允许加载任何 iframe页面。

2. SAMEORIGIN:该页面可以加载相同域名的 iframe页面。

3. ALLOW-FROM uri:该页面可以加载指定来源的 iframe页面。

二、HTML5安全

HTML5中新增的一些标签和属性,使得XSS等Web攻击产生了新的变化,在HTML5 Security Cheatsheet中总结了这些变化。

1)隐藏URL恶意代码

反射型XSS中,会将恶意代码写在URL参数中,这样的话,用户也能看到恶意代码,例如下面的链接:

http://www.csrf.net/csrf.html?id=<script>111</script>

可以通过window.history来操作浏览器的历史记录。

pushState()有三个参数:状态对象、标题,可选的URL地址。

history.pushState({},"", location.href.split('?').shift());

执行上面那段代码后就会将参数隐藏。

新的URL地址就是下面这个:

“pushState”还可以伪造浏览器历史记录。

for(i=0; i<10; i++)
    history.pushState({},"", "/"+i+".html");

2)HTML5下的僵尸网络

僵尸网络(Botnet)是指在大量的计算机中植入特定的恶意程序,使控制者能够通过若干计算机直接向其他计算机发送指令,进行网络攻击。

基于Web前端的僵尸网络可以用作DDOS攻击,这里涉及Web Worker技术和CORS处理机制,再通过Web蠕虫传播。

Web Worker是一种多线程机制,可以异步执行恶意JS代码,而不影响用户在浏览器中的正常操作。

CORS处理机制工作在浏览器层面,如果服务器不允许跨站,浏览器将拦截服务器返回的结果,也就是说跨域请求,服务器也会正常响应。

那么就可以事先写好一段异步请求的脚本(worker.js),然后通过Web Worker来执行这段脚本,不断的向目标服务器发起请求。

var worker_loc = 'worker.js';//封装了ajax请求的脚本
var target = ' 
//可实例化多个
Web Workervar workers = [];for (i = 0; i < 1; i++) {
      workers[i] = new Worker(worker_loc);
      workers[i].postMessage(target);//跨域消息传递}

以上就是界面操作劫持与HTML5安全的图文详解的详细内容,更多请关注微课江湖其它相关文章!

您可能想查找下面的文章:

  • 界面操作劫持与HTML5安全的图文详解

相关文章

  • 2018-12-03WebGL2.0标准的发展和普及如何?
  • 2018-12-03如何评价Hex FRVR?
  • 2018-12-03有哪些使用 HTML5 技术开发的、基于移动平台的网页游戏站点?
  • 2018-12-03HTML5实战与剖析之一行一行看移动端结构
  • 2018-12-03移动端的头部标签的使用方法
  • 2018-12-03JS之原生数组splice方法实例
  • 2018-12-03极客学院HTML5新特性基础视频课件源码
  • 2018-12-03H5实现拖拉上传文件
  • 2018-12-03HTML5 Canvas图像模糊如何解决
  • 2018-12-03html5实现文字轮滚的示例代码

文章分类

  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure

最近更新的内容

    • HTML5 canvas画布详解(五)
    • HTML5安全介绍之内容安全策略(CSP)简介
    • 如何解决滚动条样式问题
    • html5的history API
    • 实例讲解使用HTML5 Canvas绘制阴影效果的方法_html5教程技巧
    • HTML5边玩边学(1)画布实现方法
    • 快速搭建TP-LINK电信拓扑设备面板基于HTML5的实现方法
    • H5的定时器requestAnimationFrame使用技巧
    • 女,人力资源岗位,毕业5年,想转行web前端?
    • HTML5 Canvas动画效果图文代码演示

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有