首页 > 其他分享 >4.联合查询注入

4.联合查询注入

时间:2023-11-11 10:45:56浏览次数:34  
标签:语句 查询 联合 表名 where select 注入

联合注入原理 0 联合查询,两边的字段数要相同,不然会报错 就像这样 select from users where user_id=1 union select * from guestbook 0   0 上述联合查询语句可以拆分为两个查询语句 select from users where user_id=1 和 select from guestbook 接下来要确定两个查询语句的字段数   select from users where user_id=1 0 0 0 字段数(注入点)为8 select * from guestbook 的完全语句为 select * from guestbook where comment_id = 1 0 字段数为3 0   0 利用联合查询创造多个查询点,然后将第二个查询语句的数字替换成为各种函数,一次性进行多个查询   限定语句导致的错误 0 0 当联合查询两个以上语句时,如果将comment_id设定为1的话,那除了第一个语句外的后面的所有语句都将不会回显出来   联合注入攻击 白盒测试流程 0   0   0 攻击开始 0 0 判断为字符型还是数字型 0   0 这里只是将Id更改了,没有其他变化,不像数字型注入漏洞 改为字符型试探 0   0 当输入值改为1' and '1'='2时,页面直接崩溃,说明这里有一个字符型注入漏洞 判断字段数(注入点) 0 0 0 注入点确定,这里只有两个注入点 0   0   0   0 数据库连接账户为localhost 0 连接的数据库名称为dvwa 0   0 版本为5.7.33   查询对方数据库中符号的表示方法 0 0 就会生成对应的字符 0   0 这样可以将数据库吐出来的数据更加美观一些 0   0 黑盒测试是不知道数据库内部结构和表名的 但数据库的表的数据都会保存在information_schema这个表中,我们只要将这个一定会存在的表,给他破解掉,就可以获得这个数据库中的全部表名了 黑盒测试流程 获取表名   select TABLE_NAME from information_schema.TABLES where TABLE_SCHEMA=database() limit 1 将注入点数字替换为这个语句 0 得到第一个表名 将注入点写入这个语句 select TABLE_NAME from information_schema.TABLES where TABLE_SCHEMA=database() limit 1,1 得到第二个表名 0   0 0 0   0   0   0 根据表名查询字段 0 0   0 通过字段查询内容 0   0  

标签:语句,查询,联合,表名,where,select,注入
From: https://www.cnblogs.com/baimuyangren/p/17825609.html

相关文章

  • 6.SQL报错注入
    原理  例如这里我们输入1,他是正确的如果输入'  这是因为网站健壮性太弱,没有对闭合攻击进行过滤导致的这样就是有报错注入点报错注入攻击 利用数据库返回的报错信息直接得到敏感信息,这里的dvwa就是数据库名    黑盒模式下的报错注入......
  • 7.时间注入
         插入时间语句?name=1'andif(1<2,sleep(5),0)--+ 这样的结果是不行的,因为第一个判断就是不成立的,那and语句的第二个会直接不会执行直接报错,所以这个还需要一个正确的用户名才行      数据库查询出来了这个数据库中的所有表出......
  • 9.二次注入
    原理图解实例解析原理user_id='1''查询报错 user_id='1\''正确查询 二次注入代码审计    黑盒测试下的二次注入 实战1:修改目标账户密码前置要求,现在我们有一个目标账号hudongyang但是我们不知道他的密码,怎么办呢,可以利用二次注入这是hudongyan......
  • 8.堆叠注入
    原理这种注入手法可以对数据库进行增删改查而不是像之前一样只能查询数据 启动靶场sudodockerrun-dt--namesqli-p7766:80acgpiano/sqli-labs 注入利用开始试探  两次试探返回不一样,可能存在注入试探结束提取库中的所有的表?id=-999'unionsele......
  • 11.cookie注入
    原理 在这里更改cookies的值 黑盒测试下的cookies注入   实战创建额外的cookies值,并将其填充为'发送报文发现需要跳转,跟随跳转发现报错三次不同的注入发现报错结果不同可以证明这里拥有cookies注入点利用联合查询得到敏感信息......
  • 10.宽字节注入
    原理利用%df使注入语句逃逸  代码审计黑盒测试下的宽字节注入试探字符型试探?id=1%df%27%23试探成功注入获取敏感信息?id=1%df%27unionselect1,2,3%23  ?id=%df%27unionselect1,user(),database()%23这里的关键要让第一个语句错误:?id=%df%27这......
  • 1.SQL注入神器
        两种常用手法1.利用bp中的slmap下载co2     要确认安装了python然后指定sqlmap.py指定当前操作系统指定python路径   这时有y的选择y爆破成功 ......
  • 2.手工SQL注入概念
           因为这个1是用户可以控制的,当用户写入'时,就会像这样而当这样查询就会同时得到两个值还有一种方法与运算方法这样可以测试出,有没有这个注入点 判断是否存在注入点 停顿5秒再返回--为SQL中的注释符三种SQL语句的注释符注入流程......
  • 3.3.手工SQL注入
    首先输入正确账号,得到正确结果 开始试探试探变量可影响性确认用户控制的变量是否可以影响数据库 在非用户名不同的情况下,因为并查询结果导致报错,确认变量可以影响对方数据库试探注入点个数一个试探成功两个注入点试探成功第三个注入点试探失败确认此处有......
  • Python MySQL 数据库查询:选择数据、使用筛选条件、防止 SQL 注入
    从表格中选择数据要从MySQL中的表格中选择数据,请使用"SELECT"语句:示例选择"customers"表格中的所有记录,并显示结果:importmysql.connectormydb=mysql.connector.connect(host="localhost",user="yourusername",password="yourpassword",datab......