准备
靶机ContainMe: 1×1
渗透机kali 2021.2×1 和靶机在同一网段
靶机中等难度,有小挑战
信息搜集
打开靶机
老规矩,确定靶机ip。先看mac地址
然后扫描确定ip
1 | arp-scan -l |
确定ip之后用nmap进行更深层次的信息探测
1 | nmap -sS -sV -A -Pn -n -p- 192.168.155.12 |
web服务开着,先去瞅一眼吧
这个界面没啥好说的,随便输了个目录发现了端倪
顺便看了看phpinfo的信息,是lxd容器
再回到index.php这里 我们访问这里就会显示ls -al的结果,是不是有可能存在漏洞呢?
用wfuzz测试一下
wfuzz是一款Python开发的Web安全模糊测试工具。可以用在做请求参数参数类的模糊测试,也可以用来做Web目录扫描等操作。
1 | wfuzz -w /usr/share/dirb/wordlists/common.txt -u 'http://192.168.155.157/index.php?FUZZ=1' |
1 | wfuzz -w /usr/share/dirb/wordlists/common.txt -u 'http://192.168.155.157/index.php?FUZZ=a' --hh 329 |
找到了可以注入的地方。
渗透测试
咱现在整个就是一个赶紧上反弹shell的动作
1 | use exploit/multi/script/web_delivery |
生成的payload放到url中执行即可
【这张图是后来补的,所以ip变了,不要在意】
拿到sessions就可以进交互shell接着操作了
这里为了看着舒服又有Python打了交互shell(前提是靶机有Python环境)
1 | python3 -c 'import pty;pty.spawn("/bin/bash")' |
进入用户目录,发现了一个可执行二进制文件
想要拿到这个文件可以利用刚才的网页漏洞拿出十六进制文件
用工具脱壳之后,用Ida打开可以发现hash字符串,输入了正确的字符串就可以拿到/bin/bash权限
所以把字符串复制到一个文本里用john去破解一下
John the Ripper是一个快速的密码破解程序,kali安装自带,很好用的一款开源软件
接着输入./1cryptupx mike即可
又跳到了另一个www-data权限的目录,接下来进行提权
提权
1 | find / -perm -u=s -type f 2>/dev/null |
1 | cd /usr/share/man/zh_TW |
又发现一个二进制执行程序,好像跟之前那个是一样的
输入./crypt mike
又跳转了,这回拿到了root权限
但事情好像没有那么简单,别忘了没跳出容器
这个时候可以用python httpserver传送文件了 可以传个nmap过来
扫描之后发现两个ip存活
分别是172.16.20.2
和172.16.20.6
而172.16.20.6的22ssh端口是开放的
在用户目录下发现了.ssh备份文件,于是直接用ssh -i连了上去。
1 | ssh mike@172.16.20.6 -i id_rsa |
用ss命令看一下开放端口
【鸽了几天,又换了台kali,原谅俺这个大鸽子吧呜呜呜】
发现了mysql数据库,尝试了几个弱口令(过程略)
标准做法其实是映射,然后爆破mysql数据库密码,这里推荐chisel轻量工具
拿到密码是password
接下来就是一套正常操作,查查查
拿到了密码之后去切换到root用户
都到最后了还得给我使绊子是吧,不过这个压缩包的密码在数据库一并给出了,解开压缩包拿到flag
至此,渗透结束。
人生只有走出来的美丽,没有等出来的辉煌