资讯专栏INFORMATION COLUMN

About HTML

neroneroffy / 1915人阅读

摘要:在中,元素就是。标签包括一个元素,包括一个文本节点。攻击和注入攻击。解决办法可以判断和是否相等来判断站点是否处于中。

HTML 简介 HTML 历史

最初的 HTMl 是由 CERN 负责制定的,后来转交给 IETF。

在 1990-1995 年期间, HTML 经历了许多次的版本修改与扩充;

1995 年的时候 HTML 的版本更新到了 HTML3.0;1997 年又完成了 HTML3.2;

同年也完成了 HTML4;次年,W3C 决定停止发展 HTML,转向和 XML 等效的 XHTML,XHTML1.0 在 2000 年制订完成;

发布了 XHTML1.0 后,在 XHTML 模块化的旗帜下,W3C 发布了与 HTML 和 XHTML 不兼容的 XHTML2.0;

在 2003 年,XForms 的发布重新点燃了人们对于 HTML 的兴趣,人们意识到 XML 仅仅适合被用作新技术(如 RSS,Atom)的载体,而不适合用来替换现有的技术(如 HTML);

2004 年的 W3C 的研讨会上一些 HTML5 的早期提案被提交给 W3C,但是被 W3C 以该提案与其发展理念相冲突为由给拒绝,于是 W3C 决定继续开发 XHTML;

随后 Apple,Mozilla 和 Opera 一起创建了 WHATWG,版权为三个创始公司所有,WHATWG 的几个基本原则:保持向下兼容,修改规范而不是实现,规范必须足够详细防止实现规范的公司互相去逆向;WHATWG 要求 HTML5 规范包括 HTML4,XHTML1.0 和 DOM2HTML;

2006 年 W3C 表示了对 HTML5 开发的兴趣,在 2007 年和 WHATWG 组建了一个工作组来开发 HTML5 规范,WHATWG 的三个创始人公司也允许 W3C 将 HTML5 规范挂到 W3C 的名义下;

两个团队一起工作了多年,直到 2011 年,两个团队出现了分歧,W3C 希望将 HTML5 定位为 HTML 系列的最后一个规范,而 WHATWG 希望继续改进和迭代 HTML5 规范。两个团队也一起工作到现在。

HTML 的可扩展性

HTML 提供了很广泛的扩展性支持来为 HTML 文档增添语义化的支持:

使用 class 属性来拓展元素的含义与行为,但是使用更加符合语义的元素可以帮助游览器以及其它插件更好的识别出元素所代表的含义与行为。

使用 data-*="" 来将数据绑定到元素上,HTML 也提供了相应的 API 来查询和修改这些数据。

使用 来定义元数据。

使用 rel="" 注明扩展文档的预定义类型。

使用

HTML 本身是独立于与其交互的媒体的。HTML 可能会被渲染到屏幕,语音合成器,或者在盲文显示屏上。为了控制在不同的媒体上需要 HTML 被展示成什么样子,你需要样式语言(如:CSS)。



 
  Sample styled page
  
 
 
  

Sample styled page

This page is just a demo.

HTML 安全

HTML 在样式语言和脚本语言的作用下变得可以交互之后,一堆安全问题也随之出现;Web 安全模型是基于源("origins")的概念;许多 Web 攻击都是和跨域相关。

XSS 攻击和 SQL 注入攻击。

XSS 通过向 HTML 注入脚本或其他用户代理能识别的信息来改变 HTML;如果这段注入能被保存的话,其他用户会受到降维打击;

SQL注入 常常利用表单的提交将输入信息提交到 Web 服务器后,在将信息保存到数据库时,由于代码没有过滤输入可能会导致攻击者修改数据库中的信息。

解决方法:过滤用户输入,以及用户信息的输出。

CSRF 攻击

由于 HTML 表单的提交可以发生在任意的站点上,并且提交会附带上对应站点的 cookie;因此当用户访问某些恶意站点时,站点可以偷偷提交用户访问过的一些网站(如购物网站)的 HTML 表单;使得用户在无意识中受到降维打击。

解决方法:Web 服务器检查提交的站点的 Origin 字段是否来自于收信任的站点,否则应该拒绝;由于攻击方只是利用用户代理在提交表单时会提交 cookie,本身并不知道 cookie 的值,因此可以在表单里加上一段隐藏 token 来来验证是否是本站点的提交,隐藏 token 可以是 cookie 哈希后得到。

点击劫持

恶意占地那利用一些信息诱导用户点击,然后触发一些用户不希望看到的行为。

如:用户进入一个网站,显示一个游戏,有一个开始按钮,当用户点击后可能被诱导至购物网站;或者将受害网站放在一个 iframe 里,当用户点击时,迅速将 iframe 移动至鼠标下方。

解决办法:可以判断 top 和 window 是否相等来判断站点是否处于 iframe 中。

最后

荆轲刺秦王~

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/50996.html

相关文章

  • 一步步从零开始学习vue-router

    摘要:前言一个包含的简单,从第一个开始,依次深入学习,即可快速上手强大的。 前言 一个包含 vue-router的简单demos,从第一个demo开始,依次深入学习,即可快速上手强大的vue-router。 如何使用 安装模块pure 或 http-server来启动服务器npm install -g puer or npm install -g http-server 克隆仓库 启动服...

    Cobub 评论0 收藏0
  • webpack4+react多页面架构

    webpack在单页面打包上应用广泛,以create-react-app为首的脚手架众多,单页面打包通常是将业务js,css打包到同一个html文件中,整个项目只有一个html文件入口,但也有许多业务需要多个页面不同的入口,比如不同的h5活动,或者需要支持seo的官方网站,都需要多个不同的html,webpack-react-multi-page架构让你可以实现多页面架构,在项目开发中保证每个页面...

    liuyix 评论0 收藏0
  • webpack4+react多页面架构

    webpack在单页面打包上应用广泛,以create-react-app为首的脚手架众多,单页面打包通常是将业务js,css打包到同一个html文件中,整个项目只有一个html文件入口,但也有许多业务需要多个页面不同的入口,比如不同的h5活动,或者需要支持seo的官方网站,都需要多个不同的html,webpack-react-multi-page架构让你可以实现多页面架构,在项目开发中保证每个页面...

    Barrior 评论0 收藏0
  • 最终篇:简洁易懂,初学者挑战学习Python编程30天 (五)

    摘要:和是最受欢迎的。虚拟环境将允许将项目依赖项与本地机器依赖项隔离开来。文件将是项目中的主文件。运行后,检查本地主机。在中创建一个名为的文件夹,并创建一个名为的文件夹。部署创建帐户为前端和全栈应用程序提供免费部署服务。 ...

    1fe1se 评论0 收藏0
  • vue.js 异步组件

    摘要:使用时才装入需要的组件,可以有效的提高首次装入页面的速度。比如在路由切换时异步组件的实现允许将组件定义为一个工厂函数,动态地解析组件的定义。组件和首页同步加载,而组件则按需加载。 使用时才装入需要的组件,可以有效的提高首次装入页面的速度。比如在路由切换时 异步组件的实现 Vue.js允许将组件定义为一个工厂函数,动态地解析组件的定义。工厂函数接收一个resolve回调,成功获取组件定义...

    XanaHopper 评论0 收藏0

发表评论

0条评论

neroneroffy

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<