如果進系統後連線正常(Ping的到),卻無法用IE瀏覽器連上網路,就有可能是中了木馬病毒後,把負責連網的程式(設定)做了修改或刪除,導致無法連上網際網路,這個時候可以執行兩個動作。
1.執行「cmd」後輸入「 netsh winsock reset」 ,之後重新開機。
2.下載「WinsockxpFix.exe」執行程式後點選「Fix」(如圖)並重新開機。 下載 WinsockxpFix.exe
通常這樣可以解決大部分的問題嚕,祝順利解毒 ~
[AutoRun]命令: l Icon l Label l Open l ShellExecute l Shell l Shell/Verb
[DeviceInstall] 命令: l DriverPath
[AutoRun]命令 圖標命令Icon Icon命令制定可自運行的驅動器在微軟Windows用戶界面中的圖標。
格式:icon=圖標文件名[,索引]
參數說明:
圖標文件名 包含圖標信息的 .ico, .bmp, .exe, .dll文件名。如果該文件包含多於一個圖標,必須用一個從0開始的索引進行標記。
備註: 圖標和標籤一起在用戶界面中描繪可自運行驅動器。例如,在Windows瀏覽器中,驅動器的圖標變成設置的特定圖標,而不是標準的默認磁盤圖標。圖標文件必須與open命令指定的文件存在於同一目錄下。
下面這個例子指定的圖標是 Myproc.exe文件中的第二個圖標。 Icon = Myproc.exe, 1
標籤命令Label Label命令指定一個文本標籤作為磁盤名。 使用:label = 標籤文本
參數: 標籤文本:一個標籤文本字符串,可以包含空格。
備註: 下面的例子指定一個驅動器的名字為「我的磁盤」 Label = 我的磁盤
實驗結果: Icon和Label命令在Windows XP下起到預期的效果,無論是在光驅,移動磁盤和固定磁盤中都有效。但在Windows 2000下不起作用。
打開命令Open Open命令指定一個可執行文件的路徑和文件名,當用戶此驅動器與電腦連接時自動運行此程序。
使用:open = [可執行文件路徑/]可執行文件名[參數1[參數2]……]
參數說明: 可執行文件名 當CD插入時運行的可執行文件的全路徑名。如果只有一個文件名,那麼他必須位於磁盤的根目錄下。如果在子目錄下,必須制定路徑。也可以包含為運行的可執行文件傳遞的一個或多個參數。
備註: 如果想獲取更多的關於啟動程序的信息,請閱讀MSDN中的文章《Tips for Writing AutoRun Startup Applications.》
實驗結果: 此命令只有在光驅中使用時有時可以使用,在移動磁盤和固定磁盤中均不能達到預期目的。具體原因,不清楚。
ShellExecute命令
5.0版本 該命令指定指定一個可執行文件或者數據文件調用ShellExecuteEx進行執行。 使用:shellexecute = [文件路徑/]文件名[參數1[參數2]……]
參數說明: 文件路徑 指定可執行文件或者數據文件的所在目錄的路徑的字符串,如果沒有指定,文件必須在驅動器的根目錄下。 文件名 包含文件名的字符串。如果是可執行文件,則運行。如果是數據文件,則必須是fileclass的成員,ShellExecuteEx用給文件類的默認啟動命令啟動之。 參數 包含任何傳遞給ShellExecuteEx的附加的參數。 備註: 這個命令和open命令有些相似,但是它允許你使用文件關聯信息執行程序。
Shell命令 Shell命令指定驅動器右鍵菜單的默認命令。
使用:shell = verb
參數說明:
Verb 與相應的命令相聯繫的verb(動詞).動詞和與其相聯繫得命令必須在AutoRun.inf中用shell/verb命令定義。
備註: 當鼠標右鍵點擊驅動器圖標時,出現一個右鍵菜單。如果有Autorun.inf,默認的右鍵菜單則從其中獲得。當用戶雙擊驅動器圖標時,shell所設置的命令執行。 如果想指定默認的右鍵菜單命令,首先使用shll/verb命令定義動詞,命令行,和菜單名。然後用shell命令使之變成默認的右鍵菜單命令。否則,默認的菜單項是「自動播放」,啟動open或者shellexecute定義的命令。
Shel/verb 命令 Shell/verb命令添加往磁盤的右鍵菜單裡添加一個命令。
Shell/verb/command = 可執行文件名 Shell/verb = 菜單名
參數說明: Verb 命令的動詞名字。Shell/verb/command命令將動詞和一個可執行文件相關聯。Verb不能包含空格。默認顯示的菜單名就是verb的內容。 文件名 執行該命令的可執行文件路徑和文件名。 菜單名 此參數指定在右鍵菜單中顯示的文本信息,即菜單項的名字。如果省略這一項,則顯示Verb的內容。菜單名可以是大小寫字母混合的也可以包含空格。你可以在字母前加』&』創建快捷鍵。
備註: 當用戶用鼠標右鍵點擊驅動器圖標時,出現一個右鍵快捷菜單。在AutoRun.inf中添加shell/verb命令,可以往這個快捷菜單中添加命令。 每個命令有兩部分,他們必須在不同的行聲明。第一部分是shell/verb/command,這是必須的,這部分與一個字符串相聯繫,調用一個動作,當命令執行時,啟動相應得應用程序。第二部分是shell/verb命令,這是可選的,他的作用是設定快捷菜單中顯示的名字。
下面是一個例子,AutoRun.inf文件將readit動作和命令字符串「Notepad abc\readme.txt」。菜單名為「Read Me」,「M」被定義為該項的快捷鍵
Shell\readit\command = notepad abc\readme.txt Shell\readit= Read &Me\
系統"服務"是windows系統的一大核心部分,在NT/2000/2003/XP架構系統中,服務是指執行指定系統功能的程式、例行程序,以便支援其他程式,尤其是底層核心(接近硬體)程式。
而通過網路提供服務時,服務可以在Active Directory(AD)中發佈,從而促進了以服務為中心的管理和使用。
服務是一種應用程式類型,它在後端運行。服務應用程式通常可以在本地和通過網路的用戶端提供一些功能,例如:客戶端/伺服器架構下的應用程式、web伺服器、資料庫伺服器以及其它基於伺服器的應用程式。
" 服務"自身也是一種程式,由於使用的領域和作用不同,服務程式也有兩種形式:exe和dll,採用dll 形式的服務是因為 dll 能實現hook,這是一些服務必需的資料交換行為,而NT架構系統採用一個被稱為"svchost.exe"的程式來執行dll 的載入過程,所有服務dll都統一由這個程式根據特定分組載入記憶體,然而,如今越來越多病毒作者看上了這個系統自動運作的載入程序,因為它永遠也不能被 防毒軟體查殺。
病毒作者將木馬主體寫成一個符合微軟開發文件規範的服務性質稱為:dll 的模組文件,然 後通過一段安裝程式,將木馬dll放入系統目錄,並在服務管理器(SCM)裡註冊自身為通過"svchost.exe"載入的服務 dll 元件之一,為了提高隱蔽性,病毒作者甚至直接替換系統裡某些不太重要而預設開啟的服務載入代碼,如:distributed link tracking client,其預設的啟動語法是"svchost -k netsvcs",如果有個病毒替換了啟動語法為自己建立的 分組"netsvsc",即"svchost -k netsvsc",在這種旁門左道加社會工程學的攻勢下,即使是具備一般解毒經驗的使用者也難以在第一時間內察覺到問題出自服務的啟動項目,於是病毒得以 成功逃離各種防毒軟體的查殺。
目前被發現使用此方法的木馬已經出現,其中一個Process名為"ad1.exe"的廣告程式就是典型例 子,它通過替換"distributed link tracking client"服務的 svchost 啟動項目來躲過一般的手工查殺,同時它自身還是個病毒下載器,一旦系統感染了這個惡意程式,各種木馬都有可能光臨你的機器。
要清理dll木馬,可以借助於第三方管理工具[ process explorer ],利用它的"find handle or dll"功能,能迅速搜索到某個dll依附的Process資訊並終結,讓dll失去載體後就能成功刪除,而dll木馬的文件名為了避免和系統 dll 發生衝突,一般不會起得太專業,甚至有 safaf.dll 、est.dll 這樣的命名出現,或者在某些系統下根本不會出現的文件名,如 kernel.dll、rundll32.dll 等。除了使用[ process explorer ]搜尋並終止進程以外,還可以用 icesword 強行卸載某個Process裡的dll 模組來達到效果。
對 於服務性質的dll,我們仍然使用[ process explorer ]進行查殺,由於它的層次結構,用戶可以很直覺的看到Process的啟動連結,如果一台機器感染了殺不掉的頑固木馬,有經驗的使用者做的第一件事情就是 禁止掉不相關或者不重要的程式和服務在開機時運行,然後使用[ process explorer ]觀察各個進程的情況,通過svchost.exe 啟動的 dll木馬 雖然狡猾,但是它釋放出exe運行時,一切都暴露了:一個svchost.exe 服務進程執行了一個 ad1.exe,還有比這更明顯的嗎?
svchost 的分組資訊位於註冊表的"hkey_local_machine\software\microsoft\windows nt\currentversion\svchost"項目,這是svchost載入dll 時的分組依據,如果用戶發現了一個奇怪的分組資訊,那就要提高警覺了。
隱藏技術發展的顛峰:Rootkit 木馬
隨 著安全技術的發展和電腦用戶群的技術提高,一般的木馬後門越來越難生存,於是一部分有能力的後門作者把眼光投向了系統底層:ring 0。位於ring 0層的是系統核心模組和各種驅動程式模組,所以位於這一層的木馬也是以驅動的形式生存的,而不是一般的exe。後門作者把後門寫成符合wdm規範 (windows driver model)的驅動程式模組,把自身添加進註冊表的驅動程式載入入口,便實現了「無啟動項」運行。一般的Process查看器都只能列舉可執行文件exe 的資訊,所以通過驅動模組和執行文件結合的後門程式便得以生存下來,由於它運行在ring 0級別,擁有與系統核心同等級的許可權,因此它可以更輕易的把自己隱藏起來,無論是進程資訊還是文件體,甚至通訊的端口和流量也能被隱藏起來,在如此強大 的隱藏技術面前,無論是任務管理器還是系統配置實用程式,甚至系統自帶的註冊表工具都失去了效果,這種木馬,就是讓人問之色變的Rootkit。
要 瞭解 Rootkit 木馬的原理,就必須從系統原理說起,我們知道,作業系統是由內核(kernel)和外殼(shell)兩部分組成的,內核負責一切實際的工作,包括cpu 任務調度、記憶體分配管理、設備管理、文件操作等,外殼是基於內核提供的交互功能而存在的介面,它負責指令傳遞和解釋。由於內核和外殼負責的任務不同,它 們的處理環境也不同,因此處理器提供了多個不同的處理環境,把它們稱為運行級別(ring),ring讓程式指令能訪問的電腦資源依次逐級遞減,目的在於 保護電腦遭受意外損害——內核運行於ring 0級別,擁有最完全最底層的管理功能,而到了外殼部分,它只能擁有ring 3級別,這個級別能操作的功能極少,幾乎所有指令都需要傳遞給內核來決定能否執行,一旦發現有可能對系統造成破壞的指令傳遞(例如超越指定範圍的記憶體讀 寫),內核便返回一個「非法越權」標誌,發送這個指令的程式就有可能被終止運行,這就是大部分常見的「非法操作」的由來,這樣做的目的是為了保護電腦免遭 破壞,如果外殼和內核的運行級別一樣,用戶一個不經意的點擊都有可能破壞整個系統。
由於 ring 的存在,除了由系統內核載入的程式以外,由外殼調用執行的一般程式都只能運行在ring 3級別,也就是說,它們的操作指令全部依賴於內核授權的功能,一般的進程查看工具和殺毒軟體也不例外,由於這層機制的存在,我們能看到的進程其實是內核 「看到」並通過相關介面指令(還記得api嗎?)反饋到應用程式的,這樣就不可避免的存在一條數據通道,雖然在一般情況下它是難以被篡改的,但是不能避免 意外的發生,Rootkit正是「製造」這種意外的程式。簡單的說,Rootkit實質是一種「越權執行」的應用程式,它設法讓自己達到和內核一樣的運行 級別,甚至進入內核空間,這樣它就擁有了和內核一樣的訪問許可權,因而可以對內核指令進行修改,最常見的是修改內核枚舉進程的api,讓它們返回的數據始 終「遺漏」Rootkit自身進程的資訊,一般的進程工具自然就「看」不到Rootkit了。更高級的Rootkit還篡改更多api,這樣,用戶就看不 到進程(進程api被攔截),看不到文件(文件讀寫api被攔截),看不到被打開的端口(網路組件sock api被攔截),更攔截不到相關的網路數據包(網路組件ndis api被攔截)了,我們使用的系統是在內核功能支援下運作的,如果內核變得不可信任了,依賴它運行的程式還能信任嗎?
但即使是Rootkit這一類恐怖的寄生蟲,它們也並非所向無敵的,要知道,既然Rootkit是利用內核和ring 0配合的欺騙,那麼我們同樣也能使用可以「越權」的檢查程式,繞過api提供的數據,直接從內核領域裡讀取Process列表,因為所有Process在這裡都不可能把自己隱藏,除非它已經不想運行了。也就是說,內核始終擁有最真實的進程列表和主宰權,只要能讀取這個原始的進程列表,再和進程api枚舉的進程列表對比,便能發現Rootkit進程,由於這類工具也「越權」了,因而對Rootkit進行查殺也就不再是難事,而Rootkit進程一旦被清除,它隱藏自身的措施也就不復存在,內核就能把它「供」出來了,用戶會突然發現那個一直「找不到」的Rootkit程式文件已經老實的呆在文件管理器的視圖裡了。這類工具現在已經很多,例如icesword、patchfinder、gdb等。
道高一尺,魔高一丈,因為目前的主流 Rootkit 檢測工具已經能檢測出許多Rootkit木馬的存在,因此一部分Rootkit作者轉而研究 Rootkit 檢測工具的運行檢測演算法機制,從而製作出新一代更難被檢測到的木馬:futo Rootkit。
優秀檢測工具icesword在futo面前敗下陣來,因為futo編寫者研究的檢測工具原型就是一款與之類似的black & light,所以我們只能換用另一款Rootkit檢測工具darkspy,並開啟「強力模式」,方可正常查殺Rootkit。
但 是由於檢測機制的變化,darkspy要檢測到futo的存在,就必須保證自己的驅動比futo提前載入運行,這就涉及到優先級的問題,也是讓業界感覺不 太滿意的一種方式,因為這樣做的後果會導致系統運行效率下降,不到緊急關頭,都不要輕易採用這種方法,然而現在的瑞星卡卡助手所推廣的「破甲」技術,實現 原理是與之類似的,它也會對系統造成一定影響,因而,這個介於安全和效率之間的選擇,唯有留給用戶自己思考了。
註:一旦木馬利用了Rootkit 技術,就變得十分難以辨認清除。
轉自網路攻防戰
查找及移除的免費工具列表
1.檔案完整性檢查:MD5 , Tripwire
2.Process監控:ProcessExplorer , Process Quick Access,KillBox
3.Registry監控:Regmon
4.開機監控:Autoruns , Autostart Viewer
5.File監控:Filemon , FileDate Changer
6.Port監控:TCPView , TDIMon , Fport
7.Network監控:Ethereal , myNetMon , MRTG , NetTools
8.Rootkit偵測:Icesword , RootkitRevealer, F-Secure BlackLight
9.Windows Live CD:WinPE , BartPE
10.多合一檢測工具:Hijackthis , InstallRite
識別及移除惡意程式其原則與注意事項
1.如果防毒軟體有更新過新的病毒碼就先使用新的病毒碼再掃過一遍
2.關閉WinME,WinXP的系統還原功能
3.在「安全模式」可以刪除病毒及綁架程式,但無法刪除在Boot Mode(出現Logo時)就載入啟動的惡意程式
4.儘量不要馬上刪容易引起當機的系統程式(例如:winlogon.exe,svchost.exe,explorer.exe,lsass.exe, services.exe)萬一真的被注入DLL Injection請使用Live CD(WinPE)光碟開機後再去刪DLL檔案
5.所謂的清除成功是指「開機後沒再出現」其要Disable惡意程式的行為使其不能運作,而不是一定要刪除中毒的所有檔案。 (太花時間)
參考資料:
惡意程式論壇 http://www.malware-test.com/
愛克索夫實驗室 http://x-solve.com/blog
惡意程式最常修改的地方
http://malware-test.com/smf/index.php?topic=1117.0
工具:
1.http://www.microsoft.com/technet/sysinternals/default.mspx
2.http://www.sysinternals.com/SecurityUtilities.html
4.http://www.spywareinfo.com/~merijn/programs.php
轉自網路攻防戰
註:以下文章非本人撰寫為中國大陸網路轉載文章,但因找不到原著作人只能於這特此感謝,如能聯絡上會再加以標註原出處,如著作人覺得不妥請來信告知。
殼是什麼?脫殼又是什麼?這是很多經常感到迷惑和經常提出的問題,其實這個問題一點也不幼稚。當你想聽說脫殼這個名詞並試著去瞭解的時候,說明你已經在各個安全站點很有了一段日子了。下面,我們進入「殼」的世界吧。
一、金蟬脫殼的故事
我 先想講個故事吧。那就是金蟬脫殼。金蟬脫殼屬於三十六計中的混戰計。金蟬脫殼的本意是:寒蟬在蛻變時,本體脫離皮殼而走,只留下蟬蛻還掛在枝頭。此計用於 軍事,是指通過偽裝擺脫敵人,撤退或轉移,以實現我方的戰略目標的謀略。穩住對方,撤退或轉移,決不是驚慌失措,消極逃跑,而是保留形式,抽走內容,穩 住對方,使自己脫離險境達到己方戰略目標,己方常常可用巧妙分兵轉移的機會出擊另一部分敵人。三國時期,諸葛亮六出祁山,北伐中原,但一直未能成功,終於 在第六次北伐時,積勞成疾,在五丈原病死於軍中。 維遵照諸葛亮的吩咐,在諸葛亮死後,秘不發喪,對外嚴密封鎖消息。他帶著靈柩,秘密率部撤退。司馬懿派部隊跟蹤追擊蜀軍。姜維命工匠仿諸葛亮摸樣,雕了一 個木人,羽扇綸巾,穩坐車中。並派楊儀率領部分人馬大張旗鼓,向魏軍發動進攻。魏軍遠望蜀軍,軍容整齊,旗鼓大張,又見諸葛亮穩坐車中,指揮若定,不知蜀 軍又耍什麼花招,不敢輕舉妄動。司馬懿一向知道諸葛亮「詭計多端」,又懷疑此次退兵乃是誘敵之計,於是命令部隊後撤,觀察蜀軍動向。姜維趁司馬懿退兵的大 好時機,馬上指揮主力部隊,迅速安全轉移,撤回漢中。等司馬懿得知諸葛亮已死,再進兵追擊,為時已晚。相信這個故事,大家在大型連續劇《三國演義》裡已經 看過了。呵呵,只是沒有理解得這麼深入罷了!而在駭客入侵技術中,金蟬脫殼則是指:刪除系統運行日誌攻擊者攻破系統後,常刪除系統運行日誌,隱藏自己的痕 跡...呵呵。
二、殼,脫殼,加殼
在自然界中,我想大家對 殼這東西應該都不會陌生了,由上述故事,我們也可見一斑。自然界中植物用它來保護種子,動物用它來保護身體等等。同樣,在一些計算機軟件裡也有一段專門負 責保護軟件不被非法修改或反編譯的程式。它們一般都是先於程式運行,拿到控制權,然後完成它們保護軟件的任務。就像動植物的殼一般 都是在身體外面一樣理所當然(但後來也出現了所謂的「殼中帶籽」的殼)。由於這段程式和自然界的殼在功能上有很多相同的地方,基於命名的規則,大家就把這 樣的程式稱為「殼」了。就像計算機病毒和自然界的病毒一樣,其實都是命名上的方法罷了。 從功能上抽像,軟件的殼和自然界中的殼相差無幾。無非是保護、隱蔽殼內的東西。而從技術的角度出發,殼是一段執行於原始程式前的代碼。原始程式的代碼在加 殼的過程中可能被壓縮、加密……。當加殼後的檔執行時,殼-這段代碼先於原始程式運行,他把壓縮、加密後的代碼還原成原始程式代碼,然後再把執行權交還給 原始代碼。 軟件的殼分為加密殼、壓縮殼、偽裝殼、多層殼等類,目的都是為了隱藏程式真正的OEP(入口點,防止被破解)。關於「殼」以及相關軟件的發展歷史請參閱吳朝相先生的《一切從「殼」開始》。
(一)殼的概念
作 者編好軟件後,編譯成exe可執行文件。 1.有一些版權資訊需要保護起來,不想讓別人隨便改動,如作者的姓名,即為了保護軟件不被破解,通常都是採用加殼來進行保護。 2.需要把程式搞的小一點,從而方便使用。於是,需要用到一些軟件,它們能將exe可執行文件壓縮, 3.在駭客界給木馬等軟件加殼脫殼以躲避殺毒軟件。實現上述功能,這些軟件稱為加殼軟件。
(二)加殼軟件最常見的加殼軟件
ASPACK ,UPX,PEcompact 不常用的加殼軟件WWPACK32;PE-PACK ;PETITE NEOLITE
(三)偵測殼和軟件所用編寫語言的軟件
因為脫殼之前要查他的殼的類型。
1.偵測殼的軟件fileinfo.exe 簡稱fi.exe(偵測殼的能力極強)。
2.偵測殼和軟件所用編寫語言的軟件language.exe(兩個功能合為一體,很棒),推薦language2000中文版(專門檢測加殼類型)。
3.軟件常用編寫語言Delphi,VisualBasic(VB)---最難破,VisualC(VC)。
(四)脫殼軟件
軟 件加殼是作者寫完軟件後,為了保護自己的代碼或維護軟件產權等利益所常用到的手段。目前有很多加殼工具,當然有盾,自然就有矛,只要我們收集全常用脫殼工 具,那就不怕他加殼了。軟件脫殼有手動脫和自動脫殼之分,下麵我們先介紹自動脫殼,因為手動脫殼需要運用彙編語言,要跟蹤斷點等,不適合初學者,但我們 在後邊將稍作介紹。
加殼一般屬於軟件加密,現在越來越多的軟件經過壓縮處理,給漢化帶來許多不便,軟件漢化愛好者也不得不學習掌握這種技能。現在 脫殼一般分手動和自動兩種,手動就是用TRW2000、TR、SOFTICE等調試工具對付,對脫殼者有一定水準要求,涉及到很多彙編語言和軟件調試方面 的知識。而自動就是用專門的 脫殼工具來脫,最常用某種壓縮軟件都有他人寫的反壓縮工具對應,有些壓縮工具自身能解壓,如UPX;有些不提供這功能,如:ASPACK,就需要 UNASPACK對付,好處是簡單,缺點是版本更新了就沒用了。另外脫殼就是用專門的脫殼工具來對付,最流行的是PROCDUMP v1.62 ,可對付目前各種壓縮軟件的壓縮檔。在這裡介紹的是一些通用的方法和工具,希望對大家有幫助。我們知道檔的加密方式,就可以使用不同的工具、不同的方法進 行脫殼。下面是我們常常會碰到的加殼方式及簡單的脫殼措施,供大家參考: 脫殼的基本原則就是單步跟蹤,只能往前,不能往後。脫殼的一般流程是:查殼->尋找OEP->Dump->修復 找OEP的一般思路如下: 先看殼是加密殼還是壓縮殼,壓縮殼相對來說容易些,一般是沒有異常,找到對應的popad後就能到入口,跳到入口的方式一般為。 我們知道文件被一些壓縮加殼軟件加密,下一步我們就要分析加密軟件的名稱、版本。因為不同軟件甚至不同版本加的殼,脫殼處理的方法都不相同。
常用脫殼工具:
1、文件分析工具(偵測殼的類型):Fi,GetTyp,peid,pe-scan。
2、OEP入口查找工具:SoftICE,TRW,ollydbg,loader,peid 。
3、dump工具:IceDump,TRW,PEditor,ProcDump32,LordPE。
4、PE文件編輯工具PEditor,ProcDump32,LordPE。
5、重建Import Table工具:ImportREC,ReVirgin。
6、ASProtect脫殼專用工具:Caspr(ASPr V1.1-V1.2有效),Rad(只對ASPr V1.1有效),loader,peid 。
(1)Aspack: 用的最多,但只要用UNASPACK或PEDUMP32脫殼就行了。
(2)ASProtect+aspack:次之,國外的軟件多用它加殼,脫殼時需要用到SOFTICE+ICEDUMP,需要一定的專業知識,但最新版現在暫時沒有辦法。
(3)Upx: 可以用UPX本身來脫殼,但要注意版本是否一致,用-D 參數。
(4)Armadill: 可以用SOFTICE+ICEDUMP脫殼,比較煩。
(5)Dbpe: 國內比較好的加密軟件,新版本暫時不能脫,但可以破解。
(6)NeoLite: 可以用自己來脫殼。
(7)Pcguard: 可以用SOFTICE+ICEDUMP+FROGICE來脫殼。
(8)Pecompat: 用SOFTICE配合PEDUMP32來脫殼,但不要專業知識。
(9)Petite: 有一部分的老版本可以用PEDUMP32直接脫殼,新版本脫殼時需要用到SOFTICE+ICEDUMP,需要一定的專業知識。
(10)WWpack32: 和PECOMPACT一樣其實有一部分的老版本可以用PEDUMP32直接脫殼,不過有時候資源無法修改,也就無法漢化,所以最好還是用SOFTICE配合 PEDUMP32脫殼。
我 們通常都會使用Procdump32這個通用脫殼軟件,它是一個強大的脫殼軟件,他可以解開絕大部分的加密外殼,還有腳本功能可以使用腳本輕鬆解開特定外 殼的加密文件。另外很多時候我們要用到exe可執行文件編輯軟件ultraedit。我們可以下載它的漢化註冊版本,它的註冊機可從網上搜到。 ultraedit打開一個中文軟件,若加殼,許多漢字不能被認出 ultraedit打開一個中文軟件,若未加殼或已經脫殼,許多漢字能被認出 ultraedit可用來檢驗殼是否脫掉,以後它的用處還很多,請熟練掌握例如,可用它的替換功能替換作者的姓名為你的姓名注意字節必須相等,兩個漢字替 兩個,三個替三個,不足處在ultraedit編輯器左邊用00補。
常見的殼脫法:
(一) aspack殼 脫殼可用unaspack或caspr 1.unaspack ,使用方法類似lanuage,傻瓜式軟件,運行後選取待脫殼的軟件即可. 缺點:只能脫aspack早些時候版本的殼,不能脫高版本的殼 2.caspr第一種:待脫殼的軟件(如aa.exe)和caspr.exe位於同一目錄下,執行windows起始菜單的運行,鍵入 caspr aa.exe脫殼後的文件為aa.ex_,刪掉原來的aa.exe,將aa.ex_改名為aa.exe即可。使用方法類似fi 優點:可以脫aspack任何版本的殼,脫殼能力極強缺點:Dos介面。第二種:將aa.exe的圖標拖到caspr.exe的圖標上***若已偵測出是 aspack殼,用unaspack脫殼出錯,說明是aspack高版本的殼,用caspr脫即可。
(二)upx殼 脫殼可用upx待脫殼的軟件(如aa.exe)和upx.exe位於同一目錄下,執行windows起始菜單的運行,鍵入upx -d aa.exe。
(三)PEcompact殼 脫殼用unpecompact 使用方法類似lanuage傻瓜式軟件,運行後選取待脫殼的軟件即可。
(四)procdump 萬能脫殼但不精,一般不要用 使用方法:運行後,先指定殼的名稱,再選定欲脫殼軟件,確定即可脫殼後的檔大於原文件由於脫殼軟件很成熟,手動脫殼一般用不到。
三、壓縮與脫殼
現 在脫殼一般分手動和自動兩種,手動就是用TRW2000、TR、SOFTICE等調試工具對付,對脫殼者有一定水準要求。而自動就稍好些,用專門的脫殼 工具來脫,最常用某種壓縮軟件都有他人寫的反壓縮工具對應,有些壓縮工具自身能解壓,如UPX;有些不提供這功能,如:ASPACK,就需要 UNASPACK對付。很多檔使用了一些壓縮加殼軟件加密過,這就需要對檔進行解壓脫殼處理後,才能漢化。這種壓縮與我們平時接觸的壓縮工具如 winzip,winrar等壓縮不同,winzip和winrar等壓縮後的檔不能直接執行,而這種 EXE 壓縮軟件,EXE檔壓縮後,仍可以運行。這種壓縮工具把檔壓縮後,會在檔開頭一部分,加了一段解壓代碼。執行時該文件時,該代碼先執行解壓還原文件,不過 這些都是在內存中完成的,由於微機速度快,我們基本感覺不出有什麼不同。這樣的程式很多,如 The bat,Acdsee,Winxfile等等。
要脫殼就應先瞭解常用壓縮工具有哪些,這樣知己知彼,如今越來越多的軟件商喜歡用壓縮方式發行自己的產品,如The bat!用UPX壓縮,ACDSEE3.0用ASPACK壓縮等。
它有以下因素:
一是:微 機性能越來越好,執行過程中解壓使人感覺不出來,用戶能接受(給軟件加殼,類似WINZIP 的效果,只不過這個加殼壓縮之後的檔,可以獨立運行,解壓過程完全隱蔽,都在內存中完成。解壓原理,是加殼工具在檔頭裡加了一段指令,告訴CPU,怎 麼才能解壓自己。現在的CPU都很快,所以這個解壓過程你看不出什麼異常。因為軟件一下子就打開了,只有你機器配置非常差,才會感覺到不加殼和加殼後的軟 件運行速度的差別。)。
二是:壓縮後軟件體積縮小,便於網絡傳輸。
三是:增 加破解的難度。首先,加殼軟件不同於一般的winzip,winrar等壓縮軟件.它是壓縮exe可執行檔的,壓縮後的檔可以直接運行.而 winzip,winrar等壓縮軟件可壓縮任何檔,但壓縮後不能直接運行。很多站點不允許上傳可執行檔,而只能上傳壓縮的檔,一方面處於速度考慮,也是 為了安全性考慮。用加殼軟件壓縮的檔就是體積縮小,別的性質沒改變。還是EXE文件,仍可執行,只是運行過程和以前不一樣了。壓縮工具把檔壓縮後,在檔開 頭一部分,加了一段解壓代碼。執行時該文件時,該代碼先執行解壓還原文件,不過這些都是在內存中完成的,由於微機速度快,我們基本感覺不出 有什麼不同。
四﹑加殼與木馬
木 馬危害無窮,但是隨著人們對各種木馬知識的瞭解,殺毒和專殺工具的特殊照顧,使得很多木馬無藏身之地,但很多高手到處賣馬,號稱不會被查殺。它們究竟是如 何躲在我們的系統中的呢? 其實無非對木馬進行「加/脫殼」。對於駭客來說,加/脫殼技術被淋漓盡致地應用到了偽裝木馬客戶端上,目的是為了防止被殺毒軟件反跟蹤查殺和被跟蹤調試, 同時也防止演算法程式被別人靜態分析。最基本的隱藏:不可見窗體+隱藏文件。木馬程式
採用「進程隱藏」技術: 第一代進程隱藏技術:Windows 98的後門 。第二代進程隱藏技術:進程插入,以及其後的Hook技術之外就是跟殺毒軟件對著幹:反殺毒軟件外殼技術了。木馬再狡猾,可是一旦被殺毒軟件定義了特徵 碼,在運行前就被攔截了。要躲過殺毒軟件的追殺,很多木馬就被加了殼,相當於給木馬穿了件衣服,這樣殺毒軟件就認不出來了,但有部分殺毒軟件會嘗試對常用 殼進行脫殼,然後再查殺(小樣,別以為穿 上件馬夾我就不認識你了)。除了被動的隱藏外,最近還發現了能夠主動和殺毒軟件對著幹的殼,木馬在加了這種殼之後,一旦運行,則外殼先得到程式控制權,由 其通過各種手段對系統中安裝的殺毒軟件進行破壞,最後在確認安全(殺毒軟件的保護已被瓦解)後由殼釋放包裹在自己「體內」的木馬體並執行之。對付這種木馬 的方法是使用具有脫殼能力的殺毒軟件對系統進行保護。殼能夠將檔(比如EXE)包住,然後在檔被運行時,首先由殼獲得控制權,然後釋放並運行包裹著的 文件體。很多殼能對自己包住的檔體進行加密,這樣就可以防止殺毒軟件的查殺。比如原先殺毒軟件定義的該木馬的特徵是「12345」,如果發現某檔中含 有這個特徵,就認為該檔是木馬,而帶有加密功能的殼則會對檔體進行加密(如:原先的特徵是「12345」,加密後變成了「54321」,這樣殺毒軟件 當然不能靠檔特徵進行檢查了)。脫殼指的就是將檔外邊的殼去除,恢覆文件沒有加殼前的狀態。
雖然很多殺毒軟件的文件監控都會使程式首次運行時速度 很慢。這是因為:殺毒軟件對壓縮加殼的exe文件監控掃瞄時,都要先「脫殼」。一般壓縮加殼程式,可加密壓縮可執行檔的代碼、數據、輸入表、重定位表、資 源段。通常壓縮後的檔大小隻有原來的50%-70%,但不影響程式的正常使用和所有功能,目的是保護檔不被跟蹤分析,反彙編,脫殼等。所以有時候使用某軟 件給木馬脫殼會失敗,但可換個軟件試下。脫殼後重新加殼或者使用不同加殼的軟件給木馬加多層 殼,均有可能欺騙殺毒軟件,但在經過複雜的多重加殼後,檢測出的結果就不一定準確了,此時就需要「adv.scan」高級掃瞄, pe-scan會分析出被各種加殼工具加殼的可能性。
五﹑加殼與病毒
病 毒要想生存,除了增加自身的變形能力以外,還可與程式加殼壓縮聯繫起來。我們先來看看病毒變形的目的,因為現在的反病毒軟件,基於特徵碼檢測,增加變形能 力,使得特徵碼檢測方法更加困難。那麼,如果再和程式加殼技術結合起來,那麼將使的單單通過添加特徵碼方法解毒徹底失效,解毒時,必須同時更新掃瞄引 擎,而現在並沒有通用的解殼方法。因此加殼壓縮和變形結合起來,將使得反病毒廠商手忙腳亂,也使得反病毒軟件用戶痛苦不堪,頻繁的更新,除了特徵碼,還有 掃瞄引擎。給平常的病毒加個殼,比如用upx,現在通常反病毒軟件,對於常用的加密加殼壓縮程式,都有相應的解殼程式。效果並不好,所以如果病毒本是既是 一好的變形加密加殼壓縮程式,那麼,目的是強迫更新掃瞄引擎,當然也是可以被動態解壓檢測出來的,只是增加瞭解毒的很多工作量。實際上加殼技術不僅僅用於 軟件保護,也可用於好的病毒。好的病毒不一定要非常快的傳播速度,難於檢測,難於查殺更重要一些,就像現在殺毒界的虛擬機技術,也不過是個雛形,有很多的 功能並不能完全虛擬化,同時若加殼代碼本身可變形,同時有多種加殼演算法可供隨機選擇,那麼就很難找出其中的規律以及關係。總之,好的殺毒軟件至少應該具 有 的技術功能之一就是要具備壓縮還原技術:對Pklite、Diet、Exepack、Com2exe、Lzexe、Cpav等幾百種壓縮加殼軟件自動還 原,徹底解除隱藏較深的病毒,避免病毒死灰復燃。
參考引用連結:
轉自網路攻防戰
這本書是瞭解 Rootkits 必讀的聖經:
Rootkits: Subverting the Windows Kernel
Rootkit 的定義:
A rootkit is a tool that is designed to hide itself and other processes、 data and/or activity on a system。
引用於此: The definition of a rootkit
維基百科上的解釋:
A rootkit is a set of software tools intended to conceal running processes, files or system data from the operating system。Rootkits have their origin in benign applications, but in recent years have been used increasingly by malware to help intruders maintain access to systems while avoiding detection。
引用於此:Rootkit
什麼是 Rootkit:
Rootkit 由來已久,它源自於UNIX電腦系統,原本是一組指令,是一種可以獲得電腦系統root存取權限的軟體工具組(kit),因此稱為rootkit(也可以 稱為root kit);root是UNIX系統權限最高的帳號,也就是系統管理者帳號的名稱(因此為了安全起見,管理者應該要會關閉root帳號,另外建立權限相當的 帳號)。
通常只有攻擊者者才會想要獲得電腦系統的root存取權限,因此rootkit還有另一個重要的特性,就是必須想盡一切辦法隱 匿攻擊者的所有行為,不能被發現已經被植入或正在執行rootkit;因為只要被發現,管理者當然就會想盡辦法要移除rootkit,攻擊者就無法遂行目 的。
rootkit沒有病毒或蠕蟲的傳染(也就是自我複製並傳播)特性,而是攻擊者伺機將rootkit程式偷偷的裝進目標系統並暗中 啟動rootkit程式,因此攻擊者會採用任何可以達成這種攻擊目的的手法,例如利用開啟的通訊埠等系統弱點,或者暴力破解密碼、甚至利用木馬程式將 rootkit程式挾帶進入系統。
rootkit都被歸類在惡意軟體(malicious software,malware)的範疇,原因之一,是攻擊者會合併使用rootkit和其他惡意軟體,例如結合後門程式,就可以在目標系統留下後門,以便後續還能控制目標系統,或者竊取目標系統裡的資料。
rootkit 程式會用盡所有的技術或技巧來隱藏自己和所挾帶的惡意軟體,讓使用者不知道也找不到電腦裡的rootkit程式,而這往往也使得rootkit很難被移 除,因此如果電腦被植入rootkit,大多建議清除並重新安裝系統,因為敵暗我明,很難確定是不是已經將所有的rootkit程式檔案都清除乾淨,而且 系統檔案也可能已經遭到rootkit修改。
雖然源自於UNIX系統,但是包括Windows在內的電腦系統也已漸漸出現數種 rootkit,因此現在的rootkit也不必然得是指令,只要能獲得、執行系統高權限使用者帳號,而且不被發現的軟體工具組,或沿用相同概念而撰寫的 程式,都稱為rootkit。尤其近期的rootkit,都特別著重在隱身的技巧,而已經有越來越多的間諜軟體、病毒、蠕蟲、後門等惡意軟體,也開始加入 rootkit的隱身功能。
Rootkit 最有名的案例:
唱 片業者Sony BMG的音樂光碟防拷功能竟然採用了rootkit技術;Windows系統專家Mark Russinovich在無意中發現自己購買的Sony BMG音樂光碟卻隱藏著rootkit,同時也發現Sony BMG所使用的這項技術也可能遭到其他惡意軟體利用。Sony BMG的作法在美國引發了相當的爭議,也因此讓更多人知道或注意到rootkit所可能帶來的資安威脅。
資安業者F-Secure在近日提出警告,指出Sony採用類似rootkit技術,其MicroVault USB隨身碟驅動程式會在Windows內建立隱藏檔案,可能被駭客用來藏匿惡意程式。F-Secure安全研究人員Mika Tolvanen在部落格中 指出,當使用者買了Sony的MicroVault USB隨身碟後,該隨身碟提供指紋辨識功能,並含在驅動程式中,一旦使用者安裝了該驅動程式,就會在視窗中建立一個隱藏目錄及檔案,假設駭客知道該檔名, 就能透過Command Prompt進入該目錄,並建立一個新的隱藏檔,而且可以執行其中的檔案。
Rootkits 列表:
--------------------------------------------------------------------
Anti-Rootkits 工具整裡包:
針對 Linux 環境:
針對 Windows 環境:
偵測用免費工具:
Windows Sysinternals RootkitRevealer
System Virginity Verifier (SVV)
防毒軟體廠商的免費工具:
中國大陸的免費工具:
其他族繁不及備載的工具:
Rootkit Detection & Removal Software
--------------------------------------------------------------------
相關網站:
Windows rootkits of 2005, part one
Windows rootkits of 2005, part two
Windows rootkits of 2005, part three
The Benchmark of Anti-rootkit Software?
[線上掃毒]是作為與原有裝置在單機上的防毒軟體交叉比對之用,但並不是拿來取代單機上的防毒軟體。
線上掃毒的優點:
線上掃毒的缺點:
註1:使用線上掃毒時,如果原本的防毒軟體出現異常警告,應屬正常現象。如不放心那再換其它家線上掃毒使用。
註2:絕大多數線上掃毒會要求你安裝[ ActiveX 控制項 ]元件,安裝太多可能會造成[ IE 瀏覽器當機 ],所以請斟酌使用。
--------------------------------------------------------------------
可疑檔案上傳分析:
利用各家防毒軟毒軟體的掃瞄引擎,同時對單一一個檔案,作是否為病毒、木馬檔案的分析可協助檢測確認檔案本身是否異常。
VirusTotal 免費線上病毒和惡意軟體掃瞄
http://www.virustotal.com/zh-tw/
VirSCAN.org-線上防毒引擎掃瞄網站 v1.00 目前支援 36 款防毒引擎
Online malware scan
--------------------------------------------------------------------
趨勢科技 HouseCall™ 線上掃毒
http://www.trendmicro.com/hc_intro/default.asp
http://www.trendsecure.com/portal/zh-TW/tools/security_tools/housecall
http://housecall.trendmicro.com/us/index.html
賽門鐵克 諾頓
http://security.symantec.com/sscv6/default.asp?productid=symhome&langid=ch&venid=sym
McAfee 邁克菲
http://tw.mcafee.com/root/mfs/default.asp?cid=16943
http://us.mcafee.com/root/catalog.asp?catid=free
卡巴斯基
http://kaspersky.kl.edu.tw/webscan/index.html
http://www.kaspersky.com/virusscanner
CA eTrust PestScan
http://www3.ca.com/securityadvisor/virusinfo/scan.aspx
CA eTrust Scan
http://www3.ca.com/securityadvisor/pestscan/
F-Secure
http://support.f-secure.com/enu/home/ols.shtml
Panda 熊貓
http://www.pandasoftware.com.tw/html/activescan.htm
TrojanScan
http://www.windowsecurity.com/trojanscan/
EarthLink Spyware Scan
http://www.earthlink.net/software/nmfree/spyscan/
金山毒霸
http://shadu.kingsoft.com/index1.htm?sid=0&uid=2801&adid=410
江民在線
http://online.jiangmin.com/index.asp
瑞星 免費查毒
http://online.rising.com.cn/free/index.htm
微軟 Windows Live OneCare 安全掃瞄
http://onecare.live.com/site/zh-tw/default.htm
Free online Trojan Scanner
http://www.windowsecurity.com/trojanscan/
BitDefender
http://www.bitdefender.com/scan8/ie.html
http://www.bitdefender.com/scan-online/index.html
a-squared Web Malware Scanner
http://www.emsisoft.com/en/software/ax/?scan=1
Webroot Software Spy Sweeper Free Scan
http://www.webroot.com/En_US/land-spysweeper-freescan.html
SpywareInfo Online Spyware Detection
http://www.spywareinfo.com/xscan.php轉自網路攻防戰
免費服務網址:
服務說明:
HackAlert™ is a site monitoring service that identifies malicious code injection on web applications. It is a 100 percent non-intrusive solution that provides real-time application risk assessment and let's you know instantly about hijacking attempts.
該服務的網頁。
如果你沒有檢測用的帳號的話,首先你必須先註冊一個來使用。
註:E-mail 要確實填好,必須透過該mail 來作帳號啟用的確認,以及收到掃瞄報告。
使用檢測用的帳號登入後,請點選[ Add URL(s) ],來新增一個需要檢測的網址。
在這個地方輸入網址的URL,免費服務的帳號最多可以輸入二個檢測的網址URL。
註:該網址輸入時必須將[ http:// 或 https:// ]這個輸入在網址前面才接受。
確認後按[ Next ]。
輸入檢測的[ 日期、時間 ]。
註:如果你的網站很大很多網頁,請選個離峰時間比較不會影響網站的效能。
完成後就等時間到囉。
最後報告
轉自網路攻防戰
概述
最近這幾年,已經很少看見大規模的惡意程式感染或傳播,取而代之的是目標式攻擊(Target Attack)的惡意程式,而且大部分是以賺取金錢為目的。那惡意程式的數量減少了嗎?其實並沒有,反而增加了非常多,多到令防毒軟體公司疲於更新惡意程 式特徵碼,但也無法有效地或即時地保護他們的客戶免於中毒。
各位會發現今年新版本的防毒軟體多了一個主要的功能 — 行為偵測防護。大約四、五年前,就有人提出這個構想,但防毒軟體公司認為這個技術太容易造成誤判和干擾使用者行為,但為什麼四、五年後,防毒軟體公司會將此技術加入防毒軟體中呢?因為傳統偵測方式已經無法有效處理大量的惡意程式樣本和未知惡意程式樣本。
現今防毒軟體的困境現今防毒軟體有下面幾個主要的難題,使得防毒軟體都無法有效地偵測到這些惡意程式:
防毒軟體偵測率的迷思
大部分的人應該都認為防毒軟體的偵測率越高越好,所以,當選擇防毒軟體時,只看此項目,而忽視了其他項目(或其背後所隱藏的含意),其實,這是種迷思:
惡意程式感染生命週期
傳統惡意程式偵測方式,往往必須收集到樣本,才能建立特徵碼,然後,經由病毒碼更新後,才能保護客戶系統或網路之安全,但從收集樣本至病毒碼更新期間是一段空窗期,亦即,你的系統或網路無法有效防禦此惡意程式的攻擊,所以,如何縮短此空窗期,也是一個很重要的課題。
什麼是行為偵測技術
簡單地說,就是監控系統任何活動,包含檔案/註冊碼/系統服務之新增/刪除/修改、執行程序之新增/終止等等。當惡意程式/正常應用程式執行時,使得系統產生變化,防毒軟體行為偵測防護就會根據其預設規則做相對應之處理動作(下圖是一個例子)。
行為偵測技術可以實作在系統使用者模式或核心模式,其中以系統核心模式的防護功效較佳,相對地,如果所撰寫的程式碼品質不佳,很容易造成系統死當或出現死亡的藍色畫面(BSOD),通常必須經過一段很長時間的測試驗證,才能穩定其程式碼品質。
大部分的防毒軟體行為偵測技術皆實作在系統核心模式(這也就是為什麼防毒軟體公司不敢隨便提供此技術給他們客戶的原因,因為必須確保其品質),但大部分的反間諜軟體皆實作在系統使用者模式(已經有些反間諜軟體變更至系統核心模式),這也就是為什麼防毒軟體的防護能力比反間諜軟體較佳的原因之一。
惡意程式攔截點及服務產業分佈情形
根據趨勢科技的統計(期間:7/31/2006~6/30/2007,地區:台灣,電腦數目:35萬台,病毒記錄:123,050,171 筆),大部分惡意程式攔截點發生在用戶端及伺服器端,佔了96%,此數字讓人覺得驚訝,難道,他們都沒有安裝閘道端的防毒軟體嗎?
行為偵測技術適合哪類的防毒軟體
基本上,行為偵測技術較適合加入用戶端的防毒軟體,因為行為偵測技術是根據惡意程式/正常應用程式執行時,對系統產生的變化做相對應之處理動
轉自大砲開講