EMPIRE: BREAKOUT
下载地址:
https://www.vulnhub.com/entry/empire-breakout,751/
解压用VMware打开
一.使用nmap进行信息收集
sudo nmap -sn 192.168.0.0/24
sudo nmap --min-rate 10000 -p- 192.168.0.171
sudo nmap -sT -sV -O -p80,139,445,10000,20000 192.168.0.171
sudo nmap -sU -p80,139,445,10000,20000 192.168.0.171
二.对收集到的攻击面进行分析
访问80端口
发现是个Apache的默认页面,打开源码查看一下,在最下面发现了一串加密的内容,经过研究确定是brianfuck,然后进行解密得到的内容为:.2uqPEfj3D
139,445端口最常用的方法就是用enum4linux进行枚举: sudo enum4linux 192.168.0.171 扫描出一个账号名:cyber
访问10000,20000端口,发现是两个登录页面
利用我们前面得到的一个神秘的字符串和账号进行登录尝试,发现能登录20000这个端口的页面 在浏览页面的时候发现了有一个执行shell的命令界面
利用这个shell的界面进行信息收集: 1.有一个tar文件,而且是可执行的,然后再用getcap查看发现:CAP_DAC_READ_SEARCH:忽略文件读及目录搜索的DAC访问限制,看来是要我们去找个不能直接访问的文件进行压缩解压绕过 2.得到一个flag:3mp!r3{You_Manage_To_Break_To_My_Secure_Access}
猜测是要我们去找一个文件进行压缩再解压最后得到某个线索 经过一番搜索在/var/backups中找到一个.old_pass.bak,发现不能直接访问
对.old_pass.bak进行压缩再解压查看后得到:Ts&4&YurgtRX(=~h ,而且从得到的信息来看很有可能就是root的密码
发现直接在20000端口页面提供的shell环境下不能进行切换,考虑用反弹shell再切换试试
用vim写一个bash反弹shell
在攻击机器上开启一个监听
在2000端口的页面的shell环境下赋予bash.sh一个执行权限然后执行
成功建立了反弹shell连接,然后进行root切换,成功拿到了root权限
考察点:
1.nmap的使用和对参数的理解
2.对139,445端口的理解和enum4linux的使用
3.信息收集的能力和抗压能力
思路整理:
首先第一步就是利用nmap进行信息收集,然后对搜集到的攻击面进行分析。在80端口中不能放弃任务一个审查点,就比如这个靶场的页面源码最底部隐藏了一个很重要的信息,解密后得到了20000端口页面的登录密码,然后就是对139,445端口的渗透利用了,最常用的就是使用enum4linux进行扫描,最终获得了一个账号。既然得到了一个账号,那我们就可以去尝试使用得到的一系列看起来像密码的字符串,要的就是多尝试。然后登录进了20000端口的页面, 通过分析页面的功能发现了一个shell窗口,然后就是利用这个shell窗口进行信息收集。首先通过ls -al查看到了一个tar文件,而且有执行的权限,这属于反常点,然后再用getcap这个命令发现了有绕过文件查看的权限,思路就很清晰了,就是去找一个不让我们查看的文件,而且比较敏感的,然后再利用压缩和解压进行查看,最终得到了root的密码。
收获总结:
1.学到了brianfuck:Brainfuck,简称BF,是一种极小化的编程语言,由Urban Müller在1993年创造。
目标是创建一种简单的、可以用最小的编译器来实现的、符合图灵完全思想的编程语言。
2.学到了getcap这条命令:Capabilities的主要思想在于分割root用户的特权,即将root的特权分割成不同的能力,每种能力代表一定的特权操作
CAP_DAC_READ_SEARCH:忽略文件读及目录搜索的DAC访问限制
3.学到了可以利用tar进行压缩再解压的方法去绕过不能直接访问的文件