28度的冰注入技巧之(二)——盲注判断权限和操作系统版本
' ]' L4 F1 B. j2008-10-25 01:474 p9 i! a. I0 H# h4 K
首先第一个问题,如果错误提示关闭,怎么判断当前的权限是否为sysadmin呢?
* I5 d* ]! x1 \; a3 C. o5 H5 j i7 u0 C* v( q1 g
最简单的,可以用这样的方法:
$ ^ y+ Y, G! u% C
$ u: u/ m, Q; f/ A2 q# B, n1=(select IS_SRVROLEMEMBER(’sysadmin’))3 g9 _4 |4 @* m7 c( C. m
! q! m+ T7 w, U3 h4 n当然,有些情况下,这个方法并不奏效。4 r C5 R0 L, o
0 R6 B+ m2 d* H7 J. }( `既然是sa,我们就可以通过执行命令判断,不过,既然错误提示关闭,那么执行的结果就很不容易拿到。
. o. E, t2 O# y/ d/ \ @( a* X! s& q6 r$ X
有个3办法可以解决这个问题0 M# E8 b+ d9 }( b
9 T% Y* k. ?3 I5 W0 j* S
a.把执行结果写到404b.htm,具体请看我的上一篇文章" K4 H2 U/ w9 P( ]
/ ~* ]. @" z$ T
b.执行ping 127.1 -n 10,看看页面是否延迟10秒钟
/ o, l6 b: q$ F" K, ~$ @
3 x" V5 Z1 q: `8 U; Lc.如果1433端口可以连接,那干脆新建个sql登录5 D5 \ D# }: n: a
+ L8 a' b; m9 R1 F7 Ad.如果大牛你是公网Ip,openrowset,或者直接telnet,ftp到你自己的机子,说到这里,ftp还有别的用处,比如,把执行结果写到文件中,然后通过ftp传到你的机子上,这何尝不是获得执行结果的一个好办法。当然,你可能要用到ftp的-s参数
8 \9 S- c: r0 L" Y: y8 c& q: f) Q1 A7 m3 R2 s* i
还有一个问题,怎么判断系统是2000还是2003?当然指的是错误提示关闭的情况下
; W' y4 i- W- E
, V2 n9 d9 o* b0 h; K很简单
8 s0 o/ Q: h* O! O* Q- _$ ~ |" I( I8 y$ X/ o, K- e7 Q
执行systeminfo
+ N+ o; o# u; z0 x6 N1 y: b/ ~' X7 A. C0 `/ e3 x; X
在xp/2003下才有这个命令,这个命令执行大概需要5秒钟时间。如果页面延迟5秒,就可以进一步断定这是2003(当然不排除2008的可能性) |