找回密码
 会员注册
查看: 27|回复: 0

前端隐秘角落-web安全的演变历程

[复制链接]

7

主题

0

回帖

22

积分

新手上路

积分
22
发表于 2024-9-19 20:51:11 | 显示全部楼层 |阅读模式
前言:隐秘的角落番外篇这是一个平行时空,在这里,朱朝阳还是有写日记的习惯,不是在日记本,却是在qq中记录。这一天,在他身上发生了一个奇怪的事情:当他像往常一样登录自己的qq空间,却发现最新一条的说说是一个六峰山旅游的广告,但这并不是他写的……这条说说是怎么来的?针对这个问题,他去请教了自己的程序员舅舅张东升。张东升摸了摸自己的秃头:”你这是被csrf攻击了!““接下来我带你来走进web发展史,了解下web安全一路走来的演变历程...”这篇文章主要围绕web页面安全展开分析:从cookie的源起,到同源策略的出现,再到跨域的兴起,从而引申出csrf攻击。浏览器的诞生:追溯到1989年3月12日,万维网(WWW,WorldWideWeb)诞生的日子,蒂姆·伯纳斯-李爵士设计发明了第一个浏览器,架设了第一个web服务器http://info.cern.ch。(详细的介绍在之前文章【http请回答】中有系统的介绍过,可翻阅)而浏览器web的设计之初是知识的共享,所以开放是基本理念。Cookie源起:早期互联网只是用于简单的浏览文档信息、查看门户网站等等,并没有交互这个说法。随着互联网快速发展,交互式web开始兴起,如用户登录,购买商品,各种论坛等。怎么记录用户的操作行为呢?于是出现了隐藏域,把用户上一次操作记录放在form表单的input中,通过表单提交记录用户操作行为。但是每次都得创建隐藏域而且得赋值太麻烦,且易出错。// 隐藏域写法Cookie最早是网景公司的前雇员LouMontulli(卢-蒙特利)在1993年3月的发明,并于1994年将“cookies”的概念应用于网络通信。Cookie的出现是为了优化交互式web,同时也规避了隐藏域操作复杂的问题。定义:Cookie是由服务器发给客户端的特殊信息,而这些信息以文本文件的方式存放在客户端,然后客户端每次向服务器发送请求的时候都会带上这些特殊的信息,用于服务器记录客户端的状态。安全性:cookie在行使自身使命的同时,也存在了安全隐患。设想一下,你登录了银行系统,并把登录信息、账号密码存在了cookie中,cookie信息共享,大家的账号和密码也共享了,奋斗了一辈子的财富,被别人轻易的转走,将是多么可怕的事情。所以,为了维护互联网的隐私和数据安全,必须制定一定规则。浏览器安全的基石是"同源政策"(same-originpolicy) ---阮一峰同源策略定义:源是主机,协议,端口名的一个三元组。1995年,同源政策(SOP)由Netscape公司引入浏览器,规定了不同域之间访问的策略协议://域名:端口。同domain(或ip),同端口,同协议视为同一个域,一个域内的脚本只能读写本域内的资源,对于其它域的资源,它没有禁止脚本的执行,而是禁止读取HTTP回复,这种安全限制称为同源策略。为什么同源限定是三元组?不是二元组?也不是四元组?如果将这个地址组成,比喻为一次快递小哥为合租的你服务的一次行为,那么协议则来区分是送快递还是点外卖行为;域名则是你的地址,端口则是你的房间号,请求资源地址则是你需要点的外卖内容,快递小哥根据你的行为和你的地址,房间号来完成这次任务,就算你临时替换了外卖内容,也不影响他完成这次输送任务。限制范围无法读取非同源网页的Cookie、LocalStorage和IndexedDB。无法接触非同源网页的DOM。无法向非同源地址发送AJAX请求(可以发送,但浏览器会拒绝接受响应)。同源策略提升了Web前端的安全性,但阻碍了Web拓展的灵活性。若把html、js、css、flash,image等静态文件全部布置在一台服务器上,会加大这台服务器的压力,甚至威胁到web服务的可用性。因此,在遵循同源策略的基础上,在安全性和可用性之间选择了一个平衡点。tips:以下标签是允许跨域加载资源:* * * 
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 会员注册

本版积分规则

QQ|手机版|心飞设计-版权所有:微度网络信息技术服务中心 ( 鲁ICP备17032091号-12 )|网站地图

GMT+8, 2024-12-27 00:05 , Processed in 1.965669 second(s), 26 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表