MoonSols DumpIt goes mainstream !

After talking with few people who expressed their limitations with current Windows memory dumpers, I decided to release MoonSols DumpIt publicly.

MoonSols DumpIt is a fusion of win32dd and win64dd in one executable, no options is asked to the end-user. Only a double click on the executable is enough to generate a copy of the physical memory in the current directory. DumpIt is the perfect utility to be deploy on a USB key for quick incident response operations. Fast, small and portable.

Download MoonSols DumpIt


轉自 http://www.moonsols.com/2011/07/18/moonsols-dumpit-goes-mainstream/

Free Opener幫你開啟75種常見檔案格式!

你有沒有過遇過打不開檔案的窘境?在緊要關頭臨時要開個檔案來看,身邊卻沒有能打開這種格式的電腦?沒關係,今天阿正老師介紹這套免費又強大的開檔 工具—Free Opener,容量只有20MB,但卻可以幫你打開75種以上常見的檔案格式,像是影音檔(如MOV,MKV,MP4,FLV)、照片(如 JPG,PNG,TIFF)、文件(如PDF,DOC/DOCX,XLS/XLSX,PPT/PPTX,PAGES)、壓縮檔(如 ZIP,7z,RAR)、程式碼(如VB,C,ASP,PHP,JAVA)、PhotoShop(PSD)……等,一次解決打不開檔案的困境,快來試試看 吧!

如果出門在外臨時要開個檔案,手邊卻沒有可以開啟這種格式的電腦,相信很多人一定會不知所措,但是你只要記住「Free Opener」這個關鍵字,就可以在可上網的電腦輕鬆下載這套免費又不大的軟體,幫你解決開不了檔案的窘境。
FreeOpener支援了超過75種常見檔案格式,舉凡文件檔、影音檔、圖形檔、程式碼…都難不倒它,加上使用非常簡單,只要按個〔Open〕就可以開檔使用了,任何人都能輕鬆上手喔!
image

Free Opener

使用方式

1.下載安裝後,執行的畫面如下。按下【File】→【Open】就可以開啟檔案了。
image
2.在開啟檔案的視窗,可以選擇要開啟的檔案格式,可看到支援的格式相當可觀。
image
3.下面便抓幾張實際開檔的畫面:
PDF檔:支援書籤功能,上方工具列可翻頁、跳頁,還可預覽列印及列印。
SNAGHTML3de0fc
壓縮檔:支援解壓縮功能,不過按鈕上面的字不見了,左邊的按鈕是選擇要解壓縮的目的資料夾,右邊的按鈕是開始解壓縮。
SNAGHTML3d9119
影像檔當然也沒問題,而且還支援了15種RAW格式。
SNAGHTML270972
Free Opener可以支援多種Office文件格式,例如doc,docx,xls,xlsx,ppt,pptx,pps…等,還支援了列印文件的功能。
SNAGHTML276e1e
預覽列印可選擇在同一個畫面中顯示1~6頁,並可切換頁數及縮放(10%~500%)。
SNAGHTML5ca7a5
多媒體檔案當然也難不倒Free Opener,常見的mov,mp4,mpg,flv,mkv,3gp,flac,swf…等格式都沒問題,只可惜不支援rmvb。
SNAGHTML4c3dbc

如果你覺得Free Opener功能不夠強,或是還有你開不了的檔案,那麼你也可以試試看另一套萬用的開檔軟體—Universal Viewer,功能與Free Opener相似,不過檔案較小,且多了免安裝版及多國語系(含中文)。Universal Viewer本身支援的檔案格式不像Free Opener那麼齊全,不過可以透過安裝套件的方式來擴充,雖然較有彈性,不過使用的步驟會比Free Opener要麻煩些。

Universal Viewer 5.5.4.2




轉自 http://blog.soft.idv.tw/?p=979

SIM Forensics - Part 1

A smart card, also known as an Integrated Circuit Card (ICC), is a micro-controller based access module. It is a physical/logical entity and can be either a Subscriber Identity Module (SIM) or a Universal Integrated Circuit Card (UICC). Originally, the ICC defined for 2G networks was the SIM. In 3G networks, the SIM may also be a logical entity (application) on a 3G UICC thereby making it functionally the same as a 2G SIM. The Universal Subscriber Identity Module (USIM) is a logical application running on a UICC smart card, which normally only accepts 3G Universal Mobile Telecommunications Service (UMTS) commands. A USIM can have multiple phone numbers assigned to it, thus allowing one phone to have multiple numbers. If the USIM and SIM applications reside on the same UICC, they cannot be active at the same time.


SIM Technology and Functionality
SIMs are found in GSM, iDEN, and Blackberry handsets and are also used by satellite phone networks such as Iridium, Thuraya, and Inmarsat. Under the GSM framework, a cell phone is termed a Mobile Station, consisting of a SIM card and a handset (Mobile Equipment–ME). One very important and functional feature of a SIM card is that it can be moved from one GSM compatible phone to another, thereby transferring all of the subscriber’s information.

The first SIM cards were about the size of a credit card. As cell phones began to shrink in size, the mini-SIM (about one-third the size of a credit card) was developed. Today an even smaller version, the micro-SIM, is available. Each of these three iterations varies in physical size and the functionality supported. Normally, a SIM card provides functionality for both the identification and authentication of the subscriber’s phone to its network; contains storage for phone numbers, SMS, and other information; and allows for the creation of applications on the card itself. The basic functions are illustrated in Figure 1.

What is a SIM card?

SIM Structure
SIMs contain both a processor (CPU) and an operating system which is either native (proprietary, vendor specific) or Java Card (a subset of the Java programming language). SIMs also have Electrically Erasable Programmable Read Only Memory (EEPROM), Random Access Memory (RAM) for controlling program execution, and persistent Read Only Memory (ROM) which stores user authentication, data encryption algorithms, the operating system, and other applications. Communication between the SIM card and the handset is via a serial interface.

A SIM card also contains a hierarchical file system which resides in EEPROM. The file structure consists of a Master File (MF), which is the root of the file system, Dedicated Files (DFs), and Elementary Files (EFs). Dedicated Files are subordinate directories under the MF, their contents and functions being defined by the GSM11.11 standards. Three are usually present: DF (DCS1800), DF (GSM), and DF (Telecom). Also present under the MF is EF (ICCID). Subordinate to each of the DFs are supporting EFs which contain the actual data. The EFs under DF (DCS1800) and DF (GSM) contain network related information and the EFs under DF (Telecom) contain the service related information. A typical SIM card file system is shown in Figure 2.

While all the files have headers, only the EFs contain data. The first byte of the header identifies the file type. Headers contain the security and meta-information related to the structure and attributes of the file, such as length of record. The body of the EFs contains information related to the application(s). Files can be either administrative or application specific and access to stored data is controlled by the operating system.

SIM Card Security

SIM SECURITY
SIM cards have built in security features that are designed to make them tamper resistant, thereby ensuring data security. A SIM card’s MF, DFs, and EFs all contain security attributes. One security attribute, the access conditions, are constraints upon the execution of commands. They filter every execution attempt, thus ensuring that only those with the proper authorization can access the requested functionality controlled by the DFs or EFs. Access conditions can be thought of as somewhat analogous to the user rights associated with the file/directory attributes found in computer operating systems. There are different levels of access conditions associated with DF and EF files:
  • Always (ALW): file access is allowed without restrictions and the command is executable upon the file.
  • Card Holder Verification 1 (CHV1): file access is allowed with the valid verification of the users PIN1 (or PIN1 verification is disabled) and the command is executable upon the file.
  • Card Holder Verification 2 (CHV2): file access is allowed with a valid verification of the user’s PIN2 (or PIN2 verification is disabled) and the command is executable upon the file.
  • Administrative (ADM): the administrative authority (i.e. the card issuer who provides the SIM card to subscribers), is responsible for the allocation of these levels.
  • Never (NEV): file access is prohibited and the command is never executable upon the file.

Data of Forensic Value
Depending upon the phone’s technology and access scheme, the same data, such as a contact list, may be stored on the SIM, in the handset, or on the phone’s memory card. SIM cards themselves contain a repository of data and information, some of which is listed below:
  • Integrated Circuit Card Identifier (ICCID)
  • International Mobile Subscriber Identity (IMSI)
  • Service Provider Name (SPN)
  • Mobile Country Code (MCC)
  • Mobile Network Code (MNC)
  • Mobile Subscriber Identification Number (MSIN)
  • Mobile Station International Subscriber Directory Number (MSISDN)
  • Abbreviated Dialing Numbers (ADN)
  • Last Dialed Numbers (LDN)
  • Short Message Service (SMS)
  • Language Preference (LP)
  • Card Holder Verification (CHV1) and (CHV2)
  • Ciphering Key (Kc)
  • Ciphering Key Sequence Number
  • Emergency Call Code
  • Fixed Dialing Numbers (FDN)
  • Local Area Identity (LAI)
  • Own Dialing Number
  • Temporary Mobile Subscriber Identity (TMSI)
  • Routing Area Identifier (RIA) network code
  • Service Dialing Numbers (SDNs)
A discussion of some of this data and what it means will continue in the next column.


轉自 http://www.forensicmag.com/article/sim-forensics-part-1?page=0,2

McAfee Stinger 免費病毒掃描工具,適合放隨身碟帶著走

McAfee Stinger 是由知名的安全防護廠商 McAfee 所推出的病毒掃描工具,不同於一般的防毒軟體,這個工具僅有約 6 MB 的大小,本身不具備即時防護功能,但很適合放在隨身碟裡需要時使用它來掃描系統是否安全。McAfee Stinger 除了可以檢測 List Viruses 內列出的病毒清單,也有將這些惡意程式移除的功能,使用者只需要定時回去 Stinger 網頁就可以下載到最新的版本。

軟體名稱:McAfee Stinger
軟體性質:惡意程式掃描工具
軟體語系:英文
作業系統:Windows
官方網站http://www.mcafee.com/us/downloads/free-tools/stinger.aspx
官方載點
http://www.mcafee.com/us/downloads/free-tools/stinger.aspx

進入 Stinger 的下載頁面,點擊 Download this tool now 鏈結,接著會看到使用規範,將畫面拉到最下面點擊 Download Now 就可以取得 McAfee Stinger 。
執行之後選擇要掃描的路徑或資料夾,按下 Scan Now 就可以開始掃描囉!

McAfee Stinger 免費病毒掃描工具,適合放隨身碟帶著走 

Stinger 預設會掃描進程和註冊表,如果有需要掃描啟動磁區的話可以在 Preferences 裡調整設定,當發現病毒時,Stinger 會嘗試將受感染的程式回復到安全狀態。

轉自 http://www.freegroup.org/2011/07/mcafee-free-tools-stinger/

Oxygen Forensics Suite - 連接Android設備

利用Oxygen Forensics Suite 2011 連接Android設備可採用如下方法:

所需的硬件和軟件:
USB連接線
在計算機中安裝好Oxygen Forensics Suite 2011 軟件
相應品牌手機的驅動程序
可與手機相匹配的閃存卡(用於提取數據時保存臨時數據)

OxyAgent使用注意事項
OxyAgent程序必須安裝至Android設備中以便提取數據。OxygenForensics Suite 2011將自動安裝並卸載OxyAgent程序。
OxyAgent程序是一個客戶端程序,用於可以最大程度提取Android設備中的有效數據。它不會改變手機設備中的任何個人信息。

從何處下載驅動程序:
在 連接Android設備之前,您必須在計算機中安裝Android設備驅動程序。可以下載並使用原廠驅動程序,也可以使用Oxygen Forensics Suite提供的驅動程序。下載地址:www.forensicsuite.com/download/drivers/android- drivers.rar
解壓縮後驅動程序包含兩個部分:
Manufacturer目錄下包含Motorola 和HTC的官方驅動
General目錄下包含一些其他Android設備的驅動。
當連接手機出現問題,或所需手機型號不在列表中時,建議使用General目錄下的驅動程序。

如何安裝驅動程序:
安裝General 目錄下的通用驅動程序時:
連接手機數據線和計算機,出現發現新硬件嚮導,選擇從指定位置安裝,「選擇驅動程序安裝盤「,手動選擇驅動程序安裝目錄
選擇包含Android_winusb.inf文件的目錄。選擇出現的」Android Composite ADB Interface「
安裝Manufacturer目錄下的驅動:
運行Motorola_Consumer_Driver_Installation_MotoConnect.Msi文件安裝Motorola Android設備,
或參照前述方法安裝HTC Android設備。

手機設備中需進行的設置:
安裝好驅動後,在運行Oxygen Forensics Suite 2011軟件之前,需進行以下步驟:
選擇」USB Debugging「模式:在手機中」Setting/Applications/Development「 菜單中選擇」USB Debugging「。此模式在連接中啟用手機設備ADB服務器。

選擇之後,注意選擇USB連接方式。大多數Android手機都應該選擇NONE。不要選擇其他模式,否則手機將無法被軟件識別。

此時確認手機中已經插入了一個閃存卡,閃存卡中至少需要1MB的空餘空間。閃存卡用於OxyAgent保存臨時數據。數據提取結束後這些臨時數據將自動刪除。閃存卡中保存的原有數據不會被改變。為了安全起見,請在提取過程中使用自備的空白閃存卡。

如何連接Oxygen Forensic Suite 2011
如果您嚴格地按照上述方法連接了設備,啟動軟件後選擇」連接新設備「,連接嚮導將運行,選擇」通過數據線「連接手機,
此時Android手機設備將被自動發現,並提示您安裝OxyAgent。

OxyAgent安裝成功後,可出現如下畫面,發現正確的手機型號。

點擊下一步,可以繼續手機數據提取過程。正常獲取結束後,OxyAgent將被自動卸載。
如果提取過程中意外中斷,請從」Settings/Applications「中卸載OxyAgent。

[譯]手機病毒發展簡史:第一部分

作者:Alexander Gostev, Kaspersky Lab
原文:Mobile Malware Evolution: An Overview, Part 1
發表於:2006年9月29日

2006年6月是具有歷史意義的一個月——卡巴斯基實驗室獲得第一個手機病毒樣本已經整整兩年了。最初我們還不知道那個病毒是由病毒編寫組織29A的成員「Vallez」所寫,但現在已經知道了。

第一個樣本打開了潘多拉的魔盒。現在,反病毒廠商已經蒐集到數百個手機上的木馬和蠕蟲。Symbian系統的惡意程序最早出現在2004年。這一涓涓細流已經彙集成河,並將成為波濤洶湧的洪流。在今天,我們的反病毒數據庫每週都會新增十多個前綴是「SymbOS」的木馬。
看起來並沒有哪一個手機蠕蟲是主流的。最糟糕的是,這些蠕蟲正在造成越來越多的危害,而其規模尚無法估計。一年前,我們捕獲Cabir(卡波爾) 時,唯一知道的是它在另一個國家或城市被檢測到。被感染手機的主人隨後聯繫了卡巴斯基實驗室,我們與位於莫斯科的卡巴斯基總部的一些員工開始一同分析這些 真實的攻擊。


與普通網民相比,手機用戶的安全意識更低,這應該是蠕蟲能夠迅速傳播的原因。事實上,在相當長一段時間裡,用戶認為不存在手機病毒,或者認為這個事不需要關心。
然而手機病毒並非存在於其他平行宇宙。它們就在這裡、就是現在,在要坐的公交車上,在要去電影院或機場中,你的手機隨時都可能遭到攻擊。

要使用戶像瞭解計算機病毒那樣的瞭解手機病毒,要走的路還很長……

從Cabir開始……

2004年6月14日,西班牙的著名反病毒廠商VirusBuster(他們與一些病毒作者有密切聯繫)向 newvirus@kaspersky.com發了一封郵件,附件是名為caribe.sis的文件。當時我們還不確定到底要做什麼——我們從沒見過這種 東西。快速分析後,瞭解到這是Symbian操作系統的應用程序,也是一個包含了其他文件的安裝包。通常,病毒分析師分析運行在x86處理器下的可執行文 件,而caribe.sis中的文件是ARM程序。ARM是一種廣泛用於手機等設備的處理器。起初我們對其機器語言所知甚少,幾個鐘頭後,我們的分析師對 其有了一定的瞭解,這些文件的意圖也就清晰了:這是一種通過藍牙(Bluetooth)在手機上傳播的蠕蟲。第二天,我們在運行Symbian胸的諾基亞 N-Gage手機上進行測試,證實了這個結論。

該蠕蟲的作者是Vallez。據我們瞭解,他居住在法國,當時是病毒編寫組織29A的成員。這個組織致力於為非常規操作系統和應用程序創造概念驗證 型(PoC,Proof-of-Concept)病毒,以此向反病毒廠商和其他病毒作者證明世界上存在全新的、前所未見的攻擊方式。在2004年6月,他 們希望創建一個智能手機上的惡意程序。作者特意選擇了一種非常規的傳播方法——很多蠕蟲通過電子郵件傳播,Internet連接和電子郵件又是智能手機的 主要特性,看起來Cabir應該選擇相同的傳播方式。但是作者選擇了藍牙,這是很關鍵的一點。

Cabir運行於Symbian之上,後者從當時直到現在都是最主流的手機系統。諾基亞的智能手機都使用Symbian,這奠定了它絕對的領先優 勢。事實上,Symbian+Nokia可謂是目前標準的智能手機組合。Windows Mobile想從Symbian受眾強盜一定的市場份額,還需要相當長一段時間。
Cabie的出現符合計算機病毒發展的規律。一個特定的操作系統或平台被惡意程序選為攻擊對象,通常要要滿足三個條件:
  1. 該平台必須流行。Symbian一直是最流行的智能手機平台,全世界有數千萬的用戶。Cabir的作者稱:「Symbian將會成為非常普遍的手機操作系統。今天已經很普遍了,但我認為將來還會更普遍(當然微軟也在為進入這一市場而努力)。」
  2. 必須有文檔完善的應用程序開發工具。Cabir的作者稱:「Caribe用C++編寫,諾基亞提供了開發Symbian操作系統應用程序的完整SDK。」
  3. 存在漏洞或編碼錯誤。Symbian系統在處理文件和服務的設計上存在一些缺陷。Cabir沒有利用這些缺陷,但目前大部分木馬都利用了。
Cabir不僅引起反病毒廠商的關注,還迅速引發了其他病毒作者的興趣。人們迫切期待29A的下一期網絡雜誌。根據慣例,該組織會在下一期公佈蠕蟲 的源代碼。很顯然,公佈源代碼將導致一系列更具危害性的新變種出現,就像腳本小子(script kiddies)獲得一些技術後那樣。然而,就算沒有源代碼,一些計算機罪犯也可能由此具備了大規模攻擊的能力。

現有手機病毒的種類和家族

2004年秋天,手機病毒開始向三個方向發展。其一是獲取經濟利益的木馬。第一個手機木馬是Mosquit.a。它看起來是無害的手機遊戲,但在某 些時刻會向地址簿中的電話號碼發送大量短信,導致用戶話費劇增。Mosquit.a不僅是第一個手機木馬,還是第一個手機廣告件(adware)。

Skuller.a木馬出現於2004年11月,其家族是目前手機木馬中規模最大的。它第一次利用了Symbian的設計缺陷,通過這些缺陷,任何 程序都可以用自己的文件覆蓋系統文件,而不會向用戶發出提示。Skuller將應用軟件的圖標替換為骷髏頭和腿骨,並刪除它們的文件。這樣,只要手機重 啟,就會停止工作。病毒作者們很喜歡這種野蠻的破壞性木馬(vandal Trojan)。


Skuller.a
Cabir的三種新變種與Skuller.a同時出現。這些新變種並沒有基於最初版本的源碼。此時,病毒作者們已經獲取到Cabir,其中一些人做 了腳本小子的勾當:他們將文件重命名,並將其中的文本替換為自己的。有一個變種在原始安裝文件中加入了Skuller,這種雜交產物並沒有真正發揮作用: 木馬已經損毀了手機,蠕蟲就沒法再傳播了。無論如何,這是Cabir第一次被用來攜帶其他的惡意程序。

2005年開始,手機病毒的種類進一步發展,並在接下來十八個月被病毒作者們採用:
  • 通過智能手機的協議和服務來傳播的蠕蟲
  • 利用Symbian設計缺陷將自身安裝到系統中的破壞性木馬
  • 為了獲取經濟利益的木馬
從行為上看雖然種類不多,但實際上手機病毒已經演化出大量不同的形式。卡巴斯基實驗室目前已經捕獲到31個不同的家族。下表是它們的主要特徵:
根據卡巴斯基分類法的手機病毒完整列表(截至2006年8月30日)
名稱 日期 操作系統 功能 使用技術 變種數
Worm.SymbOS.Cabir 2004.6 Symbian 通過藍牙傳播 藍牙 15
Virus.WinCE.Duts 2004.7 Windows CE 感染文件 (文件API) 1
Backdoor.WinCE.Brador 2004.8 Windows CE 提供遠程網絡訪問 (網絡API) 2
Trojan.SymbOS.Mosquit 2004.8 Symbian 發送短信 短信 1
Trojan.SymbOS.Skuller 2004.9 Symbian 替換文件、圖標、系統程序 操作系統漏洞 31
Worm.SymbOS.Lasco 2005.1 Symbian 通過藍牙傳播,感染文件 藍牙、文件API 1
Trojan.SymbOS.Locknut 2005.2 Symbian 安裝惡意程序 操作系統漏洞 2
Trojan.SymbOS.Dampig 2005.3 Symbian 替換系統程序 操作系統漏洞 1
Worm.SymbOS.ComWar 2005.3 Symbian 通過藍牙和彩信傳播,感染文件 藍牙、彩信、文件API 7
Trojan.SymbOS.Drever 2005.3 Symbian 替換反病毒程序加載器 操作系統漏洞 4
Trojan.SymbOS.Fontal 2005.4 Symbian 替換字體文件 操作系統漏洞 8
Trojan.SymbOS.Hobble 2005.4 Symbian 替換系統程序 操作系統漏洞 1
Trojan.SymbOS.Appdisabler 2005.5 Symbian 替換系統程序 操作系統漏洞 6
Trojan.SymbOS.Doombot 2005.5 Symbian 替換系統程序 操作系統漏洞 17
Trojan.SymbOS.Blankfont 2005.7 Symbian 替換字體文件 操作系統漏洞 1
Trojan.SymbOS.Skudoo 2005.8 Symbian 安裝損壞程序、安裝Cabir、Skuller、Doombor 操作系統漏洞 3
Trojan.SymbOS.Singlejump 2005.8 Symbian 禁用系統功能、替換圖標 操作系統漏洞 5
Trojan.SymbOS.Bootton 2005.8 Symbian 安裝損壞程序、安裝Cabir 操作系統漏洞 2
Trojan.SymbOS.Cardtrap 2005.9 Symbian 刪除反病毒程序、替換系統程序、在存儲卡中安裝Win32惡意代碼 操作系統漏洞 26
Trojan.SymbOS.Cardblock 2005.10 Symbian 阻塞存儲卡、刪除文件夾 操作系統漏洞、文件API 1
Trojan.SymbOS.Pbstealer 2005.11 Symbian 竊取數據 藍牙、文件API 5
Trojan-Dropper.SymbOS.Agent 2005.12 Symbian 安裝其他惡意程序 操作系統漏洞 3
Trojan-SMS.J2ME.RedBrowser 2006.2 J2ME 發送短信 Java、短信 2
Worm.MSIL.Cxover 2006.3 Windows Mobile/ .NET 刪除文件、將自身拷貝至其他設備 文件API、網絡API 1
Worm.SymbOS.StealWar 2006.3 Symbian 竊取數據、通過藍牙和彩信傳播 藍牙、彩信、文件API 5
Email-Worm.MSIL.Letum 2006.3 Windows Mobile/ .NET 通過電子郵件傳播 電子郵件、文件API 3
Trojan-Spy.SymbOS.Flexispy 2006.4 Symbian 竊取數據 2
Trojan.SymbOS.Rommwar 2006.4 Symbian 替換系統程序 操作系統漏洞 4
Trojan.SymbOS.Arifat 2006.4 Symbian 1
Trojan.SymbOS.Romride 2006.6 Symbian 替換系統程序 操作系統漏洞 8
Worm.SymbOS.Mobler.a 2006.8 Symbian 刪除反病毒程序、替換系統程序、通過存儲卡傳播 操作系統漏洞 1
共計31個家族、170個變種

已知變種數的增長趨勢

已知家族數的增長趨勢
簡而言之,上表告訴我們「手機病毒能做什麼?」:
  • 通過藍牙、彩信傳播
  • 發送短信
  • 感染文件
  • 導致對智能手機的遠程控制
  • 修改、替換圖標或系統程序
  • 安裝「錯誤的」或不可操作的字體和程序
  • 對反病毒程序鬥爭
  • 安裝其他惡意程序
  • 阻塞(block)存儲卡
  • 竊取數據
必須承認,手機病毒在荷載方面已經和計算機病毒極其相似了。然而,計算機病毒花了二十年的時間演化至此,手機病毒只用了兩年。毫無疑問,手機病毒是惡意代碼中發展最快的一類,並且將來還有無限的進化可能。

基礎性病毒

從所使用的技術來看,手機病毒和PC病毒的主要不同是,雖然手機病毒家族眾多,但只有極少數是真正原創的(truly original)。這種現象與20世紀80年代末期計算機病毒的情況類似。當時,從一些「奠基性的」病毒中衍生出數百種惡意代碼,大多數惡意代碼都基於 三種病毒:Vienna(維也納)、Stoned(石頭)和Jerusalem(耶路撒冷)。在手機病毒中,我認為下列是其他病毒的「祖先」:
  • Cabir
  • Comwar
  • Skuller.gen
Cabir是它自己多個變種的基礎,它們的區別僅僅在於文件名和sis安裝文件中的內容不同。但是在一些看起來沒什麼關聯性的家族中,例如StealWar、Lasco和Pbstealer,Cabir也起到基礎支撐作用。

Lasco

Lasco是第一個這種「新的」家族。除了蠕蟲的特性,這個家族的病毒還感染手機內存中的文件。Lasco的發展正好展現了當病毒源代碼被公開後會 發生什麼。一個自稱手機病毒專家的巴西人Marcos Velasco獲得了Cabir的源碼並開始寫病毒。在2004年的最後一個禮拜,他將自己寫的許多Cabir變種發給了反病毒廠商。它們全被歸為了 Cabir的變種,並且其中一些完全無法運行。作者並不滿意,為了變得出名,他又創造了一個可以感染sis文件的變種。這就是Lasco是如何進入到反病 毒數據庫之中的。
幸運的是,雖然Velasco將他的代碼發佈在了個人主頁上,感染文件這個點子並沒有被其他病毒作者進一步發展。目前還不清楚Cabir是否確實是 Lasco的源頭。儘管Marcos Velasco宣稱他完全獨立地編寫了所有的代碼,但無論是文件的數量,還是這些文件的名字,以及操作原則,Lasco都與Cabir非常相似。可以比較 一下這兩個蠕蟲的主要函數,然後我們就會有自己的結論。
Cabir通過藍牙傳播的函數:
if(WithAddress)
{
        WithAddress = 0;
        Cancel();
        TBTSockAddr btaddr(entry().iAddr);
        TBTDevAddr devAddr;
        devAddr = btaddr.BTAddr();
        TObexBluetoothProtocolInfo obexBTProtoInfo;
        obexBTProtoInfo.iTransport.Copy(_L("RFCOMM"));
        obexBTProtoInfo.iAddr.SetBTAddr(devAddr);
        obexBTProtoInfo.iAddr.SetPort(0x00000009);
        obexClient = CObexClient::NewL(obexBTProtoInfo);
        if(obexClient)
        {
                iState = 1;
                iStatus = KRequestPending;
                Cancel();
                obexClient->Connect(iStatus);
                SetActive();
        }
}
else
{
        iState = 3;
        User::After(1000000);
}
return 0;
Lasco通過藍牙傳播的函數:
if ( FoundCell )
{
        FoundCell = _NOT;
        Cancel();
        TBTSockAddr addr( entry().iAddr );
        TBTDevAddr btAddress;
        btAddress = addr.BTAddr();
        TObexBluetoothProtocolInfo obexProtocolInfo;
        obexProtocolInfo.iTransport.Copy( _L( "RFCOMM" ) );
        obexProtocolInfo.iAddr.SetBTAddr( btAddress );
        obexProtocolInfo.iAddr.SetPort( 9 );
        if ( ( iClient = CObexClient::NewL( obexProtocolInfo ) ) )
        {
                iStatus = KRequestPending;
                BluetoothStatus = _BLUETOOTH_NOT_CONNECTED;
                Cancel();
                iClient->Connect( iStatus );
                SetActive();
        }
}
else
{
        BluetoothStatus = _BLUETOOTH_CONNECTED;
}
}

Pbstealer

Symbian的第一個間諜木馬Pbstealer是Cabir的另一個「後代」。它創建於亞洲,也許是中國,並在一個被黑了的韓國《傳奇》網遊專 題網站中發現。這種分發的方法和惡意的木馬本身,充分表明了出於「善意」的Cabir作者是如何為後來惡意代碼的開發鋪平道路的。
該木馬通過藍牙發送文件的功能來自於Cabir。然而,作者對原始代碼作了一個重要的修改。它搜尋手機的地址簿,並將其中的數據通過藍牙發送給第一 個發現的終端設備。其名字Pbstealer就來自於「Phonebook Stealer(地址簿竊賊)」。 當時,一些網絡罪犯利用藍牙協議中的多個漏洞竊取這類信息,例如BlueSnarf。而這個木馬極大地增加了其成功的可能性。
除此以外,Cabir還順其自然地成為其他多種木馬的載體,在Skuller、Appdisabler、Locknut、Cardtrap以及其他 破壞性木馬中,有超過一半的變種包含了Cabir。它被修改為傳播整個木馬包裹,而不僅僅是傳播自身。這種雜交方式導致這些惡意程序的分類變得極其困難。 我們會在後面進一步討論這個問題。

Comwar

手機病毒開發的第二個里程碑是Comwar,它是第一個通過彩信傳播的蠕蟲。和Cabir 一樣,它也能通過藍牙傳播,但主要還是使用彩信。這使得它具有了極高的潛在威脅。藍牙的操作必須在10到15米的距離內,其他設備只有進入這個範圍才有可 能被感染。而彩信沒有任何邊界限制,它甚至可以立即被發送到其他國家。
最初,Cabir的作者考慮過這個想法,但(從29A的理想主義視角來看)選擇藍牙的原因是很顯然的:
彩信:要通過搜索電話號碼並將蠕蟲放到彩信中發送出去,這種傳播方法是很容易實現的。但是存在兩個問題:
1. 我們不知道發彩信手機是什麼型號的,我們也不知道目標手機是否能接收彩信或者運行這個蠕蟲;
2. 這種做法將消耗手機的話費。
第二個原因表明Cabir的作者並不希望對用戶造成經濟上的損失。與此相反,Comwar的作者對此則沒有任何良心上的不安。
這種通過彩信發送惡意代碼的技術,是它對其他病毒作者最有吸引力的地方,然而,到目前為止,我們也只看到了對原始蠕蟲的常規變化,即由一些初級黑客 改變文件名以及原始文件中的文本,而沒有對Comwar的功能作出任何改變。這是因為Comwar的源代碼並沒有被公開,以及腳本小子不清楚發送感染彩信 的流程。
目前,我們捕獲了這個蠕蟲的7個修改版本。其中四個包含了「作者簽名」:

CommWarrior v1.0b (c) 2005 by e10d0r
CommWarrior is freeware product. You may freely distribute it in it's original unmodified form.
Comwar.b
CommWarrior v1.0 (c) 2005 by e10d0r
CommWarrior is freeware product. You may freely distribute it in it's original unmodified form.
Comwar.c
CommWarrior Outcast: The dark side of Symbian Force.
CommWarrior v2.0-PRO. Copyright (c) 2005 by e10d0r
CommWarrior is freeware product. You may freely distribute it
in it's original unmodified form.
With best regards from Russia.
Comwar.d
沒有包含任何區分性的文本。彩信內容被替換為了西班牙語。
Comwar.e
WarriorLand v1.0A (c) 2006 by Leslie
此外,文本中包含了西班牙語。
Comwar.f
沒有包含任何區分性的文本。彩信內容被替換為了西班牙語。
Comwar.g
CommWarrior Outcast: The Dark Masters of Symbian.
The Dark Side has more power!
CommWarrior v3.0 Copyright (c) 2005-2006 by e10d0r
CommWarrior is freeware product. You may freely distribute it in it's original unmodified form.

除此以外,.g變種是第一個具有文件感染能力的變種。它在手機內存中搜索其他sis文件,並將自身代碼添加過去。因此,在傳統的藍牙和彩信之外,又多了一種傳播方法。
應當指出,到目前為止,Comwar還沒有產生其他家族那麼多數量的變種。前面提到過,這是因為其源代碼還沒有被公開。和Cabir一樣,它被用於 承載其他木馬程序。完全基於Comwar的新家族只有StealWar這一個。後者是一個組合了Cabir、Comwar和Pbstealer木馬的蠕 蟲。這種組合形式具有高度危險性和廣泛傳播的能力。

最終,不可避免地,通過彩信傳播成為了當前手機病毒最常用的傳播手段。將來可能會更加流行,因為Windows Mobile 2003上已經發現了一個嚴重的彩信處理漏洞,它可以導致一個緩衝區溢出和任意代碼執行。Collin Mulliner在2006年8月的DefCon大會上報告了這一漏洞。
在微軟發佈相關補丁之前,這個漏洞的詳細信息不會被披露給公眾。但是,缺少信息並不等於說漏洞的危險性就降低了。如果有人寫了一個不需要用戶交互就自動啟動的蠕蟲,並將其放到手機內存中,就有可能引發全球性的災難。

Comwar的.c變種實現了一種可以認為是rootkit的技術,為手機病毒技術的發展又做出了貢獻。該蠕蟲在進程列表中隱藏自身,在標準的正在 運行程序列表裡也看不到。Comwar將其進程指定為」system」的來實現這一點。雖然使用其他查看正在運行進程的軟件就可以看到它的進程,但這種隱 藏方法此前還沒有在Symbian的其他病毒中出現過。


彩信漏洞示例(Collin Mulliner, Advanced Attacks Against PocketPC Phones)

Skuller

前面提到過,Skuller是變種數最多的手機木馬家族:截至2006年9月1日,我們一共發現了它的31個變種。這並不奇怪,所有這些變種都是 Symbian下最原始的惡意程序。任何會使用工具創建sis文件的人,都可以製造出這種類型的木馬,而其他的工作已經由Symbian的漏洞完成了:通 過這些漏洞,可以覆蓋任何文件,包括系統的文件,而當系統遇到不是所期望的文件時(例如已損壞的文件,或者對特定系統版本而言非標準格式的文件)將變得極 度不穩定。

所有的Skuller變種都基於兩類文件,一類我們稱為Skuller.gen,另一類是Skuller與其他類似功能家族(例如Doombot或Skudoo)相比具有區分性的文件:
  • 一個與要替換文件同名且擴展名是aif的文件,大小是1601字節。這是一個圖標文件,包含了骷髏頭圖標。該文件還包含了一個字符串:「↑Skulls↑Skulls」;
  • 一個與要替換文件同名且擴展名是app的文件,大小是4796字節。這是一個EPOC應用程序,一個「假」文件。

分類的問題

當前手機病毒研究中的一個主要問題是分類,尤其是如何準確標記一個新的樣本,根據行為將其歸入合適的類別裡。主要困難來自於絕大部分新病毒都是混合型的,包含了兩個或多個不同類型惡意代碼的功能。
卡巴斯基實驗室的分類方法具有清晰的結構:
  • 行為:表明了惡意代碼是什麼,做了什麼,例如:Email-Worm、Trojan-Downloader、Trojan-Dropper。
  • 環境:操作系統或者惡意功能所需的特定應用程序,例如:Win32、MSWord、Linux、VBS。
  • 家族名和變種標識(字母)。
在確定家族名和變種號上極少出現問題。有時候選擇家族名反而有些困難,這一點將在後面討論。
有時候識別環境是很困難的。現在大部分手機病毒是Symbian系統的,我們記為SymbOS。但是,用戶越來越想知道某個病毒到底在哪個 Symbian系列上運行:「某個木馬只在Symbian Series 60 SE上運行嗎?還是也能攻擊Series 80設備?」等等。在我們的計算機病毒分類方法中,使用Win16、Win9x、Win32來區分不同版本的Windows。因此,將來也許會要為 Symbian的類別增加一個數字。

判斷Symbian的系列還只是最簡單的問題。當系統是Windows Mobile時,情況就複雜了。
比如說,有的病毒是針對Windows CE 2003編寫的,我們將這種環境命名為WinCE。然而,為Windows Mobile 5.0編寫的病毒在Windows CE下是無法工作的。此外,並不是只有Windows CE和Windows Mobile,還有Windows Pocket PC。Mobile和Pocket PC都使用了Windows CE的一些功能,但它們又都有各自的程序和特色。

因此,在現有的分類方法下,很難為惡意代碼命一個準確的名字以反映其行為。
此外,很多病毒的功能需要WinCE/Windows Mobile下安裝了.NET環境。在這些情況下,我們使用MSIL作為其環境名,這種環境名無法體現出該惡意代碼是為移動設備所寫的。
迷糊了吧?這還只是冰山的一角。手機病毒最複雜的部分還在於選擇其行為。雜交型病毒、跨平台病毒,以及不同反病毒廠商的命名機制,使得這一部分異常地複雜。
看幾個例子,就能體會到了。

假設有一個sis文件(本質上是一個打包的安裝文件),它包含來自Cabir、Comwar、Pbstealer木馬的文件,一些 Skuller.gen的文件,以及一些0字節的空文件(Locknut的標誌)。如果這還不夠,該文件還向手機的存儲卡中安裝一個Win32病毒(就像 Cardtrap木馬那樣)。
基於現有的分類方法,應該稱其為一個Trojan-Dropper。但是,因為安裝了Cabir,它會通過藍牙發送sis文件。這是否意味著它也是 一個蠕蟲呢?如果是,該怎麼稱呼它?Cabir?這肯定不行,我們不應該命名為Cabir並給它一個新的變種號,因為這個sis文件中90%的內容並不屬 於Cabir,將其命名為Cabir只會把用戶搞糊塗。

那命名為Skuller、Locknut或者Cardtrap呢?也沒有哪個單獨的名字是合適的,因為這個新樣本是一個混合體。最終,這個sis文 件很有可能定性為一個Trojan,並使用我們捕獲到的家族中一個已有的名字。這個名字將基於輔助特徵來確定,例如是否由相同的作者編寫等。
如此複雜的情況在計算機病毒中很少出現,但在手機病毒中是常態。有可能隨著破壞性木馬逐漸減少,手機病毒的世界會變得更具有結構性。

我們來看另一個例子。假設有一個蠕蟲運行於Win32環境。當它在PC上啟動後,除了其他行為以外,還在E:\drive下創建一個sis文件。根 據約定,Symbian手機通過這個drive來連接PC。該sis文件包含了一些空文件,用於覆蓋手機的大量系統程序。該sis文件還包含了這個 Win32蠕蟲本身,它會拷貝自身到手機存儲卡之中,並釋放一個autorun.inf文件。一旦被感染手機連接到一台幹淨的計算機,並從PC上訪問其存 儲卡,蠕蟲就可能啟動並感染乾淨的計算機。
這個跨平台病毒的例子可以在兩個操作系統下運行:Symbian和Windows。這樣的蠕蟲是存在的——Mobler。它應該怎麼分類呢?

對跨平台病毒,我們使用多重標識。比如Worm.Multi.Mobler?可惜的是,用戶無法從中看出它會對Symbian手機產生威脅。我們認 為最好的分類方法是將其分為兩個組件:win32文件命名為Worm.Win32.Mobler,而sis文件命名為 Worm.SymbOS.Mobler。

然而,其他反病毒廠商並沒有將sis文件歸為Mobler或者一個蠕蟲。他們將其稱之為Trojan.SymbOS.Cardtrap,因為根據他 們的分類方法,任何向存儲卡安裝Win32惡意程序的病毒都是Cardtrap。但這個病毒並不是安裝一個木馬,它安裝了自身的主要組件,將自身傳播到其 他操作系統中。因此,反病毒廠商嚴格的分類準則就像把方形的桌子腳強行塞到圓洞裡去一樣。最終所有的人都沒有得到好處——無論是用戶還是反病毒廠商自己。

如果我們一開始就假設大量手機病毒的傳播方法和行為會和以前接觸到的有本質上的差異,這就意味著需要建立全新的分類來體現這種特點。比如 說,Cabir(或者其他通過藍牙傳播的蠕蟲)可以被歸為Bluetooth-Worm(Mac OS系統的Inqtana蠕蟲也可以歸入這類)。一個通過彩信傳播的蠕蟲可以歸為MMS-Worm。但如果一個蠕蟲既利用藍牙又利用彩信發送自身呢?這兩 種傳播方法哪種是最重要的?卡巴斯基實驗室認為彩信是更主要的傳播方法,但是其他反病毒廠商可能不這麼認為,他們可能給藍牙更高的優先級。

反病毒產業在不久的將來就會面臨這樣的問題,它必須為手機病毒建立一套統一的分類方法。在形勢更加嚴峻之前,在避免PC病毒分類(以及不同廠商完全 不同的命名)造成的混亂波及到手機病毒的世界之前,這件事應該盡快完成。可惜的是,在創建PC病毒的統一分類方法上的失敗,給未來手機病毒的分類帶來了諸 多陰霾。

(Claud Xiao翻譯。本文的翻譯和發表沒有得到原文版權所有者的許可,請謹慎轉載和使用。)

轉自 http://blog.claudxiao.net/2011/07/mobile_malware_evolution_an_overview_part_1/#more-259

BIOS 熱鍵表

Free Dropbox Forensics Tool

Dropbox Reader is a set of Python scripts for forensic investigators. The scripts provide investigators with information about a particular Dropbox user's account and activities, such as the registration e-mail, Dropbox identifier and most recently changed files.

Dropbox Reader was created by Cybermarshal, the computer forensics wing of ATC-NY.

Here's a list and description of the tools from the product website:
  • read_config script outputs the contents of the Dropbox config.db file in human-readable form. This includes the user's registered e-mail address and Dropbox identifier, software version information, and a list of the most-recently-changed files.
  • read_filecache_config script outputs configuration information from the Dropbox filecache.db file. This includes information about shared directories that are attached to the user's Dropbox account.
  • read_filejournal script outputs information about Dropbox synchronized files stored in the filecache.db file. This includes local and server-side metadata and a list of block hashes for each Dropbox-synchronized file.
  • read_sigstore script outputs information from the Dropbox sigstore.db file, which is an additional source of block hashes.
  • hash_blocks script produces a block hash list for any file. This block hash list can be compared to the block hashes from read_filejournal or read_sigstore.
  • dropbox_contains_file script hashes one or more files (as per hash_blocks) and compares the resulting block hash list to the files listed in filecache.db (as per read_filejournal) and reports whether the files are partially or exactly the same as any Dropbox-synchronized files.

轉自 http://www.readwriteweb.com/enterprise/2011/06/free-dropbox-forensics-tool.php

Windows平台下的安全事件處理


作者:沈志昌/林敬皇 


摘要
當 我們使用的 Windows 系統環境中遭遇安全性事件時,我們如何準備事件回應及保留相關證據。本文將逐一說明在 Windows 系統環境中如何準備事件的處理、證據的蒐集與保留及保護等,並以 Guideline 的方式引導您了解 Windows 平台下的安全事件如何處理。



一、前言隨 著網際網路的逐漸普遍,為人類帶來許多生活上的改變,相對的網路入侵事件日益頻繁,無論您的使用平台為何,都免除不了遭受入侵的威脅,從電腦安全的觀點 來看,完整的建築保護電腦的工事,是第一要務,然而,在資安界流傳「最安全的網路環境,是不接上網路的單機作業」,這說明了,不論怎樣維護安全的網路環 境,還是難免有漏洞,除了完整的防護措施外,如何有效發現及發現入侵後如何應變,也是相當需要重視的一環。因此,本文的重點在於,如何在充滿威脅的環境 下,能夠有效的發現異常情況且能進一步蒐集與提出相關證據,以利於安全人員作有效的處理,甚至涉及相關法律處理程序時,作為協助辦案的佐證。 

當 您發現系統遭受入侵且可能有資料被盜失,大多數人的反應是希望儘快恢復成原先的正常運作狀況,且進一步找出破壞 者,但在處理這些事件時,最常見的處理方法就是直接拔除網路線,接著系統重新安裝系統,這樣的動作似乎可以順利完成問題的排除,然而,在電腦犯罪日漸囂張 的今日,除了恢復系統外,更需將您的重點放置於入侵軌跡及犯罪證據的蒐集。因此,無論是個人、企業組織都應在處理資安問題時,將此列入資安政策( policy )內。 

瞭解蒐證的必要性後,如何有效的蒐集及回報資訊,也是的另一重點。不同的入侵行為會產生不同的記錄及影響,資安事件回報機制就是在此背景下產生的,國內常見的資安事件回報機制,政府等公務單位有國家資通安全技術服務中心(簡稱 ICST )的資訊安全事件回報系統,而民間單位則有台灣電腦網路危機處理暨協調中心(簡稱 TWCERT/CC )的安全事件回報機制,透過這些回報機制及單位,可以將您所遭受的入侵行為或是攻擊行為透過這些組織來幫您與對方的 ISP 進行反應,若判定為惡意行為,也可依據通報的紀錄,考量將處理的層級提升至相關的法律行動。因此,如何有效的保留資訊及通知問題處理單位,就成了處理資安 問題的首要任務。本文的目的即在提供資安事件蒐證工具建議,並且說明如何有效的使用這些工具來取得 MS-Windows 系統安全事件相關證據,,提供相關安全事件回報機制及單位的處理者最詳細的資訊,以順利解決您的資安事件。 

二、入侵應變
入 侵應變階段是在發現異常情形時,從有限的主機資訊中提存有關資訊安全事件的行動,內容包含可能所發生的損害或是影響程度,這是所有處理資安事件的第一階 段,接著即是應變的實行,依照組織內的資安策略,決定是否繼續監控,或是需要離線修復之工作。在入侵應變階段,通常需要注意 5W1H 原則:

  • Who :誰發現入侵行為?
  • How :如何發現?
  • When :何時發現?
  • What :受損害的程度為何?
  • Where :攻擊從何開始?
  • What techniques :怎樣的技術造成系統的損害?及需要什麼技術來進行處理?

根據以上幾點,您可以依據不同的入侵型態來設計應對策略以及需要的通報資訊,要成功的處理入侵事件並不單只是仰賴快速的回復系統狀態,而是還要兼顧入侵資訊的蒐集和證據的取得。 


當 系統可能發生遭受入侵的情形時,最常被問到的問題通常是, ” 是否要立即將系統離線 ” 、 ” 是不是要將系統關機 ” 、 ” 要不要馬上將系統重安裝 ”,但這些都不是最好的解決方式,而是必須考量您先前所設計的資訊安全策略。舉例來說,若入侵者還潛伏在您的系統中,也許您不應該立即斷線而驚動對方,反之 您可以進行安全通報後,藉由監控程式追蹤出對方的來源。但倘若您的資料屬於重要的機密資料,這時您可能就須以保護資料為優先,立即斷線以防止更嚴重的損害 發生。 

三、取得證據數 位證據是相當容易建立,也是容易修改,通報者必須十分注意取得的證據,重要的是必須注意每一個蒐集的程序及所蒐集到的資訊種類。在資安事件上,入侵行為 未必會立即提昇至需要法律行動,但對於企業組織來說這些相關資訊的取得,都可能在將來資安事件等級提昇時,轉變為有力的證據,因此,對於蒐集的時間點、技 術等,都應該利用可信任及可驗證的方式進行。對於記錄的方式、時間、媒體以及如何整合這些證據的方式,都應要事先建立標準程序,以因應問題發生時之處理, 在記錄這些證據時,您必須注意底下事項,確保蒐集的資訊是有效的。

  • 避免寫入原來的媒體
  • 避免直接刪除所有執行程序
  • 避免干預系統時間
  • 避免使用非信任的軟體
  • 避免干預系統狀況(包含重開機、更新檔、修正檔、或是重新修改系統組態)

四、保護容易消失的資訊
當 資安處理程序進入鑑識( forensic )分析程序時,有可能會採用系統關機或是離線調查的方式。然而電腦系統有許多的資訊是容易消失(或揮發)的(例如:記憶體資料、時間、內容、連線狀況 等),因此,在系統存活時( live system )即時保存甚至是保護這些容易消失的資訊,對於數位證據的蒐集上,是相當重要的步驟。底下列舉這些容易消失的儲存設備種類,這些是蒐集及保存系統現況資訊 重要的處理標的:

  • Registers, cache 內容
  • 記憶體內容
  • 網路連線狀態
  • 正在執行的程序( running processes )
  • 正在使用的檔案內容及磁碟裝置
  • 可攜式裝置或是備份媒體內容(光碟機、磁帶機、 flash 碟等 … )

而在動手取得這些易消失證據時,底下幾項是需要注意的事項:

  • 系統時間及日期
  • 正在執行和運行的程序( process )
  • 目前的網路連線狀態
  • 應用程式所開啟的通訊埠( sockets )
  • 系統上登入的使用者

取得以上這些容易消失的資訊,對於蒐證來說是相當重要的一環,在某些案例中,入侵者(如: hacker )常會利用駭客工具來達成目的,此時所使用的工具程式就會常駐在記憶體、網路連線中,完整的取得這些資訊,對於成功的處理資安事件有絕對必要性。


五、建立蒐證工具集(Toolkits)
取 得資安事故證據及確定其正確無誤的是重要的,因此,可信的蒐證程式與工具將是蒐證的第一步驟,建議將這些工具建立在 CD-ROM 中攜帶至受入侵系統或是事件現場將會是個不錯的處理方式,管理者需要經常更新蒐證工具且定期蒐集系統內資訊,才能確保所取得的資訊能最接近於事發時間。

下提供有關於 Window 底下蒐集系統安全資訊的工具,您可以依照您的所需要取得資訊多寡程度,來決定所使用的數量及使用的等級,依此建立您的處理工具集( Toolkits ),並測試及確認在蒐集資安事件資訊時,這些工具不會改變任何系統的狀態,這對於將來進行鑑識 (forensic) 時,將會有很大影響。

表 1 : Window-base 蒐集系統安全資訊的工具
ipconfig 用來確認系統上 ip 位址。 可信任的系統
netstat 用來確認系統上 ip 位址。 可信任的系統
nbstat 用以顯示 NetBIOS 至 TCP/IP ( NetBT )協定狀態,本機端到遠端電腦的 NetBIOS table 狀態。 可信任的系統
date 確認系統日期。 可信任的系統
time 確認系統時間。 可信任的系統
psuptime 用來確認 win NT/2k 系統已開機執行的時間。 www.sysinternals.com
net 用來確認 NetBIOS 連線、使用者帳號、分享資料夾及啟動服務等功能。 可信任的系統
psloggedon 用來顯示本地端使用者帳號連結至遠端的情形。 www.sysinternals.com
pulist 命令模式工具,用來顯示本機上所有執行中的程序,並且可以擷取使用者正在執行的程序。 www.sysinternals.com
pslist 命令模式,顯示所有執行程序使用 CPU 的資訊,包含時間、負載百分比、核心或是使用者模式及記憶體使用量,可選擇即時監控或是直接擷取方式。 www.sysinternals.com
listdlls 列出本機上所有使用的 DLLs ,包含版本、放置位置。 www.sysinternals.com
fport 用來顯示系統上目前執行程序,及該程序所使用之 PID 、 PORT 狀態。 www.sysinternals.com
psservice 用來顯示系統狀態、組態、服務的 service 並可以進行管理系統服務。 www.sysinternals.com
ps-info 顯示 windows NT/2K 上 OS 及所有人的狀態、及主機上的所有資訊。 www.sysinternals.com
arp 系統上將 IP 位址與 MAC 位址做對應之工具。 可信任的系統
ntlast 監控登入的狀況(失敗或成功)。 www.sysinternals.com
reg 系統上用來編輯、管理 registry 工具。 NT resource Kit
auditpol 用來決定系統所使用的 audit policy 。 NT resource Kit
regdmp 將系統 registry 轉換成文字檔輸出。 NT resource Kit
md5sum 用來產生檔案的 hash 值,確保輸出的檔案不被修改。 unxutils.sourceforge.net
netcat(cryptcat) 用來將資訊寫入或讀取網路連結當中, Cryptcat 與 netcat 相同,不過還可以建立加密的通訊管道。 www.atstake.com
filemon 監控系統上檔案系統活動情形,並且可觀察應用程式所使用的 DLLs 狀態。 www.sysinternals.com
windump 用來擷取分析系統 TCP 連線內容工具。 www.dump.polito.it
process explorer Windows 下套裝軟體,可以用來監控系統程序狀況及使用 DLLs 的情形。(包含位置、版本資訊等)。 www.sysinternals.com
cmd.exe 用來啟動命令列工具。 可信任的系統
       
六、取得Windows平台證據

6.1 Step by Step當然,我們並不能確保每個管理者都能夠在第一時間就發覺入侵行為,通常發現問題時,系統可能已經重新啟動,喪失之前的原始狀況,即使發生上述情形,對於蒐證來說,儘早進行蒐證的程序,仍是正面積極的行動,底下將一步一步告訴您該如何進行資訊的蒐集工作。

6.1.1 :開啟信任的工具列工具 ( 從您的 Toolkits)將您所建立好的蒐證工具集放置於受入侵之機器的 CD-ROM ,並且啟動您系統上的開始選單,在執行的選項上執行 "cmd.exe" 啟動命令列視窗。

6.1.2 :準備好蒐證系統記 得先前您已經將您的蒐證工具集放置於受害機器上,接下來步驟就是開始要利用這張光 碟來進行資訊的蒐集,並且把蒐集的證據存放到儲存媒體。在此之前,您可以利用網路方式來進行證據的存放,因此,您需要在遠端啟動蒐證系統,以 netcat 為例(您也可使用加密的方式,如 cryptcat ,可以避免遭受竊聽),首先您必須在您的蒐證機器上,啟動 netcat 並給於此服務一個聆聽埠( listen port ),準備接收來自受害主機的資訊。
蒐證機器上執行: nc –l –p 12345 >> d:\collect.txt
在此, -l 為開啟 listen port , -p 則是指定您的 listen port ,最後轉向到您所欲儲存的位置上,在設置好蒐證系統的準備工作後,接著就是回到受害主機上進行蒐證的工作。在受害主機上,您必須建立與蒐證系統的連線工作。 

受害主機上: nc < 蒐證系統 ip 位址 > -e
舉例來說,若您欲將受害主機目錄下檔案結構傳遞至蒐證主機,您可以在命令欄位上使用 dir 這個指令,
如下:
nc 192.168.1.9 12345 -e dir 或是 dir | nc 192.168.1.9 12345

6.1.3 :蒐集易消失證據在蒐證的第一要務為蒐集系統上容易消失的重要資訊,包含了:

  • 系統中基本資訊
  • 執行中的程序
  • 開啟的通訊埠
  • 網路連線狀態
  • 網路分享狀況
  • 網路使用者

底下是此一階段需要執行的指令,而系統時間及日期是在執行所有程序的前需要先蒐集的資訊(請記住,以下步驟皆是在受害主機端進行)

date /ttime/t 蒐集主機上之系統時間,在執行此一動作同時,需先檢查系統時間與實際時間是否有所差別,若有,也請詳細記錄差異的數值,這對將來比對網路設備端之記錄是相當重要的。
ipconfig /all 記錄目前主機所使用的網路連線基本資訊。
psinfo 記錄系統資訊,包含修正檔的版本、修正的次數。
psuptime 紀錄系統啟動的時間。
psloggedon 記錄遠端與本機端使用者的連線狀態。
ntlast –r -f 記錄系統中使用者登入的狀況。(包含成功與失敗)
net < 參數 > 檢 測系統中網路選項資訊,參數種類包含 ,請將這些資訊都個別記錄下來。
nbtstat –n
nbtstat –c
nbtstat -s
存取遠端 NetBIOS 名稱、目前 NetBIOS 的連線狀態、及最後連線狀態。
取得本機端與遠端的 NetBIOS table 狀態。分辨登入的使用者。
pclip 取得 clipborad 的資訊。
pslist
pulist
psservice
取得系統執行程序的資訊。
列出正在執行的程序;
列出正在活動( active )的程序。列出目前服務的狀態。
listdlls 記錄目前所使用的 DLLs ,包含放置位置、版本及數量。在此也可以發現是否有木馬程式或其他惡意程式存在。
fport 記錄目前所使用的程序、 PID 、及所使用的通訊 port 。參考: http://isc.sans.org/port_detial.html
netstat -an 記錄目前 listening 的服務( service )、目前系統開啟的 port 。
netstat –rn 記錄 routing table 。
arp -a IP address 與 MAC address 表。
dir /t:a /a /s /o:d c: 取得最後存取時間。
dir /t:w /a /s /o:d c: 取得修改時間。
dir /t:c /a /s /o:d c: 取得最後建立時間。(若有多部磁碟機,請自行改變磁碟機代號)利用 dir 可以建立在蒐證時,磁碟機內檔案、時間資訊、連結等資訊。
hfind c: 紀錄磁碟機內所有屬性為隱藏( hidden )的檔案。用來區分隱藏與一般屬性的檔案。
md5sum 給予檔案 hash 值,用來確保蒐集的檔案不被竄改。

註:上述指令詳細功能,請自行參考指令說明檔。 ( 程式範例請參照附錄 )
上述所有蒐集動作,看似繁雜且枯燥,但當所有資訊都蒐集齊全時,將會成為系統的縮影,資安處理單位可以根據上述資訊進一步還原系統原貌,連線、檔案結構。

6.1.4 :蒐集系統 logs完 成受測系統環境資訊蒐集後,接著就要針對此部機器的歷史資訊進行蒐集,所謂歷史資 訊指的是本機的記錄檔 (logs) ,藉由取得 log 檔,在電腦鑑識 (computer forensic) 階段時,將可以根據歷史資訊來分析該機器特定時間點發生何事,提供了怎樣的服務,可以更接近於當時系統狀態,若蒐集環境資訊是屬於靜態分析, log 分析則是屬於動態的部份。當然,前提是您在安裝設定您系統時,您已經知道啟動歷史紀錄檔的必要性,在此階段所蒐集的 log 有:

  • Registry
  • Events logs
  • Relevant application logs

auditpol 用來設定系統所使用的策略。
reg query 取得 registry 下 ”Run”, 下列是需要檢查的 registry, 目的用來確認是否有木馬程式常駐在系統中。
HKLM\Software\Microsoft\Windows\Current Version\Run /s 檢視 Most Recently Used(MRU, 最近使用過 ) 檔案。用來辨別是否曾經有使用過特殊的檔案。
HKLM\Software\Microsoft\Windows\Current Version\RunOnce /s 檢視 Most Recently Used(MRU, 最近使用過 ) 檔案。用來辨別是否曾經有使用過特殊的檔案。
HKLM\Software\Microsoft\Windows\Current Version\RunServices /sc 檢視 Most Recently Used(MRU, 最近使用過 ) 檔案。用來辨別是否曾經有使用過特殊的檔案。
HKLM\Software\Microsoft\Windows\Current Version\RunServicesOnce /s 檢視 Most Recently Used(MRU, 最近使用過 ) 檔案。用來辨別是否曾經有使用過特殊的檔案。
HKCU\Software\Microsoft\Windows\Current Version\Explorer\ 追蹤曾經安裝過的程式檔案。用來判別過去使用過程式及是否有遭受木馬程式攻擊。
Streams –s c: 檢查磁碟機中 NTFS 檔案結構

 註:有多部磁碟機時,請自行改變磁碟機代號
接著繼續蒐集事件( Event ) Logs 及其他應用程式記錄檔。 


Logs 存放位置
Event logs APP c:\WINNT\system32\config\AppEvent.Evt
Event logs SEC c:\WINNT\system32\config\SecEvent.Evt
Event logs SYS c:\WINNT\system32\config\SysEvent.Evt
IIS Web Log ( 若有安裝 ) c:\WINNT\system32\logfiles\W3SVC1\
Mail logs( 若有安裝 ) c:\WINNT\system32\logfiles\SMTPSVC1\
DNS logs( 若有安裝 ) c:\WINNT\system32\config\DNSEvent.Evt

註:若您使用其餘服務,請自行尋找該服務程式之記錄檔
在您尋找到該 log 檔後,請利用 md5sum 將其加上 hash 碼,以確保資訊在傳輸時不會遭受竄改,並將這些記錄檔存放置蒐證主機上。 

6.1.5 :網路連線封包內容蒐集本 階段為蒐集網路連線目前的動作,若情況允許的話,您可以利用網路工具進行監控主機 的動作,利用 sniffer (監聽)工具可以監控網路及封包狀況,藉此瞭解傳輸內容,以及預防入侵者再次返回系統進行破壞(當然,設下陷阱也是可以採行的方案,一切原則以組織中的安 全策略為依歸)。 

工具 目的
WinDump/Snort/ 其他監控軟體 網路狀況監控,分析目前網路流量、內容,進一步更可監控入侵者是否返回。


6.2 蒐證步驟自動化上 述所使用之指令,您可以利用批次檔方式撰寫,可以增加蒐證的效率與速度,您也可以 根據不同的蒐證環境建立您不同的蒐證批次檔,如下 Windows Forensic Script ,之後就可以利用這個批次檔還進行自動化地蒐證,並利用『 > 』重導的方式寫入檔案或送至遠端的鑑識主機即可。
如: wfs.bat > 2004-08-11-ip-forensic.txt

6.3 Identification of footprints (辨識足跡)綜合上述,您目前已經蒐集了:

  • 系統基本資訊
  • 執行中程序( processes )
  • 開啟的通訊埠
  • 網路連線狀態
  • 網路分享狀況
  • 使用者狀況
  • 相關的系統記錄檔( logs )

接下來的步驟就是要尋跡,藉由比對及檢查我們所蒐集的資訊,去發現異常之處,底下則檢查的重點:

  • 檢查異常的程序與開啟的 port (如平常不常見的通訊埠,或是常駐程式)
  • 檢查異常的應用程式要求(包含連線、分享資源等)
  • 驗證正在執行的工作( jobs ),可與正常無誤的系統做比對
  • 分析信任關係(比方來自於沒見過的 user 或是遠端)
  • 檢測可疑的使用者帳號
  • 決定系統內修正檔階層(注意修正的紀錄檔)

透 過檢測以上各點,您將會發現不少可疑之處,將其記錄下來,並且與 event logs 及時間記錄(之前所做的檔案時間記錄)相互比對,尋找該時間點有所關連的檔案、連線、使用狀態、與系統的關係。利用時間點切割方式,可以有助於分析事件發 生的起源及影響的範圍,進一步的,可以再利用外部諸如防火牆、網路設備的系統記錄進行分析,經由比對可以尋找出更多關於事件的證據。 


特 別需要補充說明的是,當您分析 IIS 下的紀錄時,請記住 IIS 是使用 UTC 時間,原因在於其設計用來提供在全球 www 服務 ( 即使用 multiple time zone) ,因此,分析時您必須根據時差進行系統時間的比對,當您分析此類 log 時,這是需要注意的事項。最後,您可以藉由檢測系統 Registry 來發現:

  • 軟體安裝的歷程(包含以前)及目前安裝的軟體
  • 判斷系統之安全狀態
  • 判斷常駐、開機時啟動的程式即可能會出現的木馬程式
  • 判斷曾經使用過的( Most Recently Used, MRU )檔案資訊

七、後續處理
藉由入侵蒐證程序,將可以發現系統中異常之處,判斷出問題的發生點以及影響範圍,當完成這些程序後,接下來您必須思考:

  • 是否需要將整個系統經由備份工具進行整體的調查(或直接將硬碟當作證據)。
  • 是否提升處理等級並採取法律行動。
  • 或是恢復系統至正常狀態( reinstall,patch 或是提升系統安全防護程度)。

當 您完成可疑事件判斷後,將會發現入侵者資訊將不是那麼容易能追溯,此時您可以透過 ISP 進行反應,或是至您所處地的網路危機處理中心進行申訴,以台灣來說,台灣網路危機處理暨協調中心 (TWCERT/CC) ,負責國內及國外入侵事件的回報處理,您可以至該中心入侵回報系統中進行通報,該中心技術人員將會義務為您處理( https://www.cert.org.tw/service/ir_form.php ),若能附上您所蒐集到的資訊及處理的過程,想必一定能順利解決資安問題,並且經由對方 ISP 防堵該入侵者再度侵害您的系統。


八、結論
所 謂防範未然,入侵應變處理計畫及程序的建立,對於個人或是組織資訊安全是不可或缺的部份,沒有人能保證自己的系統絕對安全,也因此,在不安全的環境下, 防護體系的存在是為了將危險性降至最低,而事發處理計畫,則是為了將傷害降低之最低,其重要性與防衛體系是同等的。建立一套標準程序及完整蒐集工具,能有 助於第一時間保存容易損害的電腦資訊,確保所蒐證之資訊可以最接近於事發當時情況,也有助於恢復至原始環境。 

所建立的處理程序,亦可 設計為定期檢測計畫,系統安全檢測與備份系統也是同等重要,若能於日常工 作同時,落實回應計畫的實施,想必對於解決資安事件,將不會再是難事,也可以降低因為關鍵性資訊的流失,造成日後證據上不足,影響處理甚至進一步判案上的 困擾,因此,在閱讀本文後,您應開始思考您的資訊安全策略是否有缺失,並立即建立您的入侵應變計畫,別讓惡意的入侵者造成你的損害。

惡意程式分析書籍及譯本