该文章是19年左右,人员投稿申请0xNull论坛邀请码的文章。我为0xNull 论坛的核心人员
现在团队已经解散,并且论坛关闭,很是可惜。
0x01 ssrf漏洞描述
SSRF的形成大多数是由于服务端提供了从其他服务器应用获取数据的功能且没有对目标地址做过滤和限制,比如操作服务端从指定URL获取网页文本,加载指定地址的图片,利用的是服务端的请求伪造。所以,SSRF是利用存在缺陷的Web应用作为代理,攻击远程和本地的服务器。
主要的攻击方式:
- 对外网所在内网、本地进行端口扫描,获取一些服务的banner信息。
- 攻击运行在内网或本地的应用程序。
- 对内网Web应用进行指纹识别,识别企业内部的资产信息。
- 利用file协议读取本地文件等等
参考文献:《Web安全攻防》
0x02 redis描述
Redis 是完全开源的,遵守 BSD 协议,是一个高性能的 key-value 数据库。
0x03 说明
先查了以下网站的指纹信息,知道了是服务器是Debian,Apache 2.4.25
打开IP地址后,看到了北漂鱼的logo,这不是一起自己也搭建过的vip视频解析网站嘛!
后台地址是:http://118.24.198.151/admin/login.php
tql,默认账号/密码没变!
登录成功后,发现更多的服务器信息。LAMP,还有php函数是否支持啥的
看了下后台,就全局设置页面可能可以拿shell,随便插了一句php代码,提示修改失败,没权限啊!
既然后台没思路了,那就换一个突破口吧,ctf套路,直接加上www.zip
http://118.24.198.151/www.zip
嘻嘻,自动打开了迅雷7,Lucky!
下载源码后,我又下载了以下Github上的源码,通过md5和修改日期,快速确定了被修改过的文件位置!
title.php文件的代码:
<?php
header('Content-Type:text/html;charset=utf-8');
$url=$_POST['titurl'];
//$url = 'http://www.beipy.com/';//url链接地址
echo curl($url);
function curl($url){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_exec($ch);
curl_close($ch);
}
?>
<?php
header('Content-Type:text/html;charset=utf-8');
$url=$_POST['titurl'];
//$url = 'http://www.beipy.com/';//url链接地址
echo curl($url);
function curl($url){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_exec($ch);
curl_close($ch);
}
?>
一看这个代码,充满了ctf套路,这不是ssrf嘛!
ssrf读系统文件:
ssrf进行端口扫描:
这让给我马上想到了以前看过的文章,ssrf+redis
测试的时候发现,端口对外不开放
一开始想着的是通过计划任务直接反弹shell的,结果尝试了好久,失败告终。。。
于是想着写shell吧,猜测网站绝对路径:
使用工具生成gopher协议的代码
然后请求
成功写入一句话木马:
查看当前用户是www-data用户:
完
文章中出现的ip地址均以弃用,请勿非法测试
欢迎关注黑客街