CSRF漏洞Token防御介绍

1.漏洞修补逻辑分析
CSRF漏洞实质:服务器无法准确判断当前请求是否是合法用户的自定义操作。如果服务器在用户登录之后给予用户一个唯一合法令牌,每一次操作过程中,服务器都会验证令牌是否正确,如果正确那么执行操作。不正确不执行操作。

一般情况下,给予的令牌会写入表单中隐藏域的value值中,随着表单内容进行提交。
2.简单代码模型分析
在这里插入图片描述
3.生成Token代码分析
Token作为识别操作是否是当前用户自己操作的唯一凭证,需要设置为复杂难以被破解的内容。

例如:

function generateToken(){
$salt = “test” . date(“Y/m/d”) ; 出现问题
t o k e n = m d 5 ( token = md5( token=md5(salt);
return $token;
}

调用函数查看生成的token
4.使用Token进行CSRF漏洞防御
1、登录验证成功之后,在会话SESSION[“user_token”]中保存Token。

2、在后台操作中,增删改表单中添加隐藏域 hidden,设置value为Token。

3、提交之后进行验证Token是否正确。
简化代码演示:
Token验证过程,从实践中理解Token防御CSRF的过程。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一米八多的瑞兹

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值