浏览器安全 -原理 时序 Render DOM树构建

本文探讨了浏览器安全中的客户端部分,重点关注Edge浏览器的架构和渲染引擎。介绍了EdgeHTML渲染引擎与Chakra JavaScript引擎,并分析了浏览器事件处理时序及DOM树和Render树的构建过程。
摘要由CSDN通过智能技术生成

上一篇机器学习的博客一直没给补完,然而我现在还是想再挖个坑,浏览器安全…
这周先补完,再开个论文总结和翻译系列吧。

言归正传,浏览器安全是归类到web安全中的。

想想安全行业里最多的就是搞Web安全的人,需求略大、门槛略低,以及这算是离“黑客”二字最近的技术了。说起来有些群里那些初高中的少年还真让我很是羡慕,我们都老了,年轻人才是祖国的未来啊~

我以前对Web安全的了解也停留在通过注入啊、上传啊这些手段“拿站”,还有owasp10。实际上它是有一个架构和体系的,总的来说,Web安全可以从客户端安全服务器端安全两方面讨论。

浏览器安全属于Web安全中的客户端安全部分,当然,还有XSS、CSRF、点击劫持等都能算到客户端安全这一类中。而服务端安全包含了SQL注入、文件上传、配置安全、拒绝服务等问题。

分类来自《白帽子讲Web安全》,看看书的目录就能明白,这里就不上图了。

关于浏览器原理的文章:《How browsers work》经典

架构

浏览器大概分为以下几个部分,实际上,不同浏览器如chrome、firefox等的具体实现会有一些区别。

这里写图片描述

用户界面:与用户交互、接受用户操作。
浏览器引擎:提供接口(加载、刷新、后退等),操作渲染引擎。这样渲染引擎就与平台无关,可以移植了

渲染引擎:解析HTML和CSS,完成布局和显示。浏览器的核心,这个是要详细介绍的。

网络:协议解析,网络I/O等
JavaScript解释器:解析JS代码。也有XML的解释器,不单独列出了。
用户界面后端:用于绘制基本小部件(如组合框、窗口)。它暴露不是平台特定的通用接口。其下使用操作系统用户界面方法。
数据存储模块:存cookie、缓存、书签等。


Chrome从修改开源的Webkit,到自己的Blink渲染引擎;Firefox的Gecko;IE的trident。网上或多或少有些资料,可以看到这些内核在实现上、结构上都有一些区别。

去年微软新出了Edge,渲染引擎是EdgeHTML,JS引擎是Chakra,都是新的。其中Chakra已经开源。

比如chrome,从总体结构到各个模块的详细分析,深入研究的资料已经挺多了。所以本文主要对edge进行探索。


Edge分析

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值