HTML5安全

HTML5安全详解 HTML5诞生于2014年10月,它是目前最新的HTML规范。HTML5诞生的目的是为了迎合新时代Web环境的需求,在将来的日子里,它也将逐步替换HTML 4.01和XHTML 1.0标准,然而新功能也会伴随着新威胁。 阅读详情

HTML5安全

1. H5新标签

1.1 iframe的sandbox

<iframe>标签一直受人诟病。浏览器也在想办法限制<iframe>执行脚本的权限。
而H5中专门为<iframe>设置了sandbox属性,<iframe>将被视为一个独立的源,可以通过属性参数来支持更加精准的控制:

  • allow-same-origin:同源访问
  • allow-top-navigation:访问顶层窗口
  • allow-forms:提交表单
  • allow-scripts:执行脚本

诸如‘弹出窗口’这种行为,即使设置了allow-scripts,也不会被允许

1.2 Link Types: noreferrer

这是H5中,为<a> and <area>标签定义的新的Link Types,指定后,浏览器在请求该标签时,不在发送referer,因为通过referer可能会泄漏一下敏感信息

<a href=“xxx” rel=“noreferrer”>xxx</a>

1.3 Canvas的妙用

<Canvas> 不同于<img>标签只是远程加载一张图片,而是可以让js可以在页面中直接操作图片对象,也可以通过操作像素来构造出图片区域。开发者甚至可以在<canvas>中写一个小游戏。

<Canvas>甚至可以用来破解验证码。详细:《白帽子》p142.

2. 其他安全问题

2.1 Cross-Origin Resource Sharing

浏览器同源策略通过限制脚本的跨域请求,虽然解决了一定的安全问题,但是互联网的发展趋势是越来越开放的,而同源策略给web开发者带来了很多困扰。

W3C委员会制定了一个新的标准来解决日益迫切的跨域访问的问题:
简单来说,就是当www.a.com的一个页面发起一个跨域请求,请求地址为www.b.com的一个页面,如果www.b.com返回一个包含允许a网站访问的HTTP Header,那么这个跨域请求就会被通过。

具体细节和抓包分析:《白帽子》P145

Origin Header用于标记HTTP的“源”,来判断浏览器的请求是否来自一个合法的“源”。可以用于防范CSRF,它不像referer那么容易被伪造和清空。

2.2 postMessage —— 跨窗口传递消息

window这个对象几乎是不受同源策略限制的,可以利用window.name跨窗口、跨域来传递消息。
在H5中,为了丰富web开发者的能力,指定了postMessage这一新的API,postMessage允许每一个window(包括当前窗口、弹出窗口、iframe等)对象往其他窗口发送文本消息,从而实现跨窗口的消息传递

发送窗口:

<iframe src=“xxx” id=“iframe”></iframe>
<form id=“form”>
    <input type=”text” id=“msg” value=”Message to send“/>
    <input type=“submit />
</form>
<script>
    window.onload= function(){
        var win= document.getElementById(“iframe”).contentWindow;
        document.getElementById(”form“).onsubmit=function(e){
            win.postMessage(document.getElementById(”msg“).value);
            e.preventDefault();
        };
    };
</script>

接收窗口:

<b>this iframe is located on xxx</b>
<script>
    document.addEventlistener(“message”, function(e){
        document.getElementById(“test”).textContent = e.domain + “said: ” + e.data;
    }, false);
</script>

在这个例子中:
发送窗口负责发送消息;
在接收窗口中,需要绑定一个message事件,监听其他窗口发来的消息。
这是两个窗口之间的一个“约定”,如果没有监听这个事件,则无法接收到消息。

在使用postMessage时,有两个安全问题需要注意。

  1. 在必要时,可以在接收窗口验证 Domain,甚至验证URL,以防止来自非法页面的消息。代码中实现一次同源策略的验证过程。
  2. 在本例中,接收的消息写入textContent,但在实际应用中,如果将消息写入innerHTML,甚至直接写入 script中,则可能会导致DOM based XSS的产生。根据“Secure By Default”原则,在接收窗口不应该信任接收到的消息,而需要对消息进行安全检查。

2.3 Web Storage

[暂略]

工业组态软件Intouch(单机版)入门{第一篇} 通俗来讲Intouch就是一个能将PLC里的信号显示在画面上的软件。 阅读详情

相关推荐

时间同步中 TOD 与GPRMC和IRIG-B的区别

时间同步中 TOD 与GPRMC和IRIG-B的区别

ftdlk的博客 1730

事件之HTML5事件

一 定义 DOM 规范并未涵盖浏览器都支持的所有事件。很多浏览器根据特定的用户需求或使用场景实现了 自定义事件。HTML5 详尽地列出了浏览器支持的所有事件 二 事件 1、contextmenu 事件 定义:以专门用于表示何时该显示上下文菜单,从而允许开发者取消默认的上下文菜单并提供自定义菜单 事件冒泡:只要给 document 指定一个事件处理程序就可以处理页面上的所有同类事件。事件目标是触发操作的元素。 事件取消 在 DOM 合规的浏览器中使用 event.preventDefaul.

xiaoyangzhu的博客 1206

RT-Thread与LWIP协议栈在GD32F450XX上的移植实战:从FreeRTOS到RT-Thread的切换指南

本文详细介绍了将LWIP协议栈从FreeRTOS移植到RT-Thread系统,并在GD32F450XX开发板上实现的完整实战指南。重点解析了sys_arch适配层、邮箱与信号量接口的关键改造,以及网络驱动ethernetif.c的适配步骤,帮助开发者解决线程通信差异,实现稳定网络连接。

linux6sysadmin的博客 825

addeventlistener事件参数_HTML5拖拽事件

HTML5拖拽事件1. 设置拖拽图片自带拖拽功能其他元素可设置draggable属性<div draggable="true"> div>例子:box.ondragend = function (e) { box.style.cssText = 'top:' + (e.clientY) + 'px;left:' + (e.clientX) + 'px'}1....

weixin_39856630的博客 1209

ANSYS 12.1避坑全记录:当Win7+VMware14遇到FLEXlm报错时的自救指南

本文详细介绍了在Windows 7和VMware14环境下安装和运行ANSYS 12.1时遇到的FLEXlm报错问题及其解决方案。通过虚拟机技术隔离时间同步问题,提供从环境配置到许可证管理的完整指南,帮助用户稳定运行这一老旧版本的工程仿真软件。

tt34567的博客 647

ANSYS FLUENT 超临界流体物性分段线性插值数据批量导入

使用fluent自带数据库进行超临界流体仿真时,时不时会出现计算错误,考虑是数据库不稳定引起,而使用自定义的分段线性插值物性则不会出现上述情况。 超临界流体在拟临界点附近物性变化剧烈,需要使用较多的数据点才能更准确的表述物性,如果是在对话框中修改,一次只能输入一个点,人工输入极其费时费力且容易失误。 数据批量导入方法为: 1.以CO2为例,使用REFREPRO等物性查询软件或数据资料,获得所需物性数据表。 2.在FLUENT材料Materia...

wind_rider的博客 1万+

html学习 - javascript事件监听以及addEventListener参数分析

事件监听 在Javascript中事件的监听是用来对某些操作做出反应的方法。例如监听一个按钮的pressdown, 或者获取鼠标左键按下时候鼠标的位置。这些都需要使用监听来完成。监听的函数很简单:addEventListener. 这里解释一下一个网页的嵌套关系:最外层:window 包含:document 包含:html 包含: body 包含:div等等... addEventL

累了就歇一会 7728

知识图谱初步学习(一)——本体+Protege新手学习

文章目录前言(本体详解)1.本体概念2.本体分类3.本体组成4.本体构建方法一、protege简介二、软件使用步骤1.安装2.使用三、问题解决方案汇总 前言(本体详解) 在开始学习知识图谱的过程中,首先就是要了解什么是本体(ontology)。 1.本体概念 本体的概念最初源自于哲学领域,在哲学中的定义为“对世界上客观事物的系统描述,即存在论”。哲学中的本体关心的是客观现实的抽象本质。而在计算机领域,本体是可以在语义的层次上来对知识进行描述,可以看做是某一个领域知识的通用模型。 本体是从客观世界中抽象出来

qq_43654669的博客 3万+

H5之12__触摸与单击:基本的事件处理

在HTML5中, 如果基于鼠标的界面互动是单击, 触摸界面的基本交互方式就是 轻触. 一. 轻触与单击有相似之处, 但是也有不同. 即使触摸设备(例如: 手机) 没有鼠标,它们的浏览器仍然会触发鼠标事件, click, mouseover, mousedown 和 mouseup 都还会被触发。 二 移动浏览器有四种类型的触摸事件 事件名称 描

daozhongyang的专栏 8446

LLM的MCP协议:初识MCP,搭建第一个MCP Server

MCP(Model Context Protocol),是一个开发的协议,标准化了应用程序如何为大模型提供上下文。MCP提供了一个标准的为LLM提供数据、工具的方式,使用MCP会更容易的构建Agent或者是基于LLM的复杂工作流。

Criss@陈磊 2万+

PoE 的三大国际标准:PoE、PoE+、PoE++

很多人知道 PoE 能“一根网线,既供电又传数据”,但鲜少有人能说清楚:PoE 供电到底分几种标准?差别有多大?哪些设备要用 PoE,哪些必须上 PoE+ 或 PoE++?今天,我们就来一次彻底的“拆解”,把 PoE 的三大国际标准——讲得明明白白,顺便也帮你厘清网络工程中的常见“供电疑惑”。

网络技术联盟站 1551

HTML5+ document.addEventListener('plusready'不执行解决办法!!!

// 这里可以调用5+ API了,为了更好的兼容性,应该使用以下代码进行判断 if(window.plus){ // 在这里调用5+ API }else{// 兼容老版本的plusready事件 document.addEventListener('plusready',function () { // 在这里调用5+ API },false)...

YingDaoMonkey的博客 9846

Python控制TEMI1000/TEMI1500测试温箱

该温箱是我司从昆山振弘检测设备有限公司采购的TEMI 1000,但是控制器用的是韩国的,关于控温箱这个项目,可参考的资料仅有一份官方的manual,里面包含一些命令格式。只要你有温箱,就应该可以向厂家索取该文档。该温箱的通讯接口只有一个RS232接口,要想实现远程控制,需要有串口转USB的线;类似于下图所以,想依靠python来与之进行通信,还是要通过python 的pyserial库,关于怎么安装pyserial,过于简单,这里不做赘述,可自行百度。

xgh1951的博客 1万+

《关注HTML5安全》

在今天的2012中国软件开发者大会上,我做了名为《关注HTML5安全》的主题演讲。我个人认为,随着HTML5的普及和发展,HTML5的安全会成为近期带来的严重问题。之所以大家还没有感受到的原因是什么?1、目前HTML5应用还不普及 2、暂时还没有吸引攻击者的关注。        演讲摘要如下(来自优快云专题):        -----------        我首先介绍了从HTML到HTML

蒋宇捷的专栏 1万+

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

HTML 5 安全

新标签的XSS HTML5 定义了很多新的标签、事件,这有可能带来新的XSS攻击。 一些XSS Filter 如果建立了一个黑名单的话,则可能就不会覆盖到HTML5新增的标签和功能,从而避免发生XSS。 笔者曾经在百度空间做过一次测试,使用的是HTML5新增的<video>标签,这个标签可以在网页中远程加载一段视频。与<video>标签类似的还有<audio&g...

weixin_40270125的博客 778

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

【Web安全】HTML5安全

HTML5是互联网未来的大势所趋,随着越来越多的浏览器支持HTML5,攻击面也发生了新的变化。攻击者可以利用HTML5中的一些特性,绕过防御方案,达到攻击目的。

RexHa的博客 1690

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

HTML5安全攻防详析之完结篇:HTML5对安全的改进

HTML5对旧有的安全策略进行了非常多的补充。        一、iframe沙箱        HTML5为iframe元素增加了sandbox属性防止不信任的Web页面执行某些操作,例如访问父页面的DOM、执行脚本、访问本地存储或者本地数据库等等。但是这个安全策略又会带来另外的风险,这很有趣,例如ClickJacking攻击里阻止JavaScript脚本的运行来绕过JavaScript的防御方

蒋宇捷的专栏 1万+

5个html5的安全性问题

在大家都在强调html5有多好,都在瞩目html5/css3的时候,html5也被曝出了可能存在的几个安全性的问题 ,这事html5本身优秀的标准的背后存在的一系列的并发症问题,但是并不影响html5的标准规范对未来的影响,我们只需要知道并且加以防范就可以了。     下面的内容并没有使用什么特别的顺序,我们要介绍五种可能会利用HTML5的功能进行攻击的方法:   5, 表单篡改

1109

html5安全,HTML5对安全的改进 HTML5安全攻防详析终结篇

HTML5对旧有的安全策略进行了非常多的补充。一、iframe沙箱HTML5为iframe元素增加了sandbox属性防止不信任的Web页面执行某些操作,例如访问父页面的DOM、执行脚本、访问本地存储或者本地数据库等等。但是这个安全策略又会带来另外的风险,这很有趣,例如ClickJacking攻击里阻止JavaScript脚本的运行来绕过JavaScript的防御方式。二、CSP内容安全策略XSS...

weixin_29301059的博客 283

html5域名污染,HTML5 安全问题解析

HTML5 安全问题解析标签: html html5 web安全本文参考:w3school:html5相关基础知识(w3school.com.cn)51CTO的HTML5安全专题FREEBUFF上有关HTML5的安全文章(FREEBUFF搜索关键词:html5)相关技术博客和杂文(百度搜索关键词:html5 安全)文章概要:html5相关新技术跨域资源共享(CORS)安全问题本地数据库注入(Web...

weixin_42360711的博客 332

HTML5的安全挑战

<br />应用程序安全专家表示,HTML5给开发人员带来了新的安全挑战。<br />  苹果公司与Adobe公司之间的口水战带来对HTML 5命运的诸多猜测,尽管HTML 5的实现还有很长的路要走,但可以肯定的一点是,运用HTML 5的开发人员将需要为应用程序安全开发生命周期部署新的安全功能以应对HTML5带来的安全挑战。<br />  那么HTML5将会对我们需要覆盖的攻击面带来怎样的影响?本文将探讨关于HTML 5几个重要安全问题。<br />客户端存储<br />  早期版本的HTML仅允许网站将c

流年似水 375

HTML5代替Cookie? HTML5本地存储安全性

HTML5代替Cookie? HTML5本地存储安全性 在HTML5本地存储出现以前,WEB数据存储的方法已经有很多,比如HTTP Cookie,IE userData,Flash Cookie,Google Gears。其实再说细点,浏览WEB的历史记录也算是本地存储的一种方式。到目前位置,HTML5本地存储方式已经获得了广泛的支持,其中支持的浏览器包括:IE 8+、FF 3.5+

清风的专栏 1514

《白帽子讲Web安全》| 学习笔记之HTML5安全

第6章 HTML5安全 1、新标签的XSS HTML5中新增的一些标签和属性,使得XSS等Web攻击产生了新的变化。有安全研究员建立了一个HTML5 Security Cheatsheet项目。(链接:https://www.owasp.org/index.php/HTML5_Security_Cheat_Sheet或http://html5sec.org/) 2、iframe的sandbo...

qq_42646885的博客 6189
上一篇: ClickJacking点击劫持
下一篇: <密码学应用>基础知识
5mack
博客等级 码龄10年 218粉丝 18原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值