type
status
date
slug
summary
tags
category
icon
password
21-25
21. [BJDCTF2020]Easy MD5
根据题目给的链接找到源码下载并查看
BJDCTF2020_January
BjdsecCA • Updated Dec 15, 2025
根据
index.php的内容,进入该页面后会跳转到leveldo4.php 接着根据
leveldo4.php的内容,满足条件后跳转到levels91.php根据
levels91.php的内容,满足条件后继续跳转到levell14.php最后是
levell14.php的内容知道了这个逻辑,我们可以直接访问levell14.php,然后传入参数
传入数组绕过强比较

22. [MRCTF2020]你传你🐎呢
尝试上传php文件,发现被过滤,上传图片成功
先上传一个
.htaccess配置文件,作用是把aaa.png当成php来解析
然后上传一句话木马

然后使用蚁剑连接,访问
http://deb8a5cb-efd7-40f4-8a47-550ea77cc2e9.node5.buuoj.cn:81/upload/bc0bf6c34fe8cf7ceb173f3ea3e33335/aaa.png 连接后进入根目录,拿到flag

23. [护网杯 2018]easy_tornado
进入靶场,在
flag.txt中得到提示flag in /fllllllllllllag,然后在hint.txt中得知md5(cookie_secret+md5(filename))搜索tornado可知它是python的一个模版,这题是一个ssti注入
查询相关资料,可知render是Tornado框架中的一个核心方法,用于将动态数据渲染到HTML模板中。它通过传递参数生成不同的网页内容

Tornado的模板引擎在渲染时,会将双花括号
{{ }}中的内容识别为Python表达式并执行:模板中的
{{变量名}}会被替换为当前作用域中该变量的值。模板上下文默认包含
handler对象,通过它可以访问请求相关的所有属性和方法。handler.settings的特殊性
handler.settings是RequestHandler的一个属性,指向Application.settings(即Tornado应用的全局配置字典)。这个字典包含敏感信息当用户输入被直接拼接到模板中且未经过滤时,攻击者可以注入模板语法:
如果用户提交msg=
{{handler.settings}}:1.模板引擎会解析
{{handler.settings}}。2.从当前handler对象中获取settings属性。
3.将整个配置字典渲染到页面中,导致信息泄露
查询文档可知
cookie_secret在settings中
14973e00-1166-4b78-95fe-f6ab1201874d拿到cookie_secret后,根据提示进行加密,然后访问得到的结果链接,最后成功拿到flag

24. [MRCTF2020]Ez_bypass
进入靶场,源代码如下:
第一个md5强类型比较用数组绕过
第二个传入一个非数字的变量但其值等于1234567用末尾加空格绕过

25. [ZJCTF 2019]NiZhuanSiWei
使用
data://伪协议来构造$text?text=data://text/plain,welcome to the zjctf 然后变量file不能带有flag,根据下面的提示,需要查看
useless.php的内容使用php://filter绕过
file=php://filter/read=convert.base64-encode/resource=useless.php拿到base64加密后的源码
解码后如下:
使用php运行如下代码,得到序列化后的结果
结果:
O:4:"Flag":1:{s:4:"file";s:8:"flag.php";} 于是最终传入
http://0200d3e2-81b9-408c-87b6-96052fd366f9.node5.buuoj.cn:81/?text=data://text/plain,welcome to the zjctf&file=php://filter/resource=useless.php&password=O:4:"Flag":1:{s:4:"file";s:8:"flag.php";} 即可拿到flag- 作者:Yuyuzheng2499
- 链接:http://yuyuzheng2499.com/CTF/buuctf-web-21-40
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。
