流量分析_SnakeBackdoor-2

SnakeBackdoor-2

这道题涉及Flask 框架 最常见的安全问题:SSTI(服务端模板注入) 或 信息泄露。

在 Flask 应用中,SECRET_KEY 是用于签名 Session 的核心密钥。如果攻击者利用漏洞(通常是 SSTI)读取了 Flask 的全局配置对象 config,就能拿到这个密钥。

bash 复制代码
解题思路如下:

1、理解攻击原理:

(1)攻击者通常会利用模板注入漏洞,发送类似{{config}}、{{config.items()}}或{{self.__dict__}} 这样的Payload。服务器如果存在漏洞,会把当前的配置信息(包含SECRET_KEY)直接打印在HTTP响应包中。

(2)或者攻击者可能通过LFI(本地文件包含)读取了app.py或config.py源码。

2、搜索策略:

(1)直接在流量包中搜索特征字符串"SECRET_KEY"。这是最快的方法,因为无论是攻击者尝试读取它,还是服务器返回它,这个字符串出现的概率极高。

(2)搜索SSTI的特征字符,如 {{(在 URL 中可能是%7B%7B)。

数据包还是题目一中的attack.pcap流量包

打开pcap流量包,使用**http contains "SECRET_KEY"**命令,过滤出http数据包,并且包含我们想要的SECRET_KEY字符

过滤出一个数据包,右键追踪流=>TCP流

在POST请求体中,攻击者提交了参数:preview_content={{ config }}。这是一个典型的 Flask/Jinja2 模板注入Payload,意图是让服务器渲染并打印出全局config对象。

服务器执行了该指令,并在响应体的<div>标签中回显了配置字典。

其中& #39; 是HTML实体编码的单引号 ',提取可以看到 'SECRET_KEY': 'c6242af0-6891-4510-8432-e1cdf051f160'。

最后得到flag{c6242af0-6891-4510-8432-e1cdf051f160}

相关推荐
liann1193 小时前
3.1_网络——基础
网络·安全·web安全·http·网络安全
独行soc3 小时前
2026年渗透测试面试题总结-17(题目+回答)
android·网络·安全·web安全·渗透测试·安全狮
独行soc3 小时前
2026年渗透测试面试题总结-18(题目+回答)
android·网络·安全·web安全·渗透测试·安全狮
旺仔Sec4 小时前
一文带你看懂免费开源 WAF 天花板!雷池 (SafeLine) 部署与实战全解析
web安全·网络安全·开源·waf
迎仔1 天前
04-网络安全基础:数字世界的防盗门与守卫
网络·安全·web安全
老百姓懂点AI1 天前
[网络安全] 自动化渗透测试:智能体来了(西南总部)AI agent指挥官的攻击链构建与AI调度官的靶场编排
人工智能·web安全·自动化
数字护盾(和中)1 天前
数字 “黑天鹅” 频发:从亚冬会网攻到朝日啤酒断供的安全警示
网络·安全·web安全
浩浩测试一下1 天前
内网---> ForceChangePassword 权限滥用
java·服务器·网络·安全·web安全·网络安全·系统安全
爱思考的发菜_汽车网络信息安全1 天前
汽车网络安全:RSA算法详细解析
安全·web安全·汽车
汉堡包0012 天前
【网安基础】--内网代理转发基本流程(正向与反向代理)
安全·web安全·php