TR0LL: 1靶场实操
靶场信息
下载后使用vm打开即可
TR0LL1靶场地址:https://www.vulnhub.com/entry/tr0ll-1,100/
靶场创建时间:2014年8月14日
靶场描述:Tr0ll 的灵感来自于 OSCP 实验室内对机器的不断拖钓。目标很简单,获取 root 权限并从 /root 目录获取Proof.txt。不适合容易沮丧的人!公平的警告,前方有巨魔!
难度:初级
类型:boot2root
目标:获取 root 权限并从 /root 目录获取Proof.txt
kali:192.168.1.131
靶机:192.168.1.139
信息收集
获取主机IP
使用nmap扫描主机同网段的IP
可以对靶机打开前后进行扫描网段即可很容易找到靶机IP
然后对靶机IP扫描开放的端口
21端口开启了ftp服务,22开启了ssh,80开启了http
先访问80端口,查看前端页面
查看源码可以发现这个图片
其中可能存在着一些隐写信息,我们尝试将其下载下来查看其信息
使用wget远程下载
我们在这里使用了binwalk和exiftool来查看图片中是否存在隐写信息,但是并未发现
接下来尝试使用dirb对其目录进行爆破
对目录进行枚举,结果没有获取到什么有用的信息
我们在端口扫描时发现其开启了21端口,接下来访问开启的ftp服务
运行 FTP 服务的典型错误配置允许匿名帐户像任何其他经过身份验证的用户一样访问服务。当出现提示时,可以输入匿名用户名(anonymous),然后是任何密码,因为服务将忽略此特定帐户的密码。
在其中我们发现了一个.pcan文件
.pcap文件是一种常用的网络流量捕获文件格式,它记录了网络接口上的数据包信息,包括但不限于IP数据包、TCP数据包、UDP数据包等
将该文件下载出来
在将该文件下载下来后就需要使用合适的工具对其进行读取和分析,这里我们使用Wireshark
Wireshark是一个强大的网络协议分析工具,它可以图形化地展示PCAP文件中的数据包信息
这个流量包是一个对话,是10.0.0.6和10.0.0.12两个IP进行交互,因此我们去追踪一下TCP流
这里是一个正常的交互,我们发现了secret_stuff.txt文件信息
此时我们可以发现这里出现了tcp.stream eq 0,这个时候如果改成1会发生什么呢
这里是这个secret_stuff.txt文件信息
继续枚举,成功获取到新的信息
好吧,好吧,好吧,你真是个聪明的小恶魔,你差点就找到了sup3rs3cr3tdirlol 😛
糟透了,你差一点就…要更加努力!
在多次尝试后发现这是一个目录
将文件下载下来并查看
发现他是32位ELF可执行文件,使用strings对其进行静态分析
找到地址0x0856BF
发现两个文件夹,接下来将其打开获取信息
good_luck文件夹下是which_one_lol.txt
this_folder_contains_the_password文件夹下是Pass.txt
因此我们猜测which_one_lol.txt应该是用户名,Pass.txt是密码
接下来将两个文件下载下来,尝试使用hydra爆破一下
爆破成功
login: overflow
password: Pass.txt
然后登录ssh,建立稳定的交互shell
然后获取到内核版本Linux 3.13.0
提权1
使用searchsploit查询该版本的exp
将其复制出来
然后查看该exp的使用方法
接下来我们首先开启http端口
进入/tmp目录下使用wget远程下载exp并编译
运行编译后的文件成功获取到root权限
成功获取到proof.txt
702a8c18d29c6f3ca0d99ef5712bfbdc
提权2
在上面登录ssh时它会自动结束ssh进程,而且还是整点提示,说明有计划任务在自动到点结束进程。每5分钟执行一次
接下来尝试找到这个文件并进行修改
查看计划任务日志信息
查看该计划任务文件信息
然后我们使用vi对该文件进行修改
将其强制修改保存后等待该文件执行
当我们再次登录ssh时进入/tmp目录下可以发现成功生成了ming可执行文件
运行该文件后成功获取root权限
成功获取proof.txt
总结
该靶机一共开放了http、ssh、ftp三个服务端口,我们在进行信息收集时学习到了ftp的anonymous(匿名)登录,并使用wirshark网络协议分析工具对从ftp中获取到的pcan文件进行读取和分析,在其中获取到了目录文件等,最后在使用hydra进行ssh用户密码爆破,最后再利用exp进行提权,在这里我们也学到了修改计划任务中的命令来进行提权(这里使用了创建root可执行程序,获得root权限)。后面还可以用反弹shell,或者自己写木马进行提权等等。