Vulnhub靶机实战之HA: Forensics
本文首发于“合天网安实验室” 作者:lee2dog
描述:这是一个中等难度的取证挑战环境,通过网络取证调查方法和工具,找到关键证据获取flag。
0x1、基本信息收集
确定目标主机IP
使用nmap 扫描
排除网络内其他的ip,10.1.1.152就是目标机器
使用nmap扫描主机更加详细的信息
可以把扫描处理的信息记录下来
目标开放的端口:22、80端口,服务有:ssh服务和http服务。
0x2、收集网站信息
浏览目标网站看看可以获取哪些信息
网页上有四张图,还有一些描述文字。点击"Click here to get flag!" 试试
有一张gif图片。可以把网站的图片收集 一下,放到一个文件夹。既然是取证,不要放过任何蛛丝马迹
看看网站源代码里面有什么吧:
我们发现有一个images的目录,访问试试
发现有多张图片,除了网页上显示的几张之外,还有一个"dna.jpg"和"fingerprint.jpg"的图片,同样把它们下载下来。
这个"fingerprint.jpg" 看起来是个暗示,我们看看图片的信息。
直接file查看文件信息,发现exif信息里面存在 flag,这样第一个flag就到手了
别的图片也可以看一下:
好像没啥东西。
我们继续对网站下手,试试扫描网站文件和目录
dirb除了可以扫描目录之外,还可以扫描指定文件后缀的方式来扫描文件,比如我们可以扫描是否存在备份文件之类的,比如.backup、.git、.txt什么的
发现一个txt文件,看看是什么内容
"tips.txt"中记录了两个文件路径,访问看看
igolder目录下有一个文件,我们下载下来,zip文件也下载下来
0x3、文件信息收集
打开"clue.txt"看看
应该是一个PGP密钥,还有一部分PGP加密的消息
再看看zip文件
zip文件似乎被加密了。密码应该是PGP密钥里面。
我们可以拿到在线PGP解密网站上解密一下那串消息。
当我搜索 PGP在线解密的时候出来的就是 igolder这个网站
我们把PGP私钥和消息粘贴进去,解密出来是一个提示:
提示说:取证人员忘记密码了。但是记得是6位数,前三位是"for",后三位是纯数字。
既然这样我们只能暴力猜解了。我们可以先用"crunch"工具生成字典,然后用"fcrackzip"去破解zip文件
解出来密码是"for007",然后解压文件
有两个文件,一个是pdf文件,一个是dmp文件,从名字来看,是windows的lsass进程的内存转储文件。
先打开pdf文件看看
找到第二个flag了。
这里我们可以用mimikatz工具检查dump文件
可以发现有两个用户,一个是jasoos,一个是raj,mimikatz没有直接读取出密码明文,我们可以试试破解NT Hash,用John the Ripper 工具试试
emm,很慢,我们也可以找一个在线网站破解
快多了,一下子就出来了。
0x4、目标主机信息收集
NT hash解密出来了。但是目标机器是一个Linux,开放了22端口。难道就是用的这个密码吗?
试一试吧,为了方便后渗透,这里我们使用msf里面的ssh_login模块
可以看到登录成功了。我们可以用session -u 升级成一个meterpreter会话
我们发现目标主机上有多个网络连接
0x5、横向渗透
我们利用msf后渗透模块的路由添加功能,添加网络路由,然后对目标网络进行扫描
然后探测一下目标主机
发现一台目标机器 172.17.0.2
接着对目标进行一下端口扫描
发现目标开放了21端口。我们可以试试ftp登录
发现可以使用匿名登录,我们试试登录到ftp中。先切换到目标主机的shell中
但是这个shell有点难用,我们可以调用python实现一个友好一点的shell,然后用匿名账号登录到ftp
看看ftp中都有什么文件
里面有一个pub目录,目录中有一个saboot.001的文件,我们把它下载下来
然后把这个文件下载到我们自己的机器上
下载下来后,看一下文件的信息
看起来是一个磁盘镜像文件。我们可以用autospy加载文件进行分析。
0x6、磁盘取证分析
在Kali中找到autospy
打开软件然后加载 saboot.001文件,新建case过程就一一详细说明了
把镜像文件加载进来:
添加完成之后,点分析文件
然后我们发现有一些文件
发现一个flag3.txt打开看看
第三个flag到手
还有一个creds.txt的文件,我们打开看看是什么
看起来像一串被加密的字符串,有点像base64编码的
试试解密
解密出来是“jeenaliisagoodgirl”
然后这个saboot.001就找不到其他有价值的信息了。
当然也可以使用FTK Imager之类的软件加载磁盘镜像也是可以的
0x7、目标主机分析
我们再次回到目标主机,看看目标主机还有什么线索
目前我们得到的目标主机shell是一个普通用户
看看是否还有其他用户
发现一个 forensic用户,进去看看
没有发现什么有价值的线索。
看看root用户下面有什么?
发现没有权限查看。
sudo也不行
试试找找suid程序
发现没有可利用的。
试试切换到forensic用户,尝试用jeenaliisagoodgirl这个密码
发现成功了
试试这个用户是否有sudo权限
发现是可以的。而且可以执行命令的路径有/sbin/ /bin这种。那么就可以直接sudo 查看root目录中的文件了
成功得到第四个flag
至此,四个flag都到手了。成功完成了我们的任务,比如 node 只在原型链污染有接触过一点点,但却没有深入,还是要继续努力