CSRF漏洞

1、原理

  跨站请求伪造(英语:Cross-site request forgery),也被称为one-click attack或者session riding,通常缩写为CSRF或者XSRF。是一种挟制用户在当前已登录的web应用程序上执行非本意的操作的攻击方法。

  跟跨网站脚本(XSS)相比,XSS利用的是用户对指定网站的信任,CSRF利用的是网站对用户网页浏览器的信任。

  跨站请求攻击,简单地说,是攻击者通过一些技术手段欺骗用户的浏览器去访问一个自己曾经认证的网站并运行一些操作(如发邮件、发消息、甚至财产操作如转账和购买商品)。由于浏览器曾经认证过,所以被访问的网站会认为是真正的客户操作而且运行。这利用了web中用户身份验证的一个漏洞,简单的身份验证只能保证请求发自某个用户的浏览器,却不能保证请求本身是用户自愿发出的。

 2、实例

实例地址:https://dvwa.ceshiren.com/vulnerabilities/csrf/

 修改密码后,出现以下链接,用户在当前网页中点击以下链接,修改password_new和password_conf,访问该链接,就会实现修改用户密码的操作,此操作并非用户的本意操作。

https://dvwa.ceshiren.com/vulnerabilities/csrf/?password_new=letmein&password_conf=letmein&Change=Change#

常见的攻击payload:

(1)利用url

(2)利用图片请求

(3)利用伪造表单

3、危害和防范

危害:导致用户执行非本意的网站请求

预防:增加token校验、检查refer

原文地址:https://www.cnblogs.com/crystal1126/p/15185959.html