Vulnhub Sick0s1.1 Writeup
Talk is cheap, show me writeup
用到的工具和知识
nmap、dirb、nikto、google、searchsploit、shellshock、
0x01 信息搜集
nmap探索

开放22/ssh,3128/http-proxy,关闭8080/http-proxy
Google Squid
Squid Cache是HTTP代理服务器软件。Squid用途广泛,可以作为缓存服务器,可以过滤流量帮助网络安全,也可以作为代理服务器链中的一环,向上级代理转发数据或直接连接互联网。Squid程序在Unix一类系统运行。
Squid 是支持 HTTP,HTTPS,FTP 等的 Web 的缓存代理。它通过缓存和重用频繁请求的网页来减少带宽并缩短响应时间。Squid 拥有广泛的访问控制,是一个出色的服务器加速器。它运行在大多数可用的操作系统上,包括 Windows,并根据 GNU GPL 许可。
Squid 由于是开源软件,有网站修改 Squid 的源代码,编译为原生 Windows 版;用户也可在 Windows 里安装 Cygwin,然后在 Cygwin 里编译 Squid。
- 简单地来说,Squid就是一个缓存or代理服务器
我用浏览器直接访问靶机web站点

访问不通,那么根据上面搜集的信息,就说明这个站点需要用自己的代理服务器区访问。
于是我在浏览器用SwitchyOmega设置代理,同时使用dirb,nikto设置代理扫描靶机



找到robots.txt文件,发现/wolfcms,成功进入cms页面,可以看到由用户administrator发表的两篇博客

0x02 漏洞挖掘与利用
进一步侦查,使用dirb爆破/wolfcms下目录

查看所有扫到的目录,发现/wolfcms/doc下的update.txt,显示该wolfcms详细版本是0.8.2

在kali中使用searchsploit搜索wolfcms 0.8.2,无果,搜wolfcms 0.8

查看两个poc,后发现后台登录地址为/wolfcms/?/admin/login

下面的思路是sql注入、爆破
先尝试sql注入,手注三次

到这里思维有些停滞,可能有什么信息丢掉了,回头看了看扫描结果,发现nikto中显示存在一些漏洞
如下:
| 1 |  | 
看到shellshock,中文译为破壳漏洞,自然要学习一番~
使用shellshock并不能直接进行登入后台,但是可以直接连接服务器
那我先放放ε=ε=ε=┏(゜ロ゜;)┛
只好上网借鉴walkthrough,什么???也是猜的!admin/admin,那我的思路可能进了兔子洞,上来就把用户名定为administrator,后面就麻烦很多
登上管理员,四处看看后台,发现一个文件上传点,上传一句话成功,修改权限为777


蚁剑连接,进入虚拟终端,查看系统基本信息

0x03 提权&GetFlag
查看系统基本信息

四处查看系统及应用配置文件,找到/var/www/wolfcms下的config.php,存在密码和账户

查看用户

发现账户root和sickos
那么我们先要获取一个真实的shell,虚拟终端中不支持某些高级操作
老办法,kali用nc监听端口,靶机上用蚁剑放个reverse-shell.php,设置好ip和port,php -f reverse.php执行,成功连接!


将fake shell升级到交互shell,python -c "import pty;pty.spawn('/bin/bash');"
执行su,john@123并非root密码,试试sickos,成功

直接用ls -l /root没有权限,之后用sudo ls /root,发现flag文件

再用sudo cat /root/a0216ea4d51874464078c618298b1367.txt,直接查看

搞到flag
0x04 后续学习
part1 提权
上面虽然得到了flag,可是有投机成分,没有提权成功,下面是通过学习前人walkthrough得到的提权方法:
先使用id查看该用户所属组,使用sudo -l查看该用户在sudo下可以执行的命令,命令详解见参考资源[4] [5]
- sudo -i
- sudo -s输入密码- john@123
- sudo su输入密码- john@123
- 直接采用/var/www下拥有root执行权限的connect.py提权,参考资源[6]
可以看到sickos用户的id很有意思

它在sudoers内,所以使用sudo可以执行高级命令,之前这一步还是漏掉了,connect.py的执行权限亦然
part2 破壳漏洞
这个放到我的另一篇blog中讲解学习
0x05 总结
- 需要更深入了解Linux相关知识
- 不要麻痹,每获得一个新权限或到达某个新场景中,都要重复获取信息
0x06 参考资源
[3]关闭PHP Credits和隐藏的GUID图片Logo彩蛋的显示
[6]write-up sick-os 使用connect.py,很有趣,不过使用了msfvenom
[7]VulnHub ‘SickOS: 1.1’ 破壳讲的不错
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!