28度的冰注入技巧之(二)——盲注判断权限和操作系统版本" _/ b: E3 u- g* H
2008-10-25 01:477 \; l @3 v' I+ ]
首先第一个问题,如果错误提示关闭,怎么判断当前的权限是否为sysadmin呢?4 g5 |2 z! I! x4 k" a
/ M. l2 B i2 W7 o) |4 z1 ~5 ^7 r8 p% u
最简单的,可以用这样的方法:' S. x3 N- l3 |! b3 V# J
: Y) w9 j2 g- Q5 k' k: O% @
1=(select IS_SRVROLEMEMBER(’sysadmin’)) H9 Z+ d f# u+ _
, E0 `8 D( f3 C; J% l
当然,有些情况下,这个方法并不奏效。
, l" y, R7 Z1 S2 I0 ^ d( ?( X6 c( ]3 m1 ]' M
既然是sa,我们就可以通过执行命令判断,不过,既然错误提示关闭,那么执行的结果就很不容易拿到。
, y) R8 R. V3 K( C, j& N, a' @
( a* X2 ^3 x. K8 u# [) L/ o% S% F有个3办法可以解决这个问题
; a. |: _0 E7 B; R% C
: G/ E$ z. {. {1 U; d3 `1 {a.把执行结果写到404b.htm,具体请看我的上一篇文章9 d7 v5 E# D" d" I! q2 F# T
/ u% d. B1 C! Bb.执行ping 127.1 -n 10,看看页面是否延迟10秒钟, Z/ J. c! t, u& k7 e% S* @, ?: i
3 @# L- ?1 {2 F+ i# Mc.如果1433端口可以连接,那干脆新建个sql登录
+ u5 l$ x* }7 D; J* A, \
7 g! L! H, O4 J2 O% h Z0 }* Dd.如果大牛你是公网Ip,openrowset,或者直接telnet,ftp到你自己的机子,说到这里,ftp还有别的用处,比如,把执行结果写到文件中,然后通过ftp传到你的机子上,这何尝不是获得执行结果的一个好办法。当然,你可能要用到ftp的-s参数& k# y% c- z. V. c. k
0 c0 ~" [* ~1 A9 A9 T C
还有一个问题,怎么判断系统是2000还是2003?当然指的是错误提示关闭的情况下
4 i$ ]4 r( I; ^( u4 l. M C
0 n2 P( z# r6 Z% x# P( X很简单
/ P) d+ M. W" j E1 @2 x
! ` z7 ?- J. [& f) Y9 n8 G5 [执行systeminfo
! P3 W# k% ~6 C. \( R$ K. i5 l! h) j( c6 V' L$ _$ C2 W4 b
在xp/2003下才有这个命令,这个命令执行大概需要5秒钟时间。如果页面延迟5秒,就可以进一步断定这是2003(当然不排除2008的可能性) |