当前位置:   article > 正文

Vulnhub系列:FristLeaks

fristleaks

一、配置靶机环境

以往的靶机,本人是在virtual box中,去配置,和vm上的kali进行联动,但是这个靶机需要DHCP,以往的方式可能不太行了,或者可以在virtual box中桥接成统一网卡。下面介绍下本人最有用的方法:

靶机地址:Vulnhub

下载好后,利用vm导入,导入期间存在报错 ,无需理会,直接重试,即可导入成功。

下一步,在编辑该靶机设置的时候会出现错误,导致虚拟机整体错误,直接退出。这是因为虚拟机版本太高导致,仅需将该靶机右键打开管理,修改兼容度,即可正常访问编辑设置。

向下兼容到16.x,就可以修改靶机配置,将靶机设置为NAT模式,并且在高级选项中,按照靶机要求修改MAC地址:08:00:27:A5:A6:76

然后开启靶机,即可正常出现如下图的ip地址,接着就可以开始本次渗透之旅了。

二、渗透过程

  1. 信息收集

因为已经知道该靶机的ip地址,这边可以直接用nmap进行端口探测,或者利用arp-scan,namp检测同网段存活的主机。具体命令,如果不清楚,请看之前的工具试用介绍。

kali ip:192.168.44.188 靶机ip为:192.168.44.132

扫描发现只有80端口,存在web端服务,对其进行目录爆破,发现了/images/、/robots.txt目录

访问ip,发现了主页,查看源代码没什么发现

查看robots.txt发现了三个小目录,分别打开后都是同一张图片,将图片下载到本地,猜测可能存在图片隐写之类的,利用strings 该图片,发现并没有什么有用的信息

返回主页后,一筹莫展,在主页上,它的标语,keep calm and drink fristi,意思是保持冷静和喝fristi,有点奇怪,浅浅的试了下fristi,发现了登录界面。

查看源代码后,在注释中看到了by eezeepz,这应该是用户名

在底下有一大串的base64的字符串,将其复制到本地,进行解码

发现是个png文件,于是将其解码后,变为png文件。

查看文件发现是个keKkeKKeKKeKkEkkEk,这应该是密码(吐槽一句,什么鬼密码!)

得,登陆成功,发现了个上传文件的按钮

2、web渗透

这就很明显了,这是要利用文件上传漏洞来获取shell,那就先随便传一个看看有没有什么限制

果然,只让传png,jpg,gif图片类型的文件。下面就好办了,利用burp抓包,将事先准备好的马,上传,拦截后,发送到重发中,修改后缀尝试下,上传成功!那就直接在包里修改,上传。ok!

上传后,显示了上传的文件夹,然后在kali本地新开终端利用nc进行监听,在网页访问刚才上传的文件,即可反弹shell

  1. 提权

搜索了一圈,也没有什么有用的信息,在/home中发现了3个用户,经过尝试只能进入eezeepz用户中,同时发现了个notes.txt文件

查看一下:

我让你可以做一些自动检查,但是我只允许你访问/usr/bin/*系统二进制文件。我所做的

然而,复制一些额外的经常需要的命令到我的Homedir: chmod df cat echo ps grep egrep你可以使用这些从/home/admin/

不要忘记为每个二进制文件指定完整路径!

只需在/tmp/中放入一个名为“runthis”的文件,每行一个命令输出到/tmp/目录下的“cronresult”文件。它应该用我的账户权限每分钟运行一次。

大致意思是,在/tmp/下建立一个runthis文件,然后利用chmod命令进行授权,它会自动运行。

  1. touch runthis
  2. echo "/usr/bin/chmod -R 777 /home/admin"> /tmp/runthis

发现可以列举出/home/admin中的文件,并且出现了两个txt文件

过一分钟多后,可以进入admin的文件夹中,这里有个加密的python脚本,结合刚才两个文件夹的内容,可以联想到应该是利用加密脚本将明文加密成了现在的密文。查看脚本

那就浅浅的写个解密的脚本

  1. import base64, codecs, sys
  2. def decodeString(str):
  3. decod = codecs.decode(str[::-1], 'rot13')
  4. return base64.b64decode(decod)
  5. cryptResult = decodeString(sys.argv[1])
  6. print cryptResult
  7. or
  8. import base64,codecs,sys
  9. def decodeString(str):
  10. string = str[::-1]
  11. string = string.encode('rot13')
  12. return base64.b64decode(string)
  13. print decodeString(sys.argv[1])

运行后得到:

thisisalsopw123,LetThereBeFristi!

之前在home中还存在着第三个用户,这两个难道就是那个用户名的密码?浅浅的一试,切换到了fristigod用户

利用sudo -l查一下看看存在什么提权:

发现了个二进制运行文件doCom,进入文件夹后输入sudo -u fristi ./doCom su -

直接切换到root,清清爽爽提权成功,获取flag

三、总结

本次靶机渗透,前期的环境配置着实有点坑,花费了点小时间,因为习惯了virtual box运行靶机,vm运行kali,这样将kali的一个网卡设置为桥接,直接桥接到virtual box的本地网,运行起来比较稳定。

再加上兼容的问题,在环境配置方面有一丢丢小麻烦,不过just小麻烦。最终还是开启了渗透之旅。

该靶机利用web端文件上传漏洞,反弹shell,在shell中的信息收集,获取了靶机的各类信息,同时发现了加密脚本,利用加密脚本写出破解脚本,解密密文,最后切换到具有提权的用户,成功提权。难度适中,可以巩固操作,加深印象!后续会继续更新!

每天学习一丢丢,进步一丢丢!

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/777871
推荐阅读
相关标签
  

闽ICP备14008679号