zoukankan      html  css  js  c++  java
  • 基于时间型SQL盲注

    1 基于时间型SQL盲注

    注入SQL 代码之后, 存在以下两种情况:

    • 如果注入的SQL代码不影响后台[ 数据库] 的正常功能执行, 那么Web 应用的页面显示正确( 原始页面) 。
    • 如果注入的SQL 代码影响后台数据库的正常功能( 产生了SQL 注入) , 但是此时Web 应用的页面依旧显示正常( 原因是Web 应用程序采取了“ 重定向" 或“ 屏蔽 ”措施)。

    产生一个疑问: 注入的SQL 代码到底被后台数据库执行了没有? 即web 应用程序是否存在SQL 注入?
    面对这种情况, 之前讲的基于布尔的SQL 盲注很难发挥作用了( 因为基于布尔的SQL 盲注的前提是web 程序返回的页面存在true 和false 两种不同的页面) 。这时, 一般采用基于web 应用响应时间上的差异来判断是否存在SQL 注入, 即基于时间型SQL 盲注。

    1.1 sleep()函数——延时函数

    在MySQL中, sleep() 函数语法如下:

    sleep(seconds) ,即sleep() 函数代码执行延迟若干秒。 Sleep() 函数执行是有条件的,必须保障sql语句执行结果存在数据记录才会停止指定的秒数,如果sql 语句查询结果为空,那么sleep() 函数不会停止。 S1eep 函数执行停留后,执行后返回值为0

     

     通过逻辑判断控制sleep()函数的执行

     

    1.2 逻辑判断函数if()

    在基于时间型SQL盲注中, 经常使用条件语句来判断操作是否正确:
    if condition then do_someing else do_something_elsell 即如果某条件发生, 那么执行语句一, 否则, 执行语句二
    在MySQL中, if () 函数语法如下:

    • IF(expr1 ,expr2 ,expr3) 如果expr1 为真, 则IF() 函数执行expr2 语句; 否则IF() 函数执行expr3 语句。

    输入:

    • select user from users where user_id=1 and1=if(ascii (substr(database(),11))>1,sleep(5),1);  //这里如果条件ascii (substr(database(),11))>1成立, 则执行sleep(5) , 否则执行1

    1.3 BENCHMARK()函数

    在MySQL中, BENCHMARK()函数语法如下:
    BENCHMARK(count,expr) 即BENCHMARK()函数重复执行表达式expr  count 次,实际表现就是查询延迟。可配合if 函数,实现延迟的注入判断。
    构造输入如下:

    • select user from users where user_id=1 union select if (ascii (substring(database(),1,1))>100,BENCHMARK(500000000,encode('MSG' ,'by 5 seconds' )),1);

     

    1.4 注入思路:

    基于时间盲注的一般思路是延迟注入,说白了就是利用sleep()或benchmark()等函数让mysql执行时间变长并结合判断条件语句if(expr1,expr2,expr3),然后通过页面的响应时间长短来判断语句返回的值是TRUE还是False,从而猜解一些未知的字段。

    注入流程(以获取数据库版本信息为例):

    1.  确定注入点及注入类型
    2.  使用if判断语句,猜测version()的长度并用sleep函数作为判断依据
    3.  重复步骤2直至获取真正长度
    4.  使用if判断语句,猜测version()的第一个字符的ascii码并使用sleep函数作为判断依据构造注入语句,
    5.  重复步骤4,直至获取全部长度的版本字符的ascii码

     

  • 相关阅读:
    SQL语句中exists/not exists的用法分析
    码元、符号、波特率、比特率等概念的了解
    LED学习及一个花样流水灯的实现
    数学建模总结
    单片机控制继电器
    透明传输
    DNN4.8+SQL 2005 EXPRESS安装及DNN 4.8版本的新特性与其他版本的差异
    为什么我被google 迷住了!还很激动!Google是什么?它为何有趣
    四角号码查询器 第3版 发布
    google base不只是ebay!令人激动的google base
  • 原文地址:https://www.cnblogs.com/52kj/p/12422793.html
Copyright © 2011-2022 走看看