天天看點

從Webshell到殭屍電腦

從Webshell到殭屍電腦

S.S.F simeon

   我一直都在強調一個東西,在網絡攻防中最重要的就是思維,本文的靈感來自于安天365團隊的一個篇稿件,在稿件中提到了一個AspxSpy的Asp.net類型後門軟體,在安全界中最近一直流行後門中的後門,即通過給出一個包含後門的Webshell程式,衆多小黑們在外面吭哧吭哧的幹活,而給出後門的老闆,卻在後面偷着數Webshell,這種後門中的後門一般來說有二種類型,一種就是直接挂馬,帶來直接的收益;另外一種就是将小黑攻克下的Webshell位址、使用者名和密碼全部給發回,換種說法就是,小黑控制的伺服器,也就是我的伺服器。本文也就是受這個啟發而展開研究的,通過研究發現,利用該方法還可以獲得不少的後門,有的還可以直接控制伺服器。

(一)初識AspxSpy

    AspxSpy出來已經有很長時間,該程式作者是2008-02-02釋出的,呵呵,很早就見過該程式,但一直沒有時間去用它。

1.AspxSpy簡介

(1)開發環境VS2005 + C#,相容FrameWork1.1/2.0,基本實作代碼分離;

(2)密碼為32位MD5加密(小寫) 預設為 admin;

(3)采用POST方式送出資料,增強了隐蔽性;

(4)添加了IIS探測功能,周遊IIS站點資訊;

(5)增強了對檔案屬性的修改;

(6)在SQLTools中增加了,SA權限執行系統指令功能,SQL_DIR 功能,可以直接備份log/database,到指定目錄檔案名為bin.asp   Shell 為<%execute request("B")%>;

(7)增加了 Serv-u 提權功能;

(8)可以對端口實作單線程掃描;

(9)可以對系統資料庫進行簡單的讀取。

2.下載下傳該源代碼

   從作者網站将該源代碼檔案aspxspy.rar下載下傳到本地後,首先使用防毒軟體avast!清除一下壓縮包,一切正常,看來該代碼還沒有廣泛流傳,至少防毒軟體還未将其列入黑名單。

(二)分析源代碼

1.檢視源代碼

源代碼檔案aspxspy.rar中就一個檔案aspxspy.aspx,非常簡介,直接使用UltraEdit打開該源代碼檔案,如圖1所示,代碼是用asp.net寫的,在第12行中是該後門程式的管理密碼的32位md5加密值“21232f297a57a5a743894a0e4a801fc3”。

圖1 檢視aspxspy.aspx程式源代碼

說明:

一般通過UltraEdit等文本編輯器來檢視Webshell等程式的源代碼。

2.解密aspxspy中的密碼

圖2 解密aspxspy中的管理者密碼

雖然作者在其釋出程式的頁面上說明了其管理者密碼,但為了更好的使用該程式,是以有必要的程式中的一些關鍵之處進行分析。知曉作者是采用哪種方式進行加密,便于打造屬于自己的Webshell。

3.動手打造自己的Webshell

在cmd5頁面直接輸入原始的密碼來擷取一個md5值,其原始的密碼一定要設定複雜一點,例如本例中的“7a49107b5ce9067e35ff8de161ebb12d”,将其複制到cmd5網站進行查詢,查詢無結果,如圖3所示,這樣即使Webshell被别人搜尋到,由于無密碼,是以也無可奈何!将“7a49107b5ce9067e35ff8de161ebb12d”替換password的md5值“21232f297a57a5a743894a0e4a801fc3”,這樣該Webshell基本算是屬于我們自己的了,後面還有一些需要修改的地方,可以根據自己的愛好進行那個修改,基本不影響該程式的使用。

圖3 使用cmd5網站反查設定密碼的安全性

    在aspxspy中還可以修改SessionName、cookiePass等值,以防止通過SessionName和cookiePass值來達到繞過驗證的目的。

4.擷取Webshell的特征辨別

繼續在源代碼中進行檢視,在1479行發現一個明顯的辨別,“Copyright(C)2008 Bin ->[url]WwW.RoOTkIt.NeT.Cn[/url]”,如圖4所示,該辨別會直接顯示在Webshell中。

圖4 擷取Webshell的特征辨別

尋找Webshell的特征辨別,他主要是程式作者在寫程式時用于說明版權所有等資訊,表明該程式是某某完成的等,這些資訊可以直接通過Google擷取。

(三)尋找Webshell

1.通過特征在Google查詢Webshell

先在Google中輸入“Copyright(C)2008 Bin ->[url]WwW.RoOTkIt.NeT.Cn[/url]”進行查詢,如圖5所示,出來兩個結果。需要注意的是輸入查詢的應該是:"Copyright(C)2008 Bin ->[url]WwW.RoOTkIt.NeT.Cn[/url]",使用了雙引号,是對指定的關鍵詞進行搜尋,否則出來将是包含這些關鍵字的合集的記錄。

圖5 通過Google搜尋Webshell的特征關鍵字

2.通過特征在百度中查詢Webshell

   在百度搜尋引擎中輸入"Copyright(C)2008 Bin ->[url]WwW.RoOTkIt.NeT.Cn[/url]"進行查詢,效果不太理想,如圖6所示,無關于該精确特征的搜尋結果。

圖6 通過百度搜尋Webshell的特征關鍵字

3.直接打開第一個Webshell

圖7擷取台灣某國小校的Webshell

既然有小黑入侵了該網站,除非入侵者對系統漏洞進行了修補,否則通過檢測一樣可以擷取該系統的Webshell。就本Webshell有三種方式進行突破,一種就是寫一個猜解機,通過反複輸入密碼值來進行判斷,第二種就是直接檢測網站,實施滲透;第三種就是嘗試通過僞造public string SessionName="ASPXSpy";public string cookiePass="ASPXSpyCookiePass";來突破。

4.檢視剩下的Webshell

    直接打開第二個搜尋記錄,如圖8所示,嘿嘿,是政府網站,Webshell還隐藏的蠻深的。

圖8 擷取政府網站的Webshell

5.通知網站管理者

圖9 友情提醒

6.繼續尋找Webshell

圖10 再次搜尋Webshell的特征值

(1)擷取不能執行的Webshell

圖11 擷取不支援aspx的webshell

(2)擷取某阿拉伯網站殘缺Webshell

圖12擷取某阿拉伯網站殘缺Webshell

(3)繼續擷取其它Webshell

<a href="http://www.icfi.ir/Files/Galleries/SecurityRole.aspx" target="_blank">[url]http://www.icfi.ir/Files/Galleries/SecurityRole.aspx[/url]</a>

如圖13所示,直接打開這兩個Webshell,通過輸入一些簡單的密碼進行測試,測試結果表明,入侵者修改了該預設的管理者密碼。

圖13 再次搜尋出兩個Webshell

(四)總結與體會

    本文算是GoogleHacking的利用方式之一,利用該方法如果運氣好的話,可以直接得到Webshell。通過本方法即使沒有獲得真正的Webshell,但從側面可以知道得到Webshell的網站應該存在安全問題,那麼下一步就是自己去挖掘網站漏洞,提升自己的技術水準。

<dl></dl>

<dt></dt>

<dd></dd>

 本文轉自 simeon2005 51CTO部落格,原文連結:http://blog.51cto.com/simeon/124272

繼續閱讀