CSRF原理
CSRF(Cross-site Request Forgery,跨站请求伪造)
1.定义:
被攻击者的浏览器被迫向目标站点发起了伪造的请求,这个过程会带上被攻击者的身份验证标识(session)以通过目标站点的验证。从而借用被攻击者在目标站点上的权限进行一系列不被期望的操作。攻击者盗用了你在某个网站的身份,以你的名义发送恶意请求。
2.漏洞原理:服务器端没有对用户提交的数据进行随机值校验,且对http请求包内的refer字段校验不严,导致攻击者可以利用用户的Cookie信息伪造用户请求发送至服务器。
3.攻击流程
1、用户登录信任网站A
2、验证通过,在用户处产生A的COOKIE
3、用户在没有登出的情况下,访问了危险网站B
4、B要求访问第三方站点A,发送一个请求(request)
5、根据B在(4)的请求,浏览器带着(2)产生的COOKIE访问A
6、A不知道(5)中的请求是用户发出的还是B发出的,由于浏览器会自动用户的COOKIE,所以A会根据用户的权限处理(5)的请