首页
社区
课程
招聘
渗透入门知识-CSRF漏洞原理到实战
发表于: 2020-7-8 11:32 1647

渗透入门知识-CSRF漏洞原理到实战

2020-7-8 11:32
1647

什么是CSRF漏洞?

跨站请求伪造,就是黑客以被攻击者的名义发送请求,完全合规合法。

CSRF原理

A站点存在CSRF漏洞、B站点为黑客伪造包含A站点正常请求链接的站点。
1)当被攻击者打开A站点,进行身份验证,登陆成功。A站点服务端返回给被攻击者的浏览器身份验证Cookie。被攻击者可以在A站点正常发送请求。
2)黑客伪造一个B站点其中包含A站点的某一请求(如转账请求)/广告图片包含A站点的请求。
3)黑客将B站点发送给被攻击者,被攻击者用打开A站点的浏览器打开B站点并触发黑客伪造的A站点请求。
4)这样就在被攻击者不知道的情况下,自己发送了请求,完全合法。
图片描述%20!

实战环境

  存在漏洞服务器

       系统:Ubuntu 16.04

       应用:DVWA

IP:192.168.1.5

  目标用户

        系统:mac OS系统

        浏览器 :Google Chrome

        IP:192.168.1.4

 攻击者服务器(黑客)

       系统:kali linux 2020.2

       IP:192.168.1.10

       环境:搭建Apache

实战测试

     使用burpsuite抓包密码修改功能,发现密码修改链接和参数如下图。
   http://192.168.1.5/dvwa/vulnerabilities/csrf/?password_new=123456&password_conf=123456&Change=Change

图片描述
攻击者在自己服务器搭建一个包含修改Ubuntu网站用户密码的链接或通过邮件发送给被攻击者。
以邮件发送触发链接为例(黑客自己搭建服务器一样的原理就是诱使用户在不知情的情况下点击修改密码链接)
发送带修改密码链接请求的邮件,真正的黑客邮件做的肯定是用户比较感兴趣的我测试用简单演示就行了。
图片描述
用户在正常登陆完成DVWA用户认证,且没有退出,点击邮件链接。
图片描述
点击密码被修改成功。

 

图片描述
这样黑客知道你的用户名就 可以直接登陆你的账户了(当然并不是修改密码这么简单也可能存在转移你的资产等情况)。

服务器怎么防御

1)验证 HTTP Referer 字段;

 

2)在请求地址中添加 token 并验证;

 

3)在HTTP 头中自定义属性并验证。

个人怎么防御

1)不随意点击邮件中的链接;

 

2)在点击链接时要确认,发送者与网站是否匹配;

 

3)更多个人信息防护详情请参考我悟空问答关于提高个人信息安全的方法。


[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 1
支持
分享
最新回复 (2)
游客
登录 | 注册 方可回帖
返回
//