客户端安全-csrf

1.需求

理解并掌握CSRF攻击和防御

2.csrf的产生

盗个图说明(http://www.cnblogs.com/hyddd/archive/2009/04/09/1432744.html)

B伪造成C,向A发起请求,达到了请求伪造的目的。

3.解决方式

1.处理表单数据的时候加一个标志,csrf_token。服务端生成,生成方式可以包含时间戳并加密,返回给客户端,每次客户端请求的时候要带上这个csrf_token,服务端验证,验证过了才执行真实的请求。(唯一的问题就是2个表单同时打开,会出现csrf_token覆盖的问题。可以提示前端,会话失效,请刷新页面)

2.把token存在表单和cookie中,提交的时候验证相等,缺点是token信息都在客户端(一个表单内,一个cookie中), 可被别人获得

2.用验证码图片。也是一个道理。

4.解决方案

参考CI的框架的解决方案

 

 

参考资料:

(http://www.cnblogs.com/hyddd/archive/2009/04/09/1432744.html)

转载于:https://www.cnblogs.com/norm/p/6211966.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
客户端支持防止CSRF/XSRF(跨站请求伪造)的方法主要包括以下几种: 1. 验证码:在敏感操作如支付、修改密码等环节,向用户发送验证码,要求用户输入正确的验证码后才允许进行操作。这样可以有效防止CSRF攻击,因为攻击者无法获取有效的验证码。 2. Token验证:在用户登录时生成一个随机的Token,并将其储存在Session或Cookie中,每次向服务器发起请求时都需要将该Token一同发送。服务器接收到请求后会校验Token的合法性,如果无效则拒绝该请求。这可以防止CSRF攻击者盗用用户身份发起恶意请求。 3. Referer检查:在HTTP头部中会包含Referer字段,用于表示请求来源。服务器可以根据Referer字段的值判断请求是否来自合法来源,如果不是则拒绝请求。但需要注意的是,Referer字段不是必须的,而且可能被篡改,因此这种方法并不是绝对可靠。 4. SameSite Cookie属性:使用SameSite属性可以限制Cookie的发送,使其只在同一站点下请求时才会被发送。这样可以防止跨域请求中Cookie的被盗用。但需要注意的是,SameSite属性支持程度不同浏览器有所差异,不同浏览器可能需要额外的配置或使用其他方法来提供更好的保护。 总体而言,以上几种方法并非绝对安全,各自有一定的局限性。因此,最好的防范方法是综合使用多种防护措施,加强客户端服务端安全防护。此外,开发人员还应持续关注最新的安全技术和漏洞情报,及时更新和修复系统,确保用户数据的安全性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值