靶机渗透Lampiao

前言

依然是从vulnhub上面下载的靶机来做

正文

扫描c段,发现ip为10.75.51.172的主机存活并开启了22、80端口

题目中并没有给任何提示信息,只能先去80端口逛一逛。

打开之后是一些文字和一个字符拼成的图片,字符依稀可以看出写的是It’s easy Fiduma egud

以我强悍的英文水平竟然不知道第二行是个什么单词,于是祭出谷歌翻译,发现是一个人名,中文翻译过来叫做菲杜马·埃古德

谷歌一下这位老哥,竟然搜出来很多这个靶机的通关文章23333。于是很不要脸的进去看一看,豁然开朗。nmap扫描ip命令不指定特别参数的话只扫描1-1000端口,也就是说需要添加参数-p-才能扫描这个ip的所有65535个端口。看到这里有良知的退出了教程,给我的namp命令加上了参数,再扫描一次这个ip,果然扫出了其他端口

访问一下1898端口,果然出现了不一样的界面,是一个登陆页面。

尝试了一下SQL注入发现并没有效果。尝试了一下注册新用户,发现需要管理员确认注册,找回密码也是需要邮箱的,感觉没有什么可以利用的点。不过在尝试的过程中倒是发现对于输入没有次数限制也没有验证码,感觉可以爆破。并且发现在右侧有两篇已经发布的文章,截图中的一篇中含有作者的名字tiago,那么起码这位哥应该是已经注册的用户了吧。同样的方法还发现了一个用户名叫Eder。那么现在可以尝试爆破一下两位大哥的密码。

kali中有个工具叫做cewl可以自动爬行一些网页生成一些字符串作为密码字典。点击read more进入tiago大哥的文章,使用cewl爬行生成密码字典

然后掏出Burpsuite进行爆破。话说为什么kali里面的burp是社区版啊哭了,线程只能是1。切成Ubuntu跑一下Pro版的,不到半分钟就跑完了,可惜并没有成功爆破出密码。尝试了一下Eder大哥也没有成功。看来只能想想其他办法了。倔强的使用自带密码字典爆破一下也没什么卵用。

蓦然回首,发现页面下方存在着一些好东西。这个表明此页面使用的是Drupal框架。此时作为一个Google hacker的基本素质就是上网搜索此框架的攻击方法,现学现卖。

等等,现在msf中搜索一下。果然有7个攻击模块可以用,反正也不要钱,一个一个试试呗。但是千万别傻乎乎的按照12345那么试,按照时间顺序,先试试最新的。

![image-20190924192124947](/Users/ama666/Library/Application Support/typora-user-images/image-20190924192124947.png)

实验发现第4个也就是drupal_drupalgeddon2这个漏洞存在

因为系统里面存在python环境,可以写一个好看的shell

![image-20190924194556826](/Users/ama666/Library/Application Support/typora-user-images/image-20190924194556826.png)

进去之后就要开始漫漫提权路了。先搜索一下有高权限的文件,是一个锁,没什么用。

那就只能自己慢慢找线索了。/home目录下只有一个名为tiago的目录,什么文件也没有。讲道理这个时候应该在web目录下发现一些硬编码例如数据库的用户名密码什么的。终于在翻了半天之后在/sites/default/setting.php里面发现了一些东西,看起来是mysql的用户名和密码。

![image-20190924210124479](/Users/ama666/Library/Application Support/typora-user-images/image-20190924210124479.png)

看一下端口开放情况,数据库端口是开着的。但是我们的目的是提权,也不是拖库。

![image-20190924210416033](/Users/ama666/Library/Application Support/typora-user-images/image-20190924210416033.png)

随手用来试试登陆tiago大哥的账户,没想到竟然成功了,得亏是看了一眼home目录

现在有了普通用户的权限和密码,自然看一看他的可执行命令权限,但是很可惜此路不通,用户根目录下也没有什么特别的文件。

看来只能进行系统漏洞提权了,查看系统版本以及内核版本,

发现是16年的发行版,先试试dirty cow能不能用。使用kali自带的工具searchsploit搜索,将原文件使用nc发送到靶机上,然后执行命令

1
g++ -Wall -pedantic -O2 -std=c++11 -pthread -o dcow 40847.cpp -lutil
  1. -Wall 一般使用该选项,允许发出GCC能够提供的所有有用的警告
  2. -pedantic 允许发出ANSI/ISO C标准所列出的所有警告
  3. -O2编译器的优化选项的4个级别,-O0表示没有优化,-O1为缺省值,-O3优化级别最高
  4. -std=c++11就是用按C++2011标准来编译的
  5. -pthread 在Linux中要用到多线程时,需要链接pthread库
  6. -o dcow gcc生成的目标文件,名字为dcow

成功提权

![image-20190924220050905](/Users/ama666/Library/Application Support/typora-user-images/image-20190924220050905.png)

到root目录下看卡flag

总结

这次的思路和上一次有很大不同,一句话来说就是每到一个新的环境就要尽可能的收集有用的信息比如版本信息什么的,然后利用搜索引擎搜索现成的漏洞拿来使用。这里就不得不说必须要对那些广泛使用的漏洞有了解,知道什么环境下用什么漏洞。还有一些小知识点比如nmap默认扫描1-1000端口。在目录里面寻找信息还没有找到什么好方法,还是漫无目的的寻找,或许下一次再耐心一点会更好?