技术社区
安全培训
技术社群
积分商城
先知平台
漏洞库
历史记录
清空历史记录
相关的动态
相关的文章
相关的用户
相关的圈子
相关的话题
注册
登录
TRX CTF 2025 WEB题目分析
寒影和寒风萧
CTF
149浏览 · 2025-02-27 11:24
返回文档
Online Python Editor
进来后是一个线上的python editor,校验你输入的python语法是否正确。这里给了dockefile和一些文件,我们看看
app.py
secret.py
然后在index.html中
做了一个请求,所以逻辑就是,我们在网页中输入内容,然后他把我们输入后的内容发送到后端的check路由进行检查,利用
ast.parse
来构成语法树,如果有错误就调用
traceback.format_exc()
函数报错。
我们这里先随便示例
控制台中便有报错,并且告诉你在第几行,然后在请求中会这样报错
会traceback爆出错误。
接下来我们看一下ast辅助函数
也就是说我们可以指定一个filename作为他的输入文件。
所以我们这里应该是传入一个secret.py刚好他的flag位置在第六行,我们就构造5个换行符
\n
,然后加上一个
:
(只要令他报错就行),他就会把第六行的报错内容输出出来,刚好也是flag位置,所以就能得到flag
最后打法:
内心os:当时已经读到第一行了,但是没想到\n能往下面读这个特性....
Baby Sandbox
同样也是有附件,我们拿出来看看
server.js
bot.js
~~我服了才看见最顶上的注释...~~~
先看一下bot这边,可以看到:
在local的地方存储了flag
在这里跳转到其local然后将参数传递过去。
传递到index.ejs中
然后这里用了<%=%>来渲染,其实就是把iframe嵌套进来
然后在iframe中嵌套的地方:
然后这里我觉得有必要说一下关于Shadow DOM方面的一些知识点。
因为我们可以看到其实从始至终flag都没有被渲染到可视的页面内,那为什么我们最终能获取到flag?就是要Hacking Shadow DOM。
Shadow DOM
是 Web Components 技术的一部分,它允许你创建
封装的 DOM
,从而使你能够将 HTML 结构、CSS 样式和 JavaScript 功能封装在一个独立的、隔离的环境中。这使得组件的样式和功能不受外部页面的影响,也不影响外部页面。(GPT回答)
而在iframe.ejs中有这么一行
shadow.appendChild(flagElement);
,也就是他把这个flag封装起来,也就是页面上是不会显示的,所以我们在传payload的时候就没办法利用正则来对页面内的flag进行获取。
具体怎么攻击可以看这一篇。
https://blog.ankursundara.com/shadow-dom/
所以我们可以利用window.find来指向他进行获取flag的操作。
接着我们来看CSP和SandBox的位置
可以看到设置了策略
script-src
是
unsafe-inline
所以可以内联执行js
其他的,这里的
default-src
设置成了none,阻止页面加载任何外部资源。所以对于外带flag这里还需要绕过一下。
这里设置了一个sandbox,但是还是限制了弹出新窗口。
具体绕过看这一篇:
https://blog.huli.tw/2022/04/07/en/iframe-and-window-open/
所以我们可以利用
top.document.body
进行写入,然后在导航页写入xss,进行外带flag
最终exp:
注意一下为了完整的将payload传输,我们需要hex一下。
最后外带
zStego
简介
进来后页面是一个文件上传和扫描功能
我们来看一下源码(主要片段)
所以我们的思路其实就是伪造一个docx文件,让他在
file_get_content
的时候把一个压缩后的flag.txt拿出来再放进decode一下即可。
但是这里要注意一下怎么去构造这个文件,用软链接使其media指向根目录去读取flag,这里直接贴exp吧
最后拿到flag
0
人收藏
0
人喜欢
转载
分享
0
条评论
某人
表情
可输入
255
字
评论
发布投稿
热门文章
1
从零掌握java内存马大全(基于LearnJavaMemshellFromZero复现重组)
2
突破网络限制,Merlin Agent助你轻松搭建跳板网络!
3
从白帽角度浅谈SRC业务威胁情报挖掘与实战
4
基于规则的流量加解密工具-CloudX
5
从0到1大模型MCP自动化漏洞挖掘实践
近期热点
一周
月份
季度
1
从零掌握java内存马大全(基于LearnJavaMemshellFromZero复现重组)
2
突破网络限制,Merlin Agent助你轻松搭建跳板网络!
3
从白帽角度浅谈SRC业务威胁情报挖掘与实战
4
基于规则的流量加解密工具-CloudX
5
从0到1大模型MCP自动化漏洞挖掘实践
暂无相关信息
暂无相关信息
优秀作者
1
T0daySeeker
贡献值:38700
2
一天
贡献值:24800
3
Yale
贡献值:21000
4
1674701160110592
贡献值:18000
5
1174735059082055
贡献值:16000
6
Loora1N
贡献值:13000
7
bkbqwq
贡献值:12800
8
手术刀
贡献值:11000
9
lufei
贡献值:11000
10
xsran
贡献值:10600
目录
Online Python Editor
app.py
secret.py
Baby Sandbox
server.js
bot.js
zStego
转载
标题
作者:
你好
http://www.a.com/asdsabdas
文章
转载
自
复制到剪贴板