web常见的攻击方式(下)
3. CSRF
CSRF跨站请求伪造:攻击者诱导受害者进入第三方网站,在第三方网站中,向被攻击网站发送跨站请求。利用受害者在被攻击网站获得的注册凭证,绕过后台的用户验证,达到冒充用户对被攻击网站执行某项操作的目的。
流程如下:
1、受害者登录my.com网站,并保留了登录凭证;
2、攻击者诱导受害者访问了other.com网站;
3、other.com向my.com发送了一个请求my.com/act=xxx,浏览器默认携带my.com的cookie;
4、my.com收到请求后,对请求进行验证,并确认是受害者的凭证,误以为是受害者自己发送的请求;
5、my.com以受害者的名义执行了act=xxx;
6、攻击完成,攻击者在受害者不知情的情况下,冒充受害者,让my.com执行了自己定义的操作。
预防方式:
阻止不明外域的访问:同源检测、samesite cookie;
提交时要求附加本域才能获取的信息:CSRF token、双重cookie验证;
4. IDOR漏洞
IDOR漏洞: Insecure Direct Object Reference,不安全的直接对象引用,用户可以访问不属于他自己的资源(越权),即不属于自己的对象资源能被自己引用了,防止IDOR最简单的方法就是增加权限。
总结:CSRF可以通过get请求,即通过访问img的页面后,浏览器自动访问目标地址,发送请求,同样,也可以设置一个自动提交的表单发送post请求,访问页面后,表单自动提交,模拟用户完成了一次post操作。整个过程。攻击者并不能获取到受害者的登陆凭证,仅仅是冒用。CSRF通常是从第三方网站发起,被攻击的网站无法防止攻击发生,只能通过增强自己的网站针对CSRF的防护能力来提升安全性。