当前位置: 首页 > news >正文

SQL注入流程

SQL注入流程
1.寻找注入点
得到目标网站的一般信息和技术分析信息之后,就要寻找注入点和测试注入点,这些点位都是与数据库有交互的地方
常用注入点在哪里?
我们一般在三个地方,寻找注入点

  1. 表单中的输入参数
  2. URL中的参数
  3. Cookie或header头中其它参数
    用户信息、排名公布、文章展示、评论、搜索框、登陆框、cookie(session持久化需要存储在数据库中)

2.测试注入点&&判断闭合符号
常用的测试符号:

  • 单引号 '
  • 双引号 "
  • 无符号(直接拼接)
  • 圆括号 ()

这些符号通常是服务器后台代码中用来包裹用户输入变量的字符,当插入正确的闭合字符时,会破坏原有的sql语句;
根据报错信息判断闭合符号
输入常用闭合符号使页面抛出sql语法错误的报错信息,根据报错信息可以发现闭合符号

3.注入sql语句
找到注入点以后,我们就可以执行相应的sql语句,来获取数据库中的信息

  • 首先使用order by 语句判断列数,其一般使用二分法查找列数
    要注意的是联合查询前后两条 select 语句查询数据的列数是相等的,故需要使用 order by 语句来判断注入点sql语句查询的列数是多少order by 排序超过查询结果列数的时候就会抛出错误,故可以使用它来判断前一条 select 语句查询结果的列数。
  • 然后进行暴库、爆表、爆字段、爆数据
    暴库是查找所有数据库名的意思,mysql的注入可以从 information_schema 数据库中查询所有表的结构(库名、表名、字段名)信息。
http://www.hskmm.com/?act=detail&tid=19691

相关文章:

  • 完整的GLFW应用程序示例
  • 物理笔记
  • 基于Python+Vue开发的商城管理系统源码+运行步骤
  • HTML5-和-CSS3-迁移即时入门-全-
  • HTML5-多人游戏开发-全-
  • HTML5-地理位置即时操作指南-全-
  • 搭建环境
  • 20250928
  • Easysearch 国产替代 Elasticsearch:8 大核心挑战解读
  • Typescript概述和思维导图
  • 9-28
  • Qt结合ffmpeg代码实现udp推流/组播推流/rtp推流/监控GB28181推流/onvif推流
  • linux防火墙firewalld
  • 很多大公司为什么禁止在SpringBoot项目中使用Tomcat?
  • Java作业动手又动脑
  • PHP 开发者必须掌握的基本 Linux 命令
  • MetaGPT实战指南:构建模拟公司运营的多智能体系统 - 教程
  • Timeplus Enterprise 3.0 (Linux, macOS) - 流处理平台
  • 《HelloGitHub》第 114 期
  • Splunk Enterprise 10.0.1 (macOS, Linux, Windows) - 搜索、分析和可视化,数据全面洞察平台
  • 读后感
  • 读后感3
  • 读后感2
  • [Luogu 13345] EGOI 2025:IMO
  • 详细介绍:flutter 编译报错java.util.zip.ZipException: zip END header not found
  • 又一通信芯片厂商完成数亿元融资!
  • 做题总结
  • VS2022激活秘钥
  • NOIP2025模拟赛24
  • grammar(?