CSRF跨站伪造

基本概述

攻击者用户可以伪造admin用户转张请求,强制admin用户,转涨给任意用户

基本概念

跨站请求伪造(Cross Site Request Forgery,CSRF)
CSRF时一种攻击,它强制终端用户在当前身份验证后的WEB应用程序上执行非本意操作的攻击。
CSRF的重点在更改请求,而不是盗取数据,攻击者无法查看伪造请求的响应

没有退出登录
SCRF是一种欺骗用户提交恶意请求的攻击,它继承了用户的身份和特权,执行用户非本意的操作
多数站点浏览器会自动发送与站点关联的所有凭证,比如Cookie信息 ,IP地址,window域凭证等,

重要点

1:浏览器登录信任的网站A
2:通过验证,在浏览器中产生A的身份凭证
3:用户在没有登录出A网站的情况下,访问了危险的网站B
4:载入恶意代码,要求用户访问(发送请求)站点A
5:根据(4)中的代码,携带者(2)产生的身份凭证访问A

CSRF漏洞的防御

无效防御
~~使用秘密的cookie
~~仅接收POST请求

··多步交易,有可能会被恶意攻击者预测

## URL重写
1:用户的身份信息和暴露在URL中
2:不建议通过引入另外一个漏洞来解决当前漏洞

有效防御
验证Referer字段
1:当前URL的上一个URL
2:是否可以伪造

添加Token验证

1:一串随机字符串
2:每次客户端的请求,服务器都要刷新Token
3:服务器创建一个Token值,存储在服务器中并且下发到浏览器
4:下次浏览器请求,需要提交该Token值,服务器根据浏览器提交的Token,与服务器存储的Token进行对比
5:如果二者一致,说明请求时正常业务流程
6:如果二者不一致,说明请求有可能来自恶意攻击者
7:Token的设计,在PHP中通常利用ESSESSION机制来实现

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值