news 2026/4/29 17:50:59

SQL注入 查询方式(AI)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
SQL注入 查询方式(AI)

前置知识回顾

  • 前期学习内容:有回显联合查询注入
    • 核心语句:union select 联合查询
    • **利用条件:**页面存在数据回显点,数据库查询结果直接展示在前端
    • **局限性:**现实业务中大量功能不属于查询类操作,不存在数据回显,无法使用联合查询注入

SQL 四大基础语法完整详解

1. SELECT 查询语句

标准语法:
-- 查询指定字段 SELECT 字段1,字段2 FROM 表名 WHERE 条件; -- 查询表内所有数据 SELECT * FROM 表名;
业务场景举例:
  • 网站登录
  • 关键词搜索
  • 商品展示
  • 新闻列表
  • 个人信息展示等数据查询类功能
执行逻辑:
后端接收用户参数 → 拼接 SQL 查询语句 → 检索数据库数据 → 数据返回前端页面展示
注入特征:
  • 具备数据回显
  • 可用 order by 判断字段数,union select 查询库、表、字段、数据
  • 注入门槛低,是基础入门注入方式

2. INSERT 插入语句

标准语法:
-- 指定字段插入数据 INSERT INTO 表名(字段1,字段2,字段3) VALUES(值1,值2,值3); -- 全字段直接插入 INSERT INTO 表名 VALUES(值1,值2,值3);
示例语句:
INSERT INTO t1(id,name,password) VALUES(1,'张三','123456');
业务场景举例:
  • 用户注册
  • 留言提交
  • 评论发布
  • 后台新增数据
  • 表单提交等
执行逻辑:
前端提交表单数据 → 后端拼接插入语句写入数据库 → 仅返回操作状态提示,无数据库原始数据回显
注入难点:
  1. 文本参数多为字符型,依赖单/双引号闭合
  2. 语句被 values() 括号包裹,增加闭合难度
  3. 无回显,无法使用联合查询

3. UPDATE 更新语句

标准语法:
UPDATE 表名 SET 字段1=新值,字段2=新值 WHERE 限制条件;
示例语句:
UPDATE t1 SET name='王五' WHERE name='李四';
业务场景举例:
  • 修改账号密码
  • 编辑个人资料
  • 后台内容修改
  • 网站数据同步更新等
执行逻辑:
传入修改参数与限定条件 → 执行更新语句修改数据库内容 → 仅提示操作成功或失败,无原始数据输出
注入风险:
  • 危害极高,可批量恶意修改全站数据、账号密码、核心配置信息

4. DELETE 删除语句

标准语法:
DELETE FROM 表名 WHERE 限制条件;
示例语句:
DELETE FROM t1 WHERE id=1;
业务场景举例:
  • 删除购物车商品
  • 删除评论、日志、订单
  • 后台数据清理等
执行逻辑:
接收删除条件参数 → 执行删除操作 → 静默执行,页面无任何数据返回与内容展示
注入特征:
  • 多为数字型参数,无需引号闭合
  • 完全无回显、无报错提示,是盲注高频场景

无回显注入产生核心原因

  1. SQL 语句属性差异
  • select 为数据读取操作,必须返回结果
  • insert/update/delete 属于写入、修改、删除操作,只执行动作,不返回查询数据
  1. 后端防护
  • 代码主动屏蔽数据库报错信息,关闭错误打印,前端无法看到数据库报错内容
  1. 业务逻辑限制
  • 增删改类功能仅反馈操作状态,不会将数据库原始数据渲染至前端页面

Pikachu 靶场完整学习框架


1. Insert 注入(注册功能)

底层 SQL 源码结构:
insert into member(username,pw,sex,phonenum,email,address) values('$_POST[username]','$_POST[pw]','$_POST[sex]','$_POST[phonenum]','$_POST[email]','$_POST[address]');
  • 可控注入点:username、pw、sex、手机号、邮箱、地址等所有输入框
  • 闭合方式:参数全部被单引号包裹,属于字符型注入
实操流程:
  1. 正常提交注册数据,抓包观察 POST 传参格式
  2. 输入单引号 ' 测试是否触发语法报错
  3. 使用 order by 探测字段数量
  4. 利用单引号闭合 + 注释符截断多余语句
  5. 结合报错注入、堆叠注入完成数据读取

2. Update 注入(资料修改功能)

底层 SQL 源码结构:
update member set username='$_POST[username]',pw='$_POST[pw]',sex='$_POST[sex]' where id=$id;
  • 注入特征:
  1. 自定义资料字段为字符型,单引号闭合
  2. 语句末尾存在 where 条件限制
  3. 操作后无数据回显,仅状态提示
实操思路:
  1. 单引号测试闭合漏洞
  2. 构造报错语句读取库名、表名、字段
  3. 闭合 where 条件,实现批量数据修改测试

3. Delete 注入(数据删除功能)

底层 SQL 源码结构:
delete from message where id=$_GET[id];
  • 注入特征:
    • GET 方式传参,id 为数字型参数,无引号闭合
    • 执行后无页面反馈,纯静默执行
实操思路:
  1. 拼接逻辑判断语句:and 1=1、and 1=2 观察页面差异
  2. 适用于布尔盲注、时间延时盲注实操练习
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/29 17:49:24

如何在Windows电脑上安装安卓APK文件:APK-Installer完整使用指南

如何在Windows电脑上安装安卓APK文件:APK-Installer完整使用指南 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 想在Windows电脑上直接运行安卓应用&#…

作者头像 李华
网站建设 2026/4/29 17:47:54

DbGate:一站式数据库管理工具的实战应用与深度解析

DbGate:一站式数据库管理工具的实战应用与深度解析 【免费下载链接】dbgate Database manager for MySQL, PostgreSQL, SQL Server, MongoDB, SQLite and others. Runs under Windows, Linux, Mac or as web application 项目地址: https://gitcode.com/gh_mirror…

作者头像 李华
网站建设 2026/4/29 17:47:18

构建3D高斯喷洒的终极工具箱:GauStudio模块化框架深度解析

构建3D高斯喷洒的终极工具箱:GauStudio模块化框架深度解析 【免费下载链接】gaustudio A Modular Framework for 3D Gaussian Splatting and Beyond 项目地址: https://gitcode.com/gh_mirrors/ga/gaustudio 3D高斯喷洒(3D Gaussian Splatting&am…

作者头像 李华