https加密流程和公理,360浏览器推出自有根证书安

作者: 财经新闻  发布:2019-06-16

中新网12月18日电 在12月17-18日召开的2018网络空间可信峰会上,360 PC浏览器事业部总经理梁志辉公布360浏览器将创建自有根证书计划,全面提升用户上网的安全性。这是距谷歌宣布推出自有CA根证书后,国内首家创建自有根证书的浏览器厂商。

其实,我对https以前只有一个大概的了解,最近工作中遇到一个问题从而将https协议做了一个彻底的学习和认知,下边介绍一下我的个人认识,我不一定按照很官方的语句去表达,本人喜欢用通俗易懂的语言描述问题,目的是让人理解 那么,首先,https协议是什么,一句话,https=http ssl安全传输协议 ca身份认证;https是http的安全版,它不仅涵盖http协议,而且加入了ssl安全加密传输协议保证数据传输的安全性,ca身份认证则验证服务器域名是否是真实可靠的

图片 1360 PC浏览器事业部总经理梁志辉发表演讲

1,下面,用一幅图展示一下https建立连接的整个过程

梁志辉表示,360浏览器今年正式将证书安全纳入浏览器的防护体系。目前,360浏览器已将不加密的http标记为“不安全”。从今年底开始,360浏览器将通过红色锁头,标记http网站为“不安全”网站,2019年会将所有http开头的网址标记为“不安全”,如果用户登录带密码表单的http网页,浏览器还会使用弹出式提醒。同时,360浏览器支持国密算法,支持国密双向证书校验,希望保障我国自主密码算法的应用推广和平稳过渡。

①客户端的浏览器向服务器传送客户端SSL 协议的版本号,加密算法的种类,产生的随机数,以及其他服务器和客户端之间通讯所需要的各种信息。

图片 2360浏览器通过红色锁头和弹出式提醒标记当前http网站不安全

②服务器向客户端传送SSL 协议的版本号,加密算法的种类,随机数以及其他相关信息,同时服务器还将向客户端传送自己的证书。

而在CA监管方面,360浏览器的根证书计划默认信任操作系统已信任的根证书,同时也会配置自己的根信任库作为系统根信任库的补充。360浏览器为使用web服务器的终端用户证书用于SSL/TLS认证公布了认证策略,360官方负责人将维护这一策略并评估来自CA的新请求,对于不符合策略的CA机构,360有权移除任何证书,甚至包括操作系统信任的根证书。

③客户利用服务器传过来的信息验证服务器的合法性,服务器的合法性包括:证书是否过期,发行服务器证书的CA 是否可靠,发行者证书的公钥能否正确解开服务器证书的“发行者的数字签名”,服务器证书上的域名是否和服务器的实际域名相匹配。如果合法性验证没有通过,通讯将断开;如果合法性验证通过,将继续进行第四步。

黑客攻击手段多元化及与之对应的安全措施与加密算法的过时、未全站部署SSL证书、不受监管的CA机构,种种因素严重影响个人用户和商用用户的网络使用安全性。虽然此次360浏览器宣布了根证书计划,梁志辉认为这需要整个行业的更多重视与合作,在网络空间可信峰会上,他呼吁网站开发者及行业给予支持及投入,共同推动CA认证的技术改造。

④用户端随机产生一个用于后面通讯的“对称密码”,然后用服务器的公钥(服务器的公钥从步骤②中的服务器的证书中获得)对其加密,然后传给服务器。

此外,CABO论坛(即电子认证机构-浏览器-操作系统论坛)于会上正式启动。该论坛为一个非盈利讨论组,将推进CA根证书在操作系统的预置与应用,协调浏览器企业统一安全传输层协议使用细节。其成员包含第三方CA机构,浏览器厂商,操作系统开发企业以及关注根证书预置事项的机构。360浏览器已宣布加入。CABO参照国际CAB论坛而成立,旨在推动我国电子认证技术安全应用的发展,同时争取国际话语权。

⑤服务器用私钥解密“对称密码”(此处的公钥和私钥是相互关联的,公钥加密的数据只能用私钥解密,私钥只在服务器端保留。然后用其作为服务器和客户端的“通话密码”加解密通讯。同时在SSL 通讯过程中还要完成数据通讯的完整性,防止数据通讯中的任何变化。

图片 3360 PC浏览器事业部总经理梁志辉出席CABO启动仪式

⑥客户端向服务器端发出信息,指明后面的数据通讯将使用的步骤⑤中的主密码为对称密钥,同时通知服务器客户端的握手过程结束。

网络劫持现象高发 SSL证书亟需更科学的管理机制

⑦服务器向客户端发出信息,指明后面的数据通讯将使用的步骤⑤中的主密码为对称密钥,同时通知客户端服务器端的握手过程结束。

随着黑客攻击手段的层出不穷,网络劫持现象愈演愈烈,且手段日益升级。十年前,恶意软件只会用最简单粗暴的方式修改浏览器首页用于牟利;而现在,黑客静悄悄躲在网络背后,利用更加高明的手段使人难以察觉安全威胁,例如通过http或dns网络劫持进行中间人攻击,在网站挂马或者挂弹窗广告;利用浏览器和flash的0 day漏洞,加载含有越权漏洞的代码来控制计算机系统;甚至通过网页脚本,用访问恶意网页的计算机进行挖矿等。

⑧SSL 的握手部分结束,SSL 安全通道的数据通讯开始,客户和服务器开始使用相同的对称密钥进行数据通讯,同时进行通讯完整性的检验。

与此同时,目前国内仍有多数网站开发者对此重视不够,并缺乏相对应的安全措施。比如有大量网站未支持SSL证书,更有不少网站仅支持http访问,使用明文网络协议传输敏感信息。在黑客面前,用户传输的明文数据没有任何安全机制,如同裸奔,因而在传输过程中极易被劫持导致账户丢失。

这里有几个问题: (1)请注意第2步时,当服务器给客户端返回自己的证书时,证书包含三部分内容,公钥、名称、数字签名等信息;注意数字签名是加密的,数字签名是用颁发机构的私钥对本证书的公钥,名称以及其他信息做hash散列加密而成的,所以客户端需要解密数字签名来验证该证书是否是合法可靠的,那怎么解密呢,客户端浏览器会找到该证书的根证书颁发机构,然后在本机上的证书管理器里寻找 那些受信任的根证书颁发机构列表是否有该证书的根证书颁发机构,如果有,则用该根证书的公钥解密服务器下发的证书 a,如果不能正常解密,则服务器下发的证书则被认为是伪造的,浏览器弹出提示框 b,如果能正常解密,则获取到公钥,名称,数字签名信息跟本身的公钥等其他信息比对一下,确认公钥没有被篡改,如果公钥不一致,则依然被认为是不可信的 因此客户端验证服务器的合法性取决于公钥,而公钥的合法性取决于ca证书颁发机构的合法性,这里会形成一个信任链,而终点则是CA根证书,根证书是CA机构自己办法给自己的,根证书是一个特殊的数字证书,公钥是公开的,而私钥是被CA机构保存在硬件中的,所以证书的安全性取决于你对该CA机构的信任,反过来说,加入CA机构的密钥被窃取,那么该CA机构颁发的所有证书将会存在灾难性安全问题; 就像你验证身份证是否真实,肯定去公安局验证,那么谁来保证公安局是合法可靠的呢,没人能保证,公安局自己生命自己是合法可靠的,就这么简单 (2)ok,上边扯了那么多,无为就为了一个目的,客户端根据服务器下发的证书验证了服务器是真实可靠的,然后进入第3步,客户端生成一个密钥,就是对称加密算法的密钥用于加密后续的数据传输

此外,糟糕的加密算法和使用过时的浏览器内核也让普通网民上网时危机四伏。尽管所有安全措施都实施了,但是漏洞有可能会由底层密码算法套件引入。而使用并未及时更新内核的浏览器,也使用户在上网过程中遭遇高危漏洞的概率大为上升。

总结一下,https传输在建立连接时使用的是非对称加密算法,一旦连接建立完成,有后续的通讯则使用了对称加密算法,这样做的好处是有利于数据传输效率,众所周知非对称加密算法的性能很差劲,你懂得。

图片 4国内主要浏览器内核对比

2,好了,上边我们介绍了https的通信流程,那么对于https通信是否就真的很安全呢,这种协议是否有问题呢,例如服务器证书是否可以被伪造呢,客户端是否有可能被欺骗呢,答案是肯定的,我们接下来介绍几种常见的攻击手段。

然而,使用SSL证书就足够安全了吗?未必。近年来全球范围内屡次爆出赛门铁克等CA机构未经授权错误签发大量SSL证书的事件,也让传统老牌CA机构的权威性和安全性频频遭遇信任危机。

1)一个合法有效的SSL证书误签发给了假冒者

目前https的身份校验体系基于公钥基础设施体系,在这个基础上CA机构的角色被假设为可信且安全的。然而近年来CA机构事故频发:2013年斯诺登泄漏的文件指出,美国NSA利用一些CA颁发的伪造证书截取并破解大量加密https流量;2017年发生的赛门铁克证书门,Google Chrome发现赛门铁克错误签发3万张https证书,最终导致国际五大浏览器厂商对其同时发布不信任计划。如今各个CA机构新增和吊销的证书已呈现一定数量级,证书滥发、错发、无意信任等情况时有发生,证书可信性、真实性无法得到及时有效的检验。为此,CA机构已经实现了一些更好的管理方法,但有时候很难依赖它们,证书管理亟需更科学的管理机制。

这是一种由于证书认证机构工作出现疏忽、流程不完善而出现的证书被错误签发的情形。其主要原因是证书认证机构在签发SSL服务器证书前,没有认真鉴别证书申请者提交的身份信息的真伪,或者没有通过安全可靠的方式验证、确认申请者就是他提供的身份材料中所声称的那个人。比如,假冒者提供了虚假的营业执照、组织机构代码证书、域名注册文件等,      而证书认证机构没有或没能够鉴别出假冒者提供的身份信息的真伪,把一个合法有效的证书签发给了假冒者;再比如,假冒者向证书认证机构提交了其他网站拥有者的有效身份资料,如营业执照、组织机构代码证、域名注册文件(这些资料,假冒者有时可通过合法的途径获得),而证书认证机构没有通过安全、可靠的途径验证、确认证书申请者确实是其声称的人        本人(或声称的机构本身),把本属于另一个合法有效的网站的服务器证书签发给了假冒网站。无论何种情形,假冒者都可以利用用户对服务器证书的信任进行网络欺诈活动。

在此环境下,为进一步提升用户使用安全性,360正式把证书安全纳入安全浏览器的防护。其实早先国外浏览器厂商已有类似动作。去年,Google正式宣布推出自有 CA 根证书,摆脱对由第三方签发的中级证书颁发机构的依赖。而在国内,360浏览器是第一家推出根证书计划的浏览器厂商。梁志辉表示,360自有根证书计划通过提高问题处理的效率,缩短风险周期,可以有效识别出具体CA机构签发的网站证书的真实性,帮助用户快速识别可信安全证书。同时,根证书计划的实施,还将确保360浏览器地址栏所出现的https能够代表真正安全可信的网页,进一步保证用户上网安全。

2)破解SSL证书签发CA的私钥

据了解,360浏览器根证书认证过程,包括CA申请、信息验证、批准请求、预置测试、正式信任五个部分。为完成根证书预置,CA机构必须遵守360浏览器根证书认证策略的规定,并提供所有需要的材料,360浏览器官方将会对这些材料进行审核。

如果SSL证书签发CA的密钥对的安全强度不够(密钥长度太短),或者是一个弱密钥对,或者其产生方式有规律可循(不是完全随机产生的),那么,就可能造成CA私钥被破解,假冒者就可以用被破解的CA的私钥生成、签发合法、有效的SSL服务器证书。

安全大脑赋能 360浏览器将更加安全、智能、可信

但在实际中,只要CA的密钥对有足够的长度、按完全随机的方式产生、且避开弱密钥对,则CA的私钥是根本无法破解的,或者破解的成本极高,完全超过了破解可能带来的好处。

从2007年开始发布第一款产品至今,360浏览器已走过11个年头。伴随11年技术沉淀,360浏览器一直跟各种恶意网站和黑产进行斗争。这也是继承了360的安全基因。360集团是中国最大的互联网安全企业。目前,360汇聚了国内规模领先的顶级安全技术团队,积累了超万件原创技术和核心技术专利。进入大安全时代,面对新威胁与大挑战,360于今年5月发布了全球最大的智能安全防御体系——360安全大脑1.0版,融合大数据、云计算、人工智能、IoT、移动通信、区块链等新技术,构建了大安全时代的整体防御战略体系,应对万物互联时代带来的全新的安全威胁与挑战。梁志辉表示,在安全大脑赋能下,未来的浏览器将更安全、智能、可信。

3)SSL证书签发CA的私钥泄露

在安全保障上,360浏览器在内核的更新上一直与国际保持同步。目前,国内主要浏览器使用内核仍然停留在一年前版本。这意味着一年前可能已经被黑客武器化的提权漏洞可以被轻易利用。360所开发的浏览器会按月修补已知高危漏洞,确保公开的漏洞在30天之内被修补,加上独有的15层安全防御体系,可通过主动防御驱动、浏览器沙箱、网址云安全等技术应对木马威胁。

证书认证机构由于管理不善,或者使用了不安全的密码设备,导致签发SSL证书的CA私钥被泄露,从而使得假冒者可以利用它签发合法有效的SSL证书。

在网络信息安全技术上,360浏览器在国内也是首屈一指。早在2015年,360安全浏览器在国内率先推出支持国密算法的浏览器产品;从2018年开始,360浏览器宣布全系产品都将实现国产密码算法和安全协议的支持,有效弥补了原有密码应用体系中薄弱的一环。未来用户无需下载安装专用的客户端软件,使用360浏览器即可访问各个支持国产密码算法、具备更高加密安全强度的网银、支付等应用。这也是国家自主密码算法应用推广的重大突破,对提升我国网络安全环境、加快推进国产密码算法在金融领域的应用和推广,打破国外技术控制,有效规避金融交易风险、保障国家金融体系安全等多个方面都有着深远的意义。

这种情况可以通过加强认证机构的安全管理,使用安全可靠的密码设备来避免。

4)破解SSL证书的私钥

目前的SSL证书主要是基于RSA公开密钥算法,对这个算法的攻击目前除了蛮力攻击外,还没有有效的方法。但是,如果SSL证书密钥对的安全强度不够(密钥长度不够),或者是一个弱密钥对,或者其产生方式不是完全随机的,那么,就可能造成SSL证书的私钥被破解,假冒者就可以将该SSL证书及其被破解的私钥安装在假冒网站上进行欺诈活动(SSL证书本身是公开的,可以很容易地得到)。

在实际应用中,只要SSL证书密钥对有足够的长度、按完全随机的方式产生、且避开弱密钥对,则SSL证书的私钥是根本无法破解的,或者破解的成本极高,完全超过了破解可能带来的好处。

在讨论、分析SSL证书私钥破解的风险时,我们需要提到一个人们常常关心的问题。我们知道,出于管理的规范性、品牌、知名度等原因,目前国内  的SSL证书主要由国外的认证机构签发,对此,人们会有这种疑问和担心,“如果SSL证书由国外认证机构签发,那么,是否会导致SSL证书的密钥  对容易被国外敌对机构破解、或窃取”?要回答这个问题,我们必须先了解SSL证书的密钥对是怎样产生的,以及私钥是怎样保存的。

实际上,SSL证书的密钥对是由网站拥有者通过Web服务器软件自己产生并保存在Web服务器软件的密钥库中,或者在Web服务器软件使用的SSL加速卡(加密硬件)中产生并保存在加密硬件中;客户申请签发SSL证书时,证书请求中只包含有公钥,不包含私钥,私钥是不会传送到证书认证机构的。因此,SSL证书的密钥对是否会被破解完全取决于密钥对的长度是否足够长、产生的密钥对是否是弱密钥对、以及密钥对的产生是否有规律可循(即是否是完全随机产生的),与SSL证书是由国内还是国外认证机构签发的没有关系;私钥是否会被窃取、泄露,完全取决于SSL证书客户采取的私钥保护安全措施。当然,从阴谋论的角度,由于目前的Web服务器软件大多来自国外,它们留有后门,从而产生弱密钥对,或者留有后门,使得密钥对的产生有规律可循,这也是可能的,但这与SSL证书是由国内还是国外认证机构签发的没有关系。

5)SSL证书的私钥泄露

本文由奥门永利官网误乐域发布于财经新闻,转载请注明出处:https加密流程和公理,360浏览器推出自有根证书安

关键词:

上一篇:从打造到智造,蹲点园区体验
下一篇:没有了