网络安全

一,CSRF 跨站请求伪造

 

1.攻击原理:用户用账号、密码登录网站A > 网站A下发cookie > 用户访问网站B 时,被引诱点击了某个链接,进入了网站A

 

2.防御措施:

  • Token 验证,在正确的页面登录的时候附带一个Token

  • Referer 页面来源验证

  • 隐藏令牌,将令牌隐藏在http head 头中,而不会放在链接上

 

 

二,XSS 跨域脚本攻击 https://www.imooc.com/video/14371

 

1.攻击原理:

  • 盗用cookie 获取敏感信息

  • 破坏正常的页面结构,插入恶意内容

  • 实现DDos 攻击效果,比如使http 请求头超长,从而无法正常访问页面

 

2.攻击方式:

  • 反射型:前端发起请求时,XSS 代码出现在URL 中,作为输入提交到服务器端,服务器解析请求数据后,将带有XSS 的数据传给浏览器,浏览器解析并执行XSS 代码。

  • 存储型:提交的XSS代码会存储在服务器端,比如数据库,下次请求目标页面时,不用再提交XSS

 

3.防御措施:

  • 编码:前端提交的敏感信息进行编码

    • 对用户输入的数据进行HTML Entity 编码,如" & < > space

  • 过滤:在前端显示后端返回的原样内容的时候,对其进行过滤

    • 移除DOM 属性,如onerror;移除style script iframe 节点

  • 校正:校正页面结构

    • 避免直接对HTML Entity 解码

    • 使用DOM Parse 转换,校正不配对的DOM 标签

      • DOM Parse :将文本解析成DOM 对象

 

4.实际操作

 

    1)编码

 

 

 

    2)encode.js 库可以对HTML Entity反转移,如&quot 转 "

 

 

    3)domParse.js 可以解析DOM 字符串

 

 

    • str 是字符串类型的DO,如"<p>xx</p>"

    • start 标签头

    • end 标签尾

    • chars 文本

    • comment 注释

 

    4)还需要过滤危险标签和属性

 

 

 

img空连接时onerror 事件自动执行的特性,是XSS 攻击常用的手段。也可以用button 引诱用户攻击

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值