初步认识csrf 跨站伪造请求攻击

本文深入探讨了跨站伪造请求(CSRF)攻击的原理及危害,并提供了服务器端防御措施,包括设置伪随机数生成、使用验证码、合理管理表单随机数等方法,以确保用户操作的安全性。
  1. 什么是跨站伪造请求攻击?

    我自己的理解:用户A用浏览器访问量一个存在漏洞的网站B,同时A又访问了恶意网站C,假设用户A在B网站上进行了一次交易,C网站上有个<img src="A网站的交易地址"/>的html片段,那么此时用户A 的浏览器就会向B网站的交易链接发送请求,由于A已经在B网站登录,所以B网站处理的这个请求,但是这个请求并非用户A自己行为发送的,但是B网站无法判别是否是用户主动发送,所以造成攻击!可以借助这张图片来理解

    05210401_qxGK.jpg

                                                 该图取自hyddd的博客    hyddd的博客--《浅谈CSRF攻击方式》

  2. 如何防护?

    在服务器端防御,主要做法是在服务器端为每个用户的cookie设置一个伪随机数

    1. 生成一个伪随机数放入cookie,然后同时将这个数作为表单的一个隐藏字段写入html页面后提交上来验证

    2. 为表单设置验证码

    3. 当浏览器同时打开多个不同的表单的时候,服务器会创建多个随机数,最后一个表单所对应的随机数会覆盖之前的表单的随机数,此时只能提交最后打开的那一个表单,所以应该要避免这种情况,所以应该为每个表单的沿着随机数存放在每个独立的地方

  3. 参考: hyddd的博客--《浅谈CSRF攻击方式》


转载于:https://my.oschina.net/u/2310482/blog/488388

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值