something about Pikachu - CSRF
pikachu
CSRF
概述
Cross-site request forgery,简称’CSRF’。由攻击者伪造一个请求(一般以链接的形式),然后欺骗用户进行点击,
用户一但点击了请求,整个攻击就完成了。因此CSRF
攻击也被称为one click
攻击。
CSRF 与 XSS 区别
XSS一般盗取用户的
cookie
后,由攻击者利用cookie
自行执行恶意操作。 攻击者 有 登录凭证
CSRF则是攻击者构造好恶意请求后,交给用户,由用户本人自行点击链接发起请求,若刚好用户的对应网站刚好处于登录 状态,那么相当于用户自己做的恶意操作。 攻击者 无 登录凭证CSRF防范
对敏感操作增加安全
token
对敏感操作增加验证码
对敏感操作增加安全逻辑流程
如修改密码时先验证旧密码。
CSRF(get)
修改个人信息没有安全防护,因此构造恶意链接诱导用户点击,修改用户性别。
1 | /http://train.com/pikachu/pikachu/vul/csrf/csrfget/csrf_get_edit.php?sex=girl&phonenum=18626545453&add=chain&email=vince%40pikachu.com&submit=submit |
CSRF(post)
构造一个html
页面,诱导用户访问,页面访问后执行恶意请求。
1 | <html> |
CSRF(token)
页面有一个隐藏域用来持有token
值,此token
值是正常登录访问页面时服务器给的随机值,
不是能够简单获取的。因此,使用token
进行防范,是一个比较好的手段。