一、知识点学习
概述
CSRF跨站请求伪造(Cross-site request forgery):攻击者会伪造一个请求(这个请求一般是一个链接),然后欺骗目标用户进行点击,用户一旦点击了这个请求,整个攻击就完成了。所以CSRF攻击也成为"one click"攻击。
漏洞原因:
原因一方面是用户安全意识不足,访问不知名的url
另一方面,web没有做到准确的合法用户验证
CSRF与XSS的区别:
CSRF:攻击者并没有拿到用户的权限,而是借用用户的权限实施攻击;
XSS:攻击者直接盗取到了用户的权限,然后实施破坏。
如何确认一个web系统存在CSRF漏洞:
对目标网站增删改的地方进行标记,并观察其逻辑,判断请求是否可以被伪造
例如修改管理员账号时,不需要验证旧密码,导致请求容易被伪造;对于敏感信息的修改并没有使用安全的token验证,导致请求容易被伪造
确认凭证的有效期
虽然退出或关闭了浏览器,但cookie仍然有效,或者session并没有过期,导致CSRF攻击变得简单
网站防止CSRF攻击的安全措施:
–对敏感信息的操作增加安全的token;
–对敏感信息的操作增加安全的验证码;
–对敏感信息的操作实施安全的逻辑流程,比如修改密码时,需要先校验旧密码等。
二、练习过程
get
1、某个正常用户登录
2、我们对其抓包,所有的信息都是在get方式的url中
3、正常登录的用户修改个人信息
4、我们抓到相应的包,将数据包发送到重发器,并暂停拦截(不暂停抓包会影响pikachu网站响应)
5、修改一下内容,发送回去
6、再回到pikachu网站上,用户的个人信息就被修改了