28度的冰注入技巧之(二)——盲注判断权限和操作系统版本/ P2 y4 g; f( D) A! d5 R9 A5 L: Z
2008-10-25 01:47
$ Y# b' h$ r+ Z" g首先第一个问题,如果错误提示关闭,怎么判断当前的权限是否为sysadmin呢?
8 G0 ~. [4 S1 r( a/ _+ F
J+ B5 \/ j) m4 M" ~最简单的,可以用这样的方法:
( i: ~: p" h" ~/ M& V3 }" X; }7 p4 C- P( G
1=(select IS_SRVROLEMEMBER(’sysadmin’))8 D; C* h: C6 `% n
2 ~3 u. u4 f ~+ f9 y当然,有些情况下,这个方法并不奏效。
) l: | w4 K0 [9 _6 d
* P7 P' ?" M3 b% q) ]3 u既然是sa,我们就可以通过执行命令判断,不过,既然错误提示关闭,那么执行的结果就很不容易拿到。
/ z4 L* u4 [$ A9 U) o% ~6 z8 G: W2 _+ S- ?9 ~
有个3办法可以解决这个问题
0 [1 Y6 q6 u6 m4 A! A! } o( S8 i' }2 \
a.把执行结果写到404b.htm,具体请看我的上一篇文章$ }/ c4 b0 J% J0 _4 O
2 I' a _, l. o: g5 ~b.执行ping 127.1 -n 10,看看页面是否延迟10秒钟
* T; f j Y$ B7 Y
; c1 w. M- ?' R5 f: J* gc.如果1433端口可以连接,那干脆新建个sql登录' i6 f# |) T6 C
3 K' t" P: I8 I/ C) j6 ?
d.如果大牛你是公网Ip,openrowset,或者直接telnet,ftp到你自己的机子,说到这里,ftp还有别的用处,比如,把执行结果写到文件中,然后通过ftp传到你的机子上,这何尝不是获得执行结果的一个好办法。当然,你可能要用到ftp的-s参数: V4 w! [ d# }4 W
7 O* c+ m0 e# ]6 F
还有一个问题,怎么判断系统是2000还是2003?当然指的是错误提示关闭的情况下, G/ Q3 {( M' B5 \
9 j! ] ^) x5 A2 Y" O' _8 ^很简单
$ C3 Y2 h/ N" m$ u! v
& s5 a- \6 h$ d& F. V3 I" _' _执行systeminfo
# q) @1 D* `. o! Y- G
* \" j* p; W! |( b# F在xp/2003下才有这个命令,这个命令执行大概需要5秒钟时间。如果页面延迟5秒,就可以进一步断定这是2003(当然不排除2008的可能性) |