小H靶场笔记:Empire-LupinOne

Empire:LupinOne

January 11, 2024 11:54 AM
Tags:fuzz,pip提权,ssh私钥
Owner:只惠摸鱼

信息收集

  • 使用arp-scan 和 namp扫描C段存活主机探测靶机ip:192.168.199.141,且80和22端口开放

  • 扫描靶机开放端口,进行全面扫描,发现有一个似乎是一个目录。

    小H靶场笔记:Empire-LupinOne_第1张图片

  • 访问一下80端口

    小H靶场笔记:Empire-LupinOne_第2张图片

  • 根据扫到的信息访问一下,发现道路对了。那爆破一下目录

    小H靶场笔记:Empire-LupinOne_第3张图片

    小H靶场笔记:Empire-LupinOne_第4张图片

  • 爆破一下目录,

    • 御剑扫一下

      小H靶场笔记:Empire-LupinOne_第5张图片

      • 发现一个apache的服务器帮助文档

      • 再用dirb扫一下,发现两个新得页面

        • 一个是jquery

          小H靶场笔记:Empire-LupinOne_第6张图片

        • 一个无权限

          小H靶场笔记:Empire-LupinOne_第7张图片

  • 没有其他发现了,那就还是那个~myfiles目录入手吧,开始扫这个有没有其他页面的

    • 不管是御剑还是dirb都没有什么发现。

      小H靶场笔记:Empire-LupinOne_第8张图片

      小H靶场笔记:Empire-LupinOne_第9张图片

  • 那试试查询一下跟这个格式相关的,因该有其他页面,进行一个暴力破解吧。

    • http://192.168.199.141/~FUZZ

    • wfuzz扫描

      • wfuzz -c -w /usr/share/wfuzz/wordlist/general/common.tst http://192.168.199.141/~FUZZ
        • 扫描的结果由很多错误,过滤一下
      • wfuzz -c -w /usr/share/wfuzz/wordlist/general/common.tst —hw 31 http://192.168.199.141/~FUZZ

      小H靶场笔记:Empire-LupinOne_第10张图片

漏洞利用

  • 访问一下,发现了第二个线索:一个可能是用户名icex64 ,另一个是还有隐藏文件,且是ssh私钥,还有破解密钥的方法提示:fasttrack(这是一个字典文件)

    小H靶场笔记:Empire-LupinOne_第11张图片

  • 继续爆破出隐藏文件,猜测是.txt后缀的隐藏文件(在linux里隐藏文件一般是是.开头)

    • 先试一下是不是不需要加.(发现没有什么东西)

      小H靶场笔记:Empire-LupinOne_第12张图片

    • 再试试加. ,爆出了一个隐藏文件

      • wfuzz -c -w /usr/share/dirbuster/wordlists/directory-list-2.3-medium.txt --hc 404,403 http://192.168.199.141/~secret/.FUZZ.txt

  • 访问一下,确实是加密过的密文。

    小H靶场笔记:Empire-LupinOne_第13张图片

  • 分析一下密文,发现是base58加密

  • 直接进行在线解密,找到了一堆ssh私钥。

  • 破解私钥口令

    • 将私钥保存到文件key中,修改权限(600,不能太高,不然可能无法登录)

      小H靶场笔记:Empire-LupinOne_第14张图片

    • 使用ssh2john生成hash

      • ssh2john key > key.hash

        小H靶场笔记:Empire-LupinOne_第15张图片

    • 并使用工具john和字典fasttrack.txt来破解口令

      • john --wordlist=/usr/share/wordlists/fasttrack.txt key.hash

        小H靶场笔记:Empire-LupinOne_第16张图片

  • 得到了密码,再结合之前猜测的用户名,登陆一下ssh

    • ssh [email protected] -i key(-i 参数用于指定用于身份验证的私钥文件,以替代默认的用户名/密码身份验证方式。)

    小H靶场笔记:Empire-LupinOne_第17张图片

  • 拿到了普通用户的flag

提权

  • 查找SUID文件或sudo(无需密码)的文件,发现有一个arsene用户的文件和运行python3,是不是可以直接提权到arsene用户。

    小H靶场笔记:Empire-LupinOne_第18张图片

  • 发现有一个python文件,去看一下。有一个note信息说我们当前的用户可以执行这个文件,查看文件权限发现没有写入权限。

    小H靶场笔记:Empire-LupinOne_第19张图片

  • 查看heist.py文件,发现程序导入了webbrowse。去python目录下看能不能对这个模块进行修改,让它返回一个shell。

    小H靶场笔记:Empire-LupinOne_第20张图片

  • 查找webbrowser模块

    在这里插入图片描述

  • 查看文件权限,发现有写入权限

    在这里插入图片描述

  • 写入获取shell命令

    小H靶场笔记:Empire-LupinOne_第21张图片

  • 切换shell

    在这里插入图片描述

  • 查询 sudo (无需密码)的文件,发现有pip

    在这里插入图片描述

  • 直接进行pip提权(搜一下pip提权漏洞利用)

    TF=$(mktemp -d) 
    echo "import os; os.execl('/bin/sh', 'sh', '-c', 'sh <$(tty) >$(tty) 2>$(tty)')" > $TF/setup.py 
    sudo pip install $TF
    
  • 提权成功!

pip提权

  • 当sudo -l中有无需密码的root权限的pip文件时
  • 运行下面命令即可提权
TF=$(mktemp -d) 
echo "import os; os.execl('/bin/sh', 'sh', '-c', 'sh <$(tty) >$(tty) 2>$(tty)')" > $TF/setup.py 
sudo pip install $TF

fuzz

  • wfuzz是kali自带模糊测试工具,可以进行模糊目录暴力破解。
  • Wfuzz 中的有效负载是数据源。
    • 这个简单的概念允许在 HTTP 请求的任何字段中注入任何输入,允许在不同的 Web 应用程序组件中执行复杂的 Web 安全攻击,例如:参数、身份验证、表单、目录/文件、标头等。
  • 参数详解

你可能感兴趣的:(靶场笔记,笔记,网络安全,安全,web安全)