博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
前端安全相关
阅读量:6590 次
发布时间:2019-06-24

本文共 978 字,大约阅读时间需要 3 分钟。

一 . 分类

xss: 跨站脚本攻击,通过注入恶意的html标签或者script代码,控制用户浏览器。通常只要有数据输入的地方,比如评论功能,就会存在跨站脚本攻击的风险。

防御: 1. 在cookie中设置HttpOnly,js脚本将获取不到cookie值。

           2. 对用户输入的数据进行过滤,htmlencode,javascriptencode等等。

iframe标签风险:iframe中的内容可以运行js脚本,flash插件等等,破坏用户体验或者恶意代码的注入。

防御: 1. h5中iframe提供了sandbox属性,可以对iframe标签的行为加以限制。

点击劫持(Clickjacking): 攻击者通过构建页面,诱导用户点击某个操作,导致发生一些用户非意愿的行为。

防御: 1.  设置X-Frame-Options: DENY(http header属性),告知浏览器不能将当前内容                  放到iframe标签中显示。

错误的内容推断: 响应头中的content-type只是给浏览器提供的内容类型的建议,浏览器可能会根据具体的内容的类型来渲染执行。

防御: 1.  设置X-Content-Type-Options:nosniff。(http header)告知浏览器禁止推断响应内容。

csrf: 跨域请求伪造,利用cookie,冒充用户身份,执行一些违背用户意愿的操作或者请求。

CSRF攻击是源于WEB的隐式身份验证机制!WEB的身份验证机制虽然可以保证一个请求是来自于某个用户的浏览器,但却无法保证该请求是用户批准发送的

防御: 1. 验证码。强制用户与应用交互,才能完成最终请求。

            2. referer check, 后端对请求来源进行检查。

            3. 携带token请求。

            4. 设置cookie samesite属性,该属性阻止cookie在跨域情况下发送。也就是阻止                        cookie成为第三方cookie。

csrf和xss的一些区别

1.本质来讲,csrf是HTTP问题,xss是代码注入问题。xss是没有对用户输入过滤,导致浏览器执行了用户输入,csrf是浏览器在发送http请求的时候自动带上了用户的cookie,而一般网站的session都存放在cookie中。

参考自:http://web.jobbole.com/92875/

转载地址:http://sruio.baihongyu.com/

你可能感兴趣的文章
C# CheckedListBox控件的使用方法
查看>>
spring Transaction Management --官方
查看>>
iOS开发-清理缓存功能的实现
查看>>
IS_ERR、PTR_ERR、ERR_PTR
查看>>
html5 canvas 奇怪的形状垂直渐变
查看>>
mac java环境
查看>>
lamp 一键安装
查看>>
SQL Server 2008 收缩日志(log)文件
查看>>
UICollectionView基础
查看>>
SSAS中CUBE行权限数据级权限控制
查看>>
PHP接入umeditor(百度富文本编辑器)
查看>>
如何解决ORA-12547: TNS:lost contact错
查看>>
android学习记录(三)百度地图错误---只有一个电话显示帧,没有地图内容。
查看>>
BZOJ2794 : [Poi2012]Cloakroom
查看>>
Swift——(两)Swift访问元组
查看>>
【Eclipse】安装subclipse的Eclipse插件
查看>>
Git查看、删除、重命名远程分支和tag【转】
查看>>
浅谈IM软件业务知识——非对称加密,RSA算法,数字签名,公钥,私钥
查看>>
Oracle中REGEXP_SUBSTR及其它支持正则表达式的内置函数小结
查看>>
正确计算linux系统内存使用率
查看>>