vulnhub DC-2靶机

DC-2

过关条件:和DC-1一样需要找到5个flag。

攻击机:kali 192.168.56.132

靶机 :DC-2 192.168.56.141

内网信息探测

还是一样使用扫描器确定一下靶机的IP和开放端口的情况。

image-20230302171501994
通过mac地址确定IP地址为192.168.56.141
靶机开放的端口为80(web网页) 和 7744(ssh)

我们访问一下靶机的web页面。

image-20230302171928514
hosts绕过
返回301,页面做了一个永久的重定向。无法访问web页面。尝试通过修改本地的hosts文件达到访问的目的
sudo vim /etc/hosts
192.168.56.141    dc-2

修改hosts文件后可以正常访问且访问后可以看到flag1。同时我们发现这是一款基于wordpress搭建网站,猜测后续会使用到wpscan

image-20230302172239387
得到flag1 得到一大串英文看不懂,丢给谷歌翻译了。
image-20230302172425678

需要cewl?https://www.freebuf.com/articles/network/190128.html

暴破登录

尝试通过cewl生成一个密码字典。

cewl http://dc-2/ >password.txt
cat password.txt
image-20230302172917270

只有密码但是没有用户名就无法正常登录,通过wpscan进行用户名枚举(很多src这种洞据说也是收的)

image-20230302174248625
得到三个用户名 admin jerry tom

使用vim 将这三个用户名写入一个新的字典当中。并将生成的密码字典与用户名字典联合进行遍历操作。

wpscan --url http://dc-2/ -U username.txt -P password.txt
image-20230302174737297
得到两组账号密码
jerry     adipiscing
tom       parturient

登录word press后台。通过信息收集得到 后台地址为 /wp-admin

用jerry账号登录后到处点一点得到flag2,

image-20230302175147416

丢给谷歌翻译

image-20230302175305253

另外一个切入点???尝试登录了tom账号发现并不能得到什么有用的信息。

我们最开始扫描端口的时候就找到了两个端口 分别是 80和7744

SSH连接

另外一个切入点就是从7744入手了,刚好77444是ssh连接的端口。我们就进行ssh连接操作。需要注意的是ssh连接默认的是22号端口,但是这里22号端口并没有开放,我们需要在后面加上 -p 7744

image-20230302175852076
尝试对两个账号都进行了连接,jerry无法进行正常登录 tom账号可以登陆。
image-20230302180200669

登录进去以后查看下当前目录下有什么文件,发现flag3.txt但是通过cat 命令无法查看,尝试使用vi查看。

image-20230302180215807
image-20230302180316477
内网横向移动

这翻译看的我一脸懵逼,提到了jerry感觉可能是需要切换到jerry账号下。进行横向移动操作。

su 命令无法正常使用所以我们需要绕过rbash(受限的bash)

image-20230302181013381

通过上面命令成功横向移动到jerry账号。找了一圈需要切换到根目录下才可以看到flag,

cd ~
image-20230302181244965

提示还要进行深度操作,大概率就是进行提权为root了。

权限提升
image-20230302181801103
直接 sudo -l 发现有个git提示nopassword满足git提权的条件。于是就进行git提权,网上找的方法。很简单两端命令就OK了
image-20230302181920406

我两个方法都尝试了一下,第一次第二种是可以的,不知道为什么第二次复现的时候就要报错了

使用第一种方法 成功提权

image-20230302182333048
总结

当我们通过扫描发现对方80端口是打开的后,但是却无法正常访问后,可以尝试修改本地的hosts文件达到绕过的目的。还有就是需要注意网站采用的是什么cms搭建的,以及ssh连接也不是只可以在22端口才可以开放。然后就是发现正常的命令没办法用了以后尝试切换到其他可以达到相同效果的命令。横向移动的方法也要注意,提权还是要首先执行 sudo -l看下有没有什么可以直接提权的命令。