29:WEB漏洞-CSRF及SSRF漏洞案例讲解

CSRF原理图解

知识点

CSRF解释、原理:

CSRF(Cross-site request forgery)跨站请求伪造,由客户端发起,是一种劫持受信任用户向服务器发送非预期请求的攻击方式,与XSS相似,但比XSS更难防范,常与XSS一起配合攻击。

原理详解:

攻击者盗用了你的身份信息,以你的名义发送恶意请求,对服务器来说这个请求是你发起的,却完成了攻击者所期望的一个操作
XSS 利用站点内的信任用户,盗取cookie
CSRF通过伪装成受信任用户请求受信任的网站
利用目标用户的合法身份,以目标的名义执行某些非法参数
利用条件:已经登录系统,用户访问URL,已存在的网站中允许用户跳转

防御方案:

1.当用户发送重要的请求时需要输入原始密码
2.设置随机Token
3.检测referer来源,请求时判断请求连接是否为当前管理员正在使用的页面(管理员在编辑文章,黑客发来恶意的修改密码链接,因为修改密码页面管理员并没有在操作,所以攻击失败)
4.设置验证码
5.限制请求方式只能为POST

SSRF思维导图

知识点

SSRF漏洞解释,原理等

SSRF漏洞检测,案例,防御等

漏洞攻击:端口扫描,指纹识别,漏洞利用,内网探针等

SSRF危害:

  • 扫描内网
  • 向内部任意主机的任意端口发送精心构造的Payload
  • DOS攻击(请求大文件,始终保持连接Keep-Alive Always)
  • 攻击内网的web应用,主要是使用GET参数就可以实现的攻击(比如struts2,sqli等)
  • 利用file协议读取本地文件等

各个协议调用探针:http,file,dict,ftp,gopher等

  • http:192.168.64.144/phpmyadmin/
  • file:///D:/www.txt
  • dict://192.168.64.144:3306/info
  • ftp://192.168.64.144:21

附:常用语言支持的协议 

本课重点:

  • 案例1:Pikachu_CSRF案例及Burp检测
  • 案例2:Pikachu_CSRF防御Token测试
  • 案例3:SSRF_PHP,JAVA漏洞代码协议运用
  • 案例4:SSRF_漏洞代码结合某漏洞利用测试
  • 案例5:SSRF实战——图片加载翻译转码等应用说明

案例1:Pikachu_CSRF案例及Burp检测

pikachu靶场-CSRF(get)-测试过程:

1.登录pikachu-CSRF(get)模块,修改个人信息,抓包,得到修改个人信息数据包:http:127.0.0.1:8080/update?email=hack@qq.com
2.在攻击者网站上(192.168.33.4),写一个index.html页面,内容如下:
<script src=http:127.0.0.1:8080/update?email=hack@qq.com></script>
3.在用户浏览器登录pikachu情况下,诱使用户访问攻击者的链接:192.168.33.4/index.html,页面返回为空。
4.用户以为访问了一个空页面,但其实个人信息已经被偷偷修改。原因是index.html页面携带了用户的cookie发起了http:127.0.0.1:8080/update?email=hack@qq.com请求,而这对于用户来说是不可见的。

CSRF(Post)漏洞可以使用burp-Generate CSRF Poc模块测试:

一般我们使用csrf漏洞来修改信息或者添加用户等。因此,一般在修改、添加功能处检测是否有CSRF漏洞。

案例2:Pikachu_CSRF防御Token测试

案例3:SSRF_PHP,JAVA漏洞代码协议运用

漏洞代码

界面:

利用

  • 本地图片上传:没啥可利用的
  • 远程图片上传:远程上传的时候,会让用户输入一个远程的地址,比如说http://www.xxxx.com/aaa.jpg这个地址是个图片,那么服务端就回去访问这个地址。

端口扫描:如果把这个图片地址恶意利用,请求本地mysql端口:比如127.0.0.1:3306,就会返回mysql版本信息。

内网探针:比如让服务器请求自己已经打开的虚拟机,类比到内网之中,就实现了内网探测。内网ip可以用字典跑,一般都是192.168.xxx.xxx,端口用常见的端口就可以了。

还可以使用各个协议调用探针:http,file,dict,ftp,gopher等

  • http:192.168.64.144/phpmyadmin/
  • file:///D:/www.txt
  • dict://192.168.64.144:3306/info
  • ftp://192.168.64.144:21

案例4:SSRF_漏洞代码结合某漏洞利用测试

<1>探针内网主机

返回如下,说明主机存活

<2>探针8080端口

返回如下,说明8080端口存在,且存在HFS服务。

<3>网上搜索HFS相关漏洞,发现HFS存在远程命令执行漏洞。找到payload,将payload放在图片地址处,点击提交。成功新增一个用户。payload如下

案例5:SSRF实战——图片加载翻译转码等应用说明

可以百度搜索:上传网络图片,在这种功能点处测试是否有SSRF漏洞。

比如,下面位置处,可能存在SSRF漏洞。

涉及资源:

https://pan.baidu.com/s/1bp96ECJ

https://www.t00ls.cc/articles-41070.html

https://blog.csdn.net/qq_50854790/article/details/122244662

 

posted @ 2022-01-18 09:05  zhengna  阅读(832)  评论(0编辑  收藏  举报