Simple_SSTI_1-WEB-bugku-解题步骤

------CTF解题专栏------


声明:文章由作者weoptions学习或练习过程中的步骤及思路,非正式答案,仅供学习和参考。

题目信息:

题目:Simple_SSTI_1

作者:valecalida

提示:无

场景:


解题思路:

You need pass in a parameter named flag。(你需要传一个名字为flag的参数),想让我们传参数,那我们就传呗。


解题步骤:

一、传送参数flag

复制代码
http://114.67.175.224:13504/?flag=?

直接有显示,试试sql注入?

复制代码
http://114.67.175.224:13504/?flag=1' and '1'='1--+

就挺尴尬的,题目SSTI是服务器端模板注入,我搁这儿试sql注入。

复制代码
http://114.67.175.224:13504/?flag={{2*3}}

哦?有ssti注入漏洞?tplmap登场


二、tplmap尝试

最后显示没注入点???不该啊,使出必杀技《奥义-秘术-答案之术》flag{0866f097bc8a992bc298142d5e19a0d7}


三、原理解析

复制代码
http://114.67.175.224:13504/?flag={{config.SECRET_KEY}}

(⊙﹏⊙)很难绷,怎么想到去config的secret_key的,直到我想看看源码的时候(后面加上的)

在最后有一个隐藏文字。

复制代码
You know, in the flask, We often set a secret_key variable.

你知道,在Flask中,我们经常设置一个叫做"secret_key"的变量。

这是一个线索,百度一下,在 Flask 中,双大括号 {{ }} 用于表示动态内容的占位符,该内容将由模板引擎渲染。这被称为模板语法。 当你在 Flask 模板中使用双大括号把变量或表达式括起来时,它告诉模板引擎去计算该表达式并将其值插入到渲染后的 HTML 文档中。 例如,你提供的代码 flag={{config.SECRET_KEY}} 将会在 HTML 文档中的该位置渲染 Flask 应用程序的秘密密钥。

可是为什么SECRET_KEY为什么要关联config呢?继续查资料。

在Flask项目的配置中都是通过app.config对象来进行配置的。比如要配置一个项目的SECRET_KEY,可以使用app.config'SECRET_KEY' = "xxx"来进行设置。

(⊙o⊙)?懂了,但没完全懂。评论区有大佬帮忙解释下吗?


总结:

难度:★★☆☆☆☆☆☆☆☆

难度真的不高,甚至很简单,签到题,/(ㄒoㄒ)/~~大佬,菜菜,帮帮。

文章是自己的解题步骤,侵删。有需要工具的小伙伴可以私信哈,无偿,直接qq发你。


相关推荐
kingx32 天前
Windows Server安全配置深度复盘:关键 Payload 与解题思路
windows·靶场·web·加固
kingx32 天前
网络安全事件应急响应:X集团 WebServer 入侵溯源与处置
中间件·web·应急响应·取证·恶意样本
小野猪都有白菜拱3 天前
Proxmox VE 上搭建 Vulhub 靶场:Ubuntu + Docker
web
treasure1404 天前
Django复习笔记(2026年10月)
后端·python·django·api·web·drf
hengdonghui5 天前
Writeup 4 NUAACTF 2020 Wireshark 流量分析题
wireshark·ctf·misc·流量分析
hengdonghui6 天前
Writeup 4 0xGame 2021 - robot
web·ctf·信息泄露·robots.txt
AlfredZhao7 天前
理解 iFrame 嵌套的跨域问题
web
hengdonghui9 天前
Writeup 4 Speak Softly Love
ctf·misc·osint(开源情报搜集)
其实防守也摸鱼11 天前
Cylab在线靶场——CTF中的通用技能
linux·数据库·学习·算法·靶场·ctf·学习网络安全
hengdonghui13 天前
Writeup 4 CTFHub injection
web·ctf·sql注入·整数型联合查询注入(有回显)