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

Injectics漏洞挖掘实战:从SQL注入到SSTI攻击完整解析

Injectics writeup — TryHackMe

0xH1SFollow
4分钟阅读 · 2025年9月6日

在本篇技术报告中,我将详细解析TryHackMe平台上Injectics靶机的解决过程。该挑战展示了SQL查询和模板引擎(Twig)中不安全输入处理的危害。

侦察阶段

我首先使用Nmap进行全端口扫描,使用-p-参数扫描所有65,535个端口,-sS参数执行隐蔽的SYN扫描,-T4参数提高扫描速度。

(nmap)

扫描结果显示20和80端口处于开放状态。

枚举阶段

接下来,我使用Gobuster枚举Web服务器上的隐藏文件和目录,在扫描中使用-x参数并指定js、json、php扩展名来显示相应文件。

(gobuster)

这发现了三个有趣的文件:

  • login.php → 登录功能页面
  • composer.json → 显示网站使用Twig 2.14版本,该版本已知存在SSTI(服务器端模板注入)漏洞
  • phpmyadmin → 表明服务器后端使用MySQL

(composer.json)

访问80端口的Web应用,我发现一个显示各国运动员奖牌数的页面。检查源代码后发现指向名为mail.log文件的注释。

(mail.log)

打开该文件后,我了解到如果users表被删除或损坏,系统会自动重新生成两个默认凭证,这些凭证也会记录在此文件中。这为我们提供了明确的攻击路径:删除表以强制凭证重新生成。

(log)

漏洞利用阶段

随后我测试了login.php功能的SQL注入漏洞。

在用户名字段提交1触发了关于无效字符的错误。

(invalid)

深入挖掘后,我发现了一个隐藏脚本。

该脚本列出了被阻止的关键字,如OR、AND等。

(invalid)

为了绕过此过滤器,我通过BurpSuite发送了编码后的payload:

1%27%20||%201=1%20--+

相当于:
1' OR 1=1 --

(payload)

这成功绕过了身份验证,我以dev用户身份获得了访问权限。

(dashboard)

接下来,我通过在所有输入框中输入21*21来探索奖牌编辑功能。

(21*21)

应用程序返回了441,确认输入正在由Twig模板引擎进行评估。

(441)

由于存在SSTI漏洞,我尝试利用它。我的目标是删除users表,强制应用程序使用默认凭证重新创建它。我使用了:

21; drop table users --

(drop table)

这触发了系统重新创建表的重新加载过程。

(drop)

等待约2分钟后,我使用在mails.log中找到的凭证登录,成功以admin身份验证并获取了第一个flag。

(admin)

权限提升

以admin身份登录后,出现了一个新的Profile选项卡。我开始测试所有输入框。

(twig)

这显示FirstName字段存在SSTI漏洞,并且这次不仅接受数字还接受字符串。

(49)

此时,我将攻击升级为远程代码执行(RCE)。使用以下Twig payload:

{{['ls ./flags',""]|sort('passthru')}}

(ls)

为了获取最终flag,我执行了:

{{['cat ./flags/5d8af1dc14503c7e4bdc8e51a3469f48.txt',""]|sort('passthru')}}

(update)

这成功显示了最后一个flag,完成了该靶机。

(final flag)

所有问题的答案如下:

  1. 登录admin面板后的flag值是什么?
    THM

  2. flags文件夹中隐藏文本文件的内容是什么?
    THM

以上就是全部内容!感谢阅读,下次再见!希望这份技术报告对您有所帮助。
更多精彩内容 请关注我的个人公众号 公众号(办公AI智能小助手)
对网络安全、黑客技术感兴趣的朋友可以关注我的安全公众号(网络安全技术点滴分享)

公众号二维码

公众号二维码

http://www.hskmm.com/?act=detail&tid=25963

相关文章:

  • K8S上采用helm部署 Prometheus + Grafana
  • AI元人文的硅基基石体系:EPU+VPU+WBUC+WAUC深度解析——声明Ai解析
  • 题解:P4779 【模板】单源最短路径(标准版)
  • 网关配置
  • 高频感应钎焊在制冷行业的应用与优势:高效、绿色、智能的焊接革命!
  • 题解:P12672 「LAOI-8」近期我们注意到有网站混淆视听
  • 详细介绍:基于LangChain构建高效RAG问答系统:向量检索与LLM集成实战
  • EPU+VPU+WBUC+WAUC:AI元人文的硅基基石体系
  • 股市技术分析突破
  • 干货分享:无需下载,在线快速编辑图片的完整教程
  • 34.1STM32下的can总线实现知识(区分linux)_csdn - 详解
  • js实现promise常用场景使用示例
  • 英语_阅读_Balancing Benefits and Risks_待读
  • 大模型部署
  • 读技术之外:社会联结中的人工智能02劳工
  • linux
  • 鼠标图标更改样式
  • webpack和vite的区别 - 指南
  • m3u8在线播放测试的方法与常见问题解决方案(附网页演示
  • 校招题
  • Manim实现旋转扭曲特效
  • go语言学习 第5章:函数 - 详解
  • 混沌熵池:“创造之源”还是“皇帝的新衣”?
  • 间谍软件通过虚假自然灾害警报传播
  • KaTeX手册
  • Qt编写上下界面切换效果/前进到下一个界面/后退到上一个页面/零件工艺及管理设计系统
  • 【题解】P1131 [ZJOI2007] 时态同步
  • LGP9120 [NOIP 2022.5] 密码锁 学习笔记
  • 深入解析:OpenCV CUDA模块图像处理------创建CUDA加速的Canny边缘检测器对象createCannyEdgeDetector()
  • 机器人技术奖学金项目助力STEM教育发展