CSRF简析

2021-12-20 21:11:49 浏览数 (1)

csrf

csrf漏洞称为"跨站请求伪造",跟XSS一样,属于web攻击的一种,CSRF利用服务器对用户网页浏览器的信任,而XSS利用的是用户对网页,服务器的信任,要区分开

原理

攻击者构造一个特殊的网页或者url,发送给被攻击者,被攻击者打开后,会以被攻击者的名义向这个服务端发送一个恶意请求,但是这个请求在服务端看起来是完全合法的,从而处理了攻击者发送的恶意请求!

可以这样子理解: 用户A:正常用户 网站B:具有csrf的网站(http://127.0.0.1/shop.php?money=10000&name=用户D) 攻击C:攻击者 用户A登录了某个银行的界面,并且在本地保存了登录的cookie,打算转账给用户D10000元,此时攻击C也在这个网站中有账户,并且还发现了有CSRF漏洞,漏洞就在于 http://127.0.0.1/shop.php?money=10000&name=用户D 这一个url中,如果将name=用户D改成name=攻击C的话,然后将这个url的页面发送给用户A,如果服务端没有经过各种验证的话,就会直接相信这是用户A需要执行的转账操作,然后用户A在浏览器打开后,就会执行转账操作

利用条件

综合上述: 1.用户A需要登录进网站,并且保存Cookie 2.用户A点击恶意构造的连接 3.服务端没有任何防护

实例

靶机:DVWA

在左侧找到CSRF,然后点进去

原账户密码:

username:admin

password:password

这里的意思就是改密码,改了之后,当前账户的密码就更换了

更改后的账号密码:

username:admin

password:123

更改之后用admin:123重新登录

完了以后,抓包看看url构造

抓包或者在url地址栏,看到GET请求

代码语言:javascript复制
http://xxxxxxxxx/vulnerabilities/csrf/?password_new=123&password_conf=123&Change=Change#

如果我们将password_new=123&password_conf=123中的123改成其他的字符数字会不会更改密码?肯定会的啦

如果发动一波csrf攻击呢?看

0 人点赞