無腦教學 - 人肉蒐索(合法篇)

作者:cisome
在網路上很多情況我們只能得知某個特定的資料,可能是上網的IP也可能是帳號資訊,但如果我發現一個有趣的帳號,例如:『calvinc1』,要如何找出這個人的相關資料呢?你可以簡單透過下列幾種合法管道

1.搜尋引擎(目標的粗略印象)
透 過搜尋引擎可以快速的查找所有這個帳號的相關資訊,你可能在某個學校的網頁中找到這個資訊,也可能在某個論壇中發現他發表的文章,由於訊息量非常雜亂且不 確定到底是不是他,或是其他使用相同帳號的仁兄,因此你除了每個連結都去逛逛外,沒有什麼特別快速辨別的方法,所以你必須在逐一瀏覽後進行簡單的分類後備 用,另外,古云:狡兔有三窟,人的帳號也可能有多個,在這個階段你可以把所有的相關帳號整理後備用。

2.部落格(目標的思考邏輯)
近 年來流行洩露自己的想法,部落格是最早出現做為瞭解某個人生活偶發的事件、想法、做法等思考邏輯的重要來源,除了瀏覽文章內容外,有些人會把相簿內的人物 標上姓名、外號及地點,這個部份也很重要,你可以瞭解他的活動範圍,也可以透過這些朋友社交攻擎或獲取目標朋友對目標的印象做為塑型的依據
*社交攻擊:你可以在IM或社群網站偽冒成目標,然後加入目標的朋友,再藉由目標的朋友探查出更多資訊

3.社群網站(目標的周遭朋友)
有些社群網站也稱作微網誌常存在許多目標資料,因此大致上要做的事與部落格差異不大,你可以透過他的朋友,進一步瞭解這個人,又或許你在社群網站上就可以拿到這個人的生日、電話等基本資料了

4.交易網站(目標買了那些東西)
為什麼要知道他買了那些東西呢?純綷是想探知他的隱私而已,畢竟關於目標的事,能知道的越多越好,或許你也可以假裝是賣家,作為售後服務詢問他產品使用狀態,或是邀請他填問卷拿大獎,當然問卷是設計成奪取個人資訊為目的,大獎就任由他作夢去吧

5.論壇(目標對那些議題較有性趣)
這個地方就很好玩了,部落格或社群網上的朋友可能為現實生活中的真實朋友,形象較確定且礙於個人的形象,可能比較不會在上面發表不當的言論,但論壇就不同囉,自己發掘看看吧,或許在某個風月論壇,你可以發現一些驚人的言論

轉自 http://mycck.blogspot.com/2011/04/blog-post.html

東芝新款2.5吋硬碟會自動銷毀解密金鑰

硬碟一經驗證就只能於單一PC、數位複合機器、POS收銀系統上使用,一旦驗證時發現是與其他裝置連接,硬碟就會刪除解密金鑰,藉此防止內部資料外流。

東芝週三(4/13)宣布將在6月推出世界首款2.5吋保密硬碟,以最新研發的裝置驗證技術,使硬碟連接非指定PC或裝置時,內部資料數據無法被讀取與盜用。

這款保密硬碟共有160GB~640GB等5種不同容量型號,硬碟將對安裝機器使用盤問與回應驗證(challenge and response authentication)功能,一經驗證就只能於單一PC、數位複合機器、POS收銀系統上使用,一旦驗證時發現是與其他裝置連接,硬碟就會刪除解 密金鑰,藉此防止內部資料外流。

這款保密硬碟共有三種資料保護模式以因應不同需求。除了上述模式外,也允許使用者直接從硬碟安裝的機器上執行資料無效化指令,或是設定成一旦切斷電源供應 就自動刪除解密金鑰的保護模式,使用者也能自行設定硬碟中哪些磁區的資料是防護措施啟動後就立刻刪除解密金鑰,哪些磁區是保留金鑰僅以加密狀態保存。

東芝新款保密硬碟採用3.0Gbps SATA資料傳輸介面,平均資料搜尋時間12msec、轉速7200rpm,具16MB緩衝區容量,採用AES 256 bit加密演算法以及第2代東芝Wipe technology功能,避免機器啟動省電模式時誤觸資料防護功能。

轉自 http://www.ithome.com.tw/itadm/article.php?c=67058

鎖定單一對象的惡意程式攻擊有多高超?

作者:趨勢科技Nart Villeneuve (資安威脅高級研究員) 

近來,專門利用熱門軟體漏洞來攻擊單一特定對象的惡意程式攻擊越來越普遍。在頗為知名的「Aurora」惡意程式攻擊 Google 以及至少其他二十多家公司之前,鎖定單一目標的惡意程式攻擊就已經相當普遍,而且不斷入侵政府機關、軍事單位、民間企業、教育機構以及一般民間網路。雖然美國政府與相關網路遭到此類攻擊已不是新聞,但越來越多其他國家的政府和民間機構也面臨了同樣的威脅。
 

 


今年稍早,加拿大南韓法國政府一些敏感的網路都曾發生嚴重的資安事件。最近,歐盟執行委員會 (European Commission) 與歐盟對外事務部 (European External Action Service) 也都遭到入侵。此外,資訊安全廠商 RSAComodo 也都坦承發生安全事件,其中,至少 RSA 的案例看來就是一起鎖定單一目標的惡意程式攻擊。

 


是技術高超還是瞎貓碰上死耗子?

 


這類攻擊經常被形容為技術高超專門針對被害人的 攻擊,不論是哪一種說法,基本上就是表示攻擊得逞。這類事後的描述經常暗指攻擊者完全掌握了受害者的漏洞,在某些情況下,甚至完全符合他們的期望。我們很 難根據那些模糊的公開資訊來判斷這些說法是否屬實。所以,本文無意駁斥這些說法,只是希望強調,攻擊者之所以能夠鎖定單一目標、具備精密的攻擊技巧,全靠 日積月累的知識,而非高超的工具和方法。

 


雖然大多數的網際網路使用者可能一輩子也不會成為駭客鎖定的單一目標,反倒比較容易成為一般威脅的受害者,例如:假防毒軟體 Fake AV網路銀行木馬程式 (Zeus、SpyEye),但專門從事單一目標攻擊的惡意程式樣本數量卻從未減少。不過,實際上,攻擊目標的針對性也有很大的變異。有些惡意攻擊者喜歡製造一些「雜訊」。他們會四處散發惡意文件 (通常會利用某些主題或問題來執行社交工程技巧),但這些文件的收件者 (也就是潛在的目標) 為數頗多。這些當然並未鎖定某位個人或某個機構。但是,這類攻擊很可能是針對特定目標的後續攻擊前兆。

 


歹徒先做好功課

 


最近我從 contagiodump.blogspot.com 所收到的一個樣本就展示了這類攻擊「雜訊」所能達到的偵查效果。此惡意程式樣本是一個專門利用 Microsoft HTML 說明檔漏洞的 .CHM 檔案。該程式就是趨勢科技所偵測到的 CHM_CODEBASE.AG,它會在系統植入 BKDR_SALITY.A 後門程式,接著製造一些網路流量,連上知名 BKDR_SALITY.A 伺服器。

 


此外,該惡意程式還會產生一些網路連線連上 win{BLOCKED}.dyndns.info。該伺服器上的網頁含有一段 JavaScript 程式碼會使用 res:// 通訊協定來列出受害電腦上所安裝的特定軟體,然後將清單傳送至 win{BLOCKED}.dyndns.info。這種藉由 res:// 通訊協定來找出系統安裝軟體的方法,早在 2007 年就由 Billy Rios 所發表。

 


根據 Rios 解釋,Internet Explorer 從 4.0 版開始即內建 res:// 通訊協定,可用於偵測遠端電腦上是否安裝了特定軟體,因此攻擊者只要引誘使用者以瀏覽器連上某個網頁即可。如同 Rios 指出,這項技巧可用於找出特定應用程式,進而找出適用的漏洞攻擊技巧。此外,還可偵測系統是否有某個磁碟機存在。這麼多年之後,這項技巧依然有效。

 


win{BLOCKED}.dyndns.info 網頁上 JavaScript 程式碼可廣泛偵測下列軟體:

  • Microsoft Office (WordOutlook),從 97 至 2010 版
  • Adobe Reader (7.0 至 9.3)
  • Adobe Flash
  • Java
  • 即時通訊程式 (SkypeYahoo! MessengerMSNGoogle TalkQQ)
  • 程式開發工具與美工軟體 (Delphi.NETPhotoshopDreamweaver)

此外,它還會檢查系統上的檔案分享軟體、網頁瀏覽器、遠端系統管理工具、電子郵件用戶端、下載管理員以及媒體播放器。資訊安全軟體也在其偵測之列,包括:市場上主要的防毒軟體與防火牆產品,還有 PGP 加密軟體。此外,該惡意程式還會檢查虛擬機器軟體,並且偵測自己是否在 VMware 虛擬機器內執行。最後,它還會檢查 Microsoft 更新 (KB842773 至 KB981793)。

 


老實說,這個惡意程式樣本有點奇怪,因為它會在入侵使用者的電腦之後才執行上述檢查。如果是用來偵查,不是應該在攻擊之前就 執行嗎?一種可能的解釋是,攻擊者刻意送出一些攻擊「雜訊」,希望系統管理員在清除這些雜訊之後就忘了這件事。但此時攻擊者已經蒐集到企業的電腦配備資 料。因此,就知道該公司偏好的防毒軟體、特定軟體版本以及其他可用資訊,接下來就很容易針對該目標發動進一步攻擊。當攻擊者準備就緒時,就會發動一次攻擊 來竊取想要的資料。

 


此時,攻擊者已經知道某個目標有哪些軟體漏洞可以利用。想當然爾,這次攻擊又會被形容為技術高超專門針對被害人的攻擊,然而它之所以能夠得逞,完全是因為先前已掌握到必要的資料。

 


@原文來源:How Sophisticated are Targeted Malware Attacks?



@延伸閱讀




老闆~“恭喜您入選2010百大企業領袖個資竊取者來釣魚


轉自 http://domynews.blog.ithome.com.tw/post/1252/96386 

DEFT 6.1

DEFT 6.1 is the last planned release of DEFT 6.
From June 2011, We will start working on version 7. It will feature great improvements on both the architectural structure and the included applications.
Release notes:

- Start faster by 15% over the previous version
- Optimization initrd
- RegTime.py
- Recovery.py

Fixed:
Fixed problem of large pcap file uploads in Xplico
Revision of all DEFT Extra’s tools to comply with their License.
DEFT 6 can boot from USB (tnks to Valerio Leomporra for the fix)


轉自 http://www.deftlinux.net/2011/04/15/deft-linux-6-1-ready-for-download/

Digital Forensics Search

snap033
使用google自訂搜尋建立的數位鑑識搜尋範圍

連結:Google Digital Forensics Search

以下列出關於搜尋範圍所使用之網站:

Blogs
A Fistful of Dongles  http://ericjhuber.blogspot.com/
A Geek Raised by Wolves  http://jessekornblum.livejournal.com/
An Eye on Forensics  http://eyeonforensics.blogspot.com/
appointments-uk  http://appointments-uk.blogspot.com/
Blog Matt Churchill  http://mattchurchill.net/blog/
cci  http://cci.cocolog-nifty.com/blog/
Codeslack  http://codeslack.blogspot.com/
Computer Forensic Blog  http://computer.forensikblog.de/en/
Computer Forensic Source  http://forensicsource.blogspot.com/
Computer Forensics and IR - What's New  http://newinforensics.blogspot.com/
Computer Forensics Forums - Recent Blogs Posts - Blogs  http://www.computer-forensics.co.uk/computer-forensics-forums/blog.php?s=88da0ba9705c1f3b0a6e0ff5168ac75b
Computer Forensics, Malware Analysis & Digital Investigations  http://www.forensickb.com/
Computer Forensics-E-Discovery Tips-Tricks and Information  http://cfed-ttf.blogspot.com/
ComputerForensicSource.com  http://www.computerforensicsource.com/
contagio  http://contagiodump.blogspot.com/
CSITech - Computer Forensics  http://nickfurneaux.blogspot.com/
CYB3RCRIM3  http://cyb3rcrim3.blogspot.com/
Cyber Crime 101  http://www.cybercrime101.com/
CyberSpeak's Podcast  http://cyberspeak.libsyn.com/
Dancho Danchev's Blog - Mind Streams of Information Security Knowledge  http://ddanchev.blogspot.com/
Derek Newton « Information Security Insights http://dereknewton.com/
digfor  http://digfor.blogspot.com/
Didier Stevens  http://blog.didierstevens.com/
Digital Detective  http://blog.digital-detective.co.uk/
Digital Forensic Source  http://www.digitalforensicsource.com/
Digital Forensics Blog  http://digiforensics.blogspot.com/
Digital Forensics Solutions  http://dfsforensics.blogspot.com/
EDD and Forensics  http://eddandforensics.blogspot.com/
Ex Forensis  http://exforensis.blogspot.com/
Forensic 4cast  http://www.forensic4cast.com/
forensic . seccure . net  http://seccure.blogspot.com/
Forensic Artifacts  http://forensicartifacts.com/
Forensic Computing — Digital forensics from the view of a computer scientist  http://www.forensicblog.org/
Forensic Incident Response  http://forensicir.blogspot.com/
Forensic Photoshop  http://forensicphotoshop.blogspot.com/
Forensics from the sausage factory  http://forensicsfromthesausagefactory.blogspot.com/
ForensicZone  http://forensiczone.blogspot.com/
Geoff Black's Forensic Gremlins - Everything that gives you fits in Digital Forensics and E-Discovery  http://www.geoffblack.com/
Hacking Exposed Computer Forensics blog  http://hackingexposedcomputerforensicsblog.blogspot.com/
integriography A Journal of Broken Locks, Ethics, and Computer Forensics  http://integriography.wordpress.com/
Internet Storm Center Diary  http://isc.sans.edu/
IR and forensic talk  http://blog.kiddaland.net/
JL's stuff  http://gleeda.blogspot.com/
Journey into Incident Response  http://journeyintoir.blogspot.com/
Macaroni Forensics  http://macaroniforensics.blogspot.com/
Matthieu Suiche’s blog ! - Happiness only real when shared.  http://www.msuiche.net/
McGrew Security Blog  http://www.mcgrewsecurity.com/
Mobile Device Forensics  http://mobileforensics.wordpress.com/
Mobile Forensics Inc Blogger  http://blog.mobileforensicsinc.com/
Mobile Telephone Evidence  http://trewmte.blogspot.com/
M-unition  http://blog.mandiant.com/
OS X Forensics Blog  http://osxforensics.wordpress.com/
Push the Red Button  http://moyix.blogspot.com/
RAM Slack – Random Thoughts from a Computer Forensic Examiner  http://ramslack.wordpress.com/
Reversing Malware  http://internetopenurla.blogspot.com/
Security Ripcord  http://www.cutawaysecurity.com/blog/
TaoSecurity  http://taosecurity.blogspot.com/
The Digital Standard  http://thedigitalstandard.blogspot.com/
trustedsignal -- blog  http://trustedsignal.blogspot.com/
volatility Advanced Memory Forensics  http://volatility.tumblr.com/
Windows Forensic Environment  http://winfe.wordpress.com/
Windows Incident Response  http://windowsir.blogspot.com/

Websites
Brian Carrier Digital Investigation - Forensics and Evidence Research  http://www.digital-evidence.org/
CERIAS Reports and Papers Archive  https://www.cerias.purdue.edu/apps/reports_and_papers/
Cert  http://www.cert.org/
Computer Crime & Intellectual Property Section US DOJ  http://www.justice.gov/criminal/cybercrime/
Computer Forensics Miscellany  http://computerforensics.parsonage.co.uk/
Craig Gall Helping Lawyers Master Technology  http://www.craigball.com/
DFI News  http://www.dfinews.com/
DFRWS (Digital Forensics Research Conference)  http://www.dfrws.org/
Digital Forensics Magazine supporting the professional computer security industry  http://www.digitalforensicsmagazine.com/
ENSIA CERT  http://www.enisa.europa.eu/act/cert/
E-Evidence Information Center - Home  http://www.e-evidence.info/
FIRST - Improving security together  http://www.first.org/
Forensic Focus  www.forensicfocus.com/
Forensic Magazine Issues  http://www.forensicmag.com/current-issue/
Forensics Wiki  http://www.forensicswiki.org/
Inside the registry  http://www.insidetheregistry.com/regdatabase/
International Journal of Digital Evidence on Utica College  http://www.utica.edu/academic/institutes/ecii/ijde/
Into The Boxes  http://intotheboxes.wordpress.com/
Lenny Zeltser  http://zeltser.com/
log2timeline  http://log2timeline.net/
Mobile Forensics Central  http://www.mobileforensicscentral.com/
NIST Computer Security Division Special Publications  http://csrc.nist.gov/publications/nistpubs/
Open Source Digital Forensics  http://www2.opensourceforensics.org/
SANs Computer Forensics  http://computer-forensics.sans.org/
SANS InfoSec Reading Room - Forensics  http://www.sans.org/reading_room/whitepapers/forensics/
SANS InfoSec Reading Room - Incident Handling  http://www.sans.org/reading_room/whitepapers/incident/
SANS InfoSec Reading Room - Malicious Code  http://www.sans.org/reading_room/whitepapers/malicious/
SANS InfoSec Reading Room - Steganography  http://www.sans.org/reading_room/whitepapers/stenganography/
Small Scale Digital Device Forensics Journal  http://www.ssddfj.org/
SWGDE  http://www.swgde.org/
Welcome AppleExaminer  http://www.appleexaminer.com/


Webpages
AuSCERT Forming an Incident Response Team  http://www.auscert.org.au/render.html?it=2252&cid=1938

Cybercrime.gov searching and seizing manual  http://www.cybercrime.gov/ssmanual/index.html
Daubert v. Merrell Dow Pharmaceuticals  http://www.law.cornell.edu/supct/html/92-102.ZS.html
Default Processes in Windows 2000  http://support.microsoft.com/kb/263201
Digital Evidence: Standards and Principles  http://www2.fbi.gov/hq/lab/fsc/backissu/april2000/swgde.htm
FileSignatures Table  http://www.garykessler.net/library/file_sigs.html
Forensically interesting spots in the Windows 7, Vista and XP file system and registry (and anti-forensics)  http://www.irongeek.com/i.php?page=security/windows-forensics-registry-and-file-system-spots
Microsoft Windows XP - Default settings for services  http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/sys_srv_default_settings.mspx?mfr=true
RFC 3227 - Guidelines for Evidence Collection and Archiving  http://www.rfc-archive.org/getrfc.php?rfc=3227
SEI Handbook for Incident Response Teams  http://www.sei.cmu.edu/library/abstracts/reports/03hb002.cfm
Windows 7 Default Services and Suggested Startup Mode  http://www.windowsnetworking.com/articles_tutorials/Windows-7-Default-Services-Suggested-Startup-Mode.html


Groups
Yahoo Win4n6 Group  http://tech.groups.yahoo.com/group/win4n6/

Yahoo Linux Forensics Group  http://tech.groups.yahoo.com/group/linux_forensics/



轉自 http://journeyintoir.blogspot.com/2011/04/introducing-digital-forensics-search.html

Digital Corpora

DigitalCorpora.org is a website of digital corpora for use in computer forensics education research. All of the disk images, memory dumps, and network packet captures available on this website are freely available and may be used without prior authorization or IRB approval. We also have available a research corpus of real data acquired from around the world. Use of that dataset is possible under special arrangement.
From here you can view the available:


Many of the corpora are distributed in RAW, EnCase E01, and Advanced Forensic Format (AFF) formats. We also make available a Digital Forensics XML file for many of the disk images that describes the files contained within each volume. You can download tools for working with AFF and XFXML files from our companion website, http://afflib.org/.


轉自 Digital Corpora

「網路攻防戰」Blog教學資料

2011/4月開始,網路攻防戰會於每週四晚上9:00~11:30 固定開播資安課程,至於收播時間則不一定要看當天的課程檔案時間多長。

日期 主題
4/07 (四) 21:00~24:00 網路攻防戰之個資防護篇
4/14 (四) 21:00~24:00 網路攻防戰之郵件社交工程篇
4/21 (四) 21:00~24:00 網路攻防戰之上網篇
4/28 (四) 21:00~24:00 網路攻防戰之木馬入侵
你也可以直接在這邊收看 OpenBlue的TV在 Justin.tv 上的廣播實況
你可以透過:網路攻防戰FaceBook的粉絲團 來回報網路直播的意見。
 

註:
這些課程都是以前上課的錄影檔,主要是測試直播平台的特性與穩定度。
課程內容都是舊資料、舊案例、舊的DEMO,目前還沒放上去近期的DEMO資料,請不要挑剔播報內容囉! 


轉自 網路攻防戰

 

Malware Analyser

惡意程式分析軟體



EnScript to parse classic (.evt) event log entries in unallocated

This EnScript was inspired by a blog reader who emailed me to ask for a solution to parse some windows event log entries that were found in unallocated.

There are a couple ways I could think of to solve this issue. The easiest was to just build a parser to read a single event log record that was found in unallocated and display the data in the single record. The problem with that solution is it does not scale well and it will become very tedious when there are numerous records found in unallocated and requires a person to parse each one individually.

The final solution was an EnScript to perform a search for the magic value of "LfLe" which appears in every valid event log record. Once a hit is found, then the record is parsed and exported out into a separate .EVT file.  Every hit is exported out into the same .evt file and in the end, you will have a single "eventlog.evt" that contains all the valid windows event log entries that were found in unallocated. You can then use your favorite 3rd party event log viewer (Event log explorer, etc..) or the native Windows event viewer (eventvwr.exe) to read all the records that were found in unallocated.

Each event log entry maintains a event record number. When searching in unallocated, it is possible that you could find two records with the same record number, therefore this EnScript renumbers all the records found in unallocated, but leaves the remaining data intact and as exactly as found in unallocated. Each record is assigned a new record number and then exported into the new .Evt file. A new header and footer is built based on the exported data so it can then be read with all the common event log viewing tools.

The exported records viewed in the EVENTVWR app in Windows 7:




The exported records viewed in the Event Log Explorer app in Windows 7:



Prerequisites:
None - This EnScript performs a search automatically. There is no need to search, select (blue check) or preprocess anything. The EnScript will search every unallocated object found, so if you have multiple drives loaded into the case, each one will be searched automatically. The EnScript automatically bookmarks all the "LfLe" search hits (valid and invalid). Some basic error checking is done to validate the record to attempt to ensure it is a complete and valid record before it is exported into the new .EVT file. The new "eventlog.evt" file is created in the default export folder for the active case.

Limitations:
This *only* searches and rebuilds classic Windows NT/2000/XP event (.evt) records. It does not yet support the newer .EVTX (xml) records that are used in Vista, 2008 & 7.

Download here


轉自 forensickb

兩個Oracle資料庫鑑識工具 - DDLDUMP & Data Block Examiner

近期,幾個主要的安全事件,如McAfee.com,MySql.com和Sun.com由於存在SQL注入漏洞被黑,導致人們將責任由SQL注入這個被 認為已經在逐年下降的漏洞推到了資料庫安全上。針對SQL注入攻擊比較重要的是知道問題出在了哪裡?這就是資料庫攻擊取證之所以重要的原因,有兩個比較好 的工具可以幫你完成資料庫取證任務 

DDLDUMP & Data Block Examiner
DDLDUMP: A Data Definition Language or Data Description Language (DDL) is a computer language for defining data structures. DDLDUMP is a free tool to dump DDL statements from Oracle transaction logs (redologs) in XML. It parses an Oracle redo log (transaction file ) and dumps all DDL statements, such as GRANT, CREATE, ALTER, DROP, REVOKE, etc, in XML.
工具下載:http://www.v3rity.com/ddldump.php


Data Block Examiner for Oracle: It is a tool that can be used in an Oracle forensics investigation of a suspected breach.
工具下載:http://www.v3rity.com/v3ritydbe.php


轉自 http://www.pulog.org/tools/1972/Oracle-Forensic/

The End of Digital Forensics?

by Craig Ball

When Microsoft introduced its Encrypting File System (EFS) in Windows 2000, the Cassandras of computer forensics peppered the listserves with predictions that the days of digital forensics were numbered. Ten years on and hundreds of systems acquired, I’ve yet to handle a case stymied by encryption—and 90% of my acquisitions were corporate machines, many with TPMs and fingerprint readers. Voluntary encryption turned out to be no encryption at all.

The next sky falling threats to forensics were privacy tools and features. “Surely,” our Chicken Littles clucked, “everyone will run free tools that routinely wipe unallocated clusters and securely delete data!” Turns out, they only run the antiforensic tools right before the examiner arrives, and most such tools do a lousy job covering their tracks. Instead, we’ve come to see much more revealing data and metadata created and retained by operating systems. The Windows Registry and all those logs and .dat files are like birthday presents from Bill Gates.

Finally, there are the stormy forecasts about the Cloud. Absent dominion over physical storage media, digital forensics is indeed different. We need credentials to acquire data in the Cloud, and deletion tends to mean really gone. But the silver lining is that the portable devices used to access Cloud data tend to store so much information that they’re proving a cornucopia of case-making information. Are handhelds trickier to acquire? Sure. Are they less revealing? Not on your life!

But lately, one acorn that has fallen on my head and caused me to look warily aloft is the quantum leap in hard drive capacity. I suspect I’ve acquired more aggregate data in the last year than in all of the previous nine years put together. Not more media, mind you, more data. At least more nulls, but we’ve got to read those too, right?

Four 2TB hard drives proved barely enough capacity to hold the working copies of data acquired last weekend, even after I compressed some of it. It took two days to consolidate the various target media onto a pair of 2TB drives and thirteen hours to clone and hash each drive using the very latest drive-to-drive tools. Kudos to Voom Technologies, Inc. (voomtech.com) for its terrific Hardcopy 3P hard drive data capture unit. At 5+GB per minute, it’s a data moving marvel. I shudder to think how long the imaging and cloning would have taken using the usual software imaging tools over USB 2.0, but I’m certain I’d still be freezing my ass off in a server room in Louisiana but for Hardcopy.

The upside of a hardware imager is that it’s incredibly fast. The downside is that you’ve got to grab the entire drive. So you’re offsite faster, but the data volume to process back in the lab is huge now that we’re encountering terabyte drives in the field. Seek to acquire anything less than the entire drive (as is common in e-discovery collection efforts), and you’re relegated to the interface speed--typically USB 2.0 for an external hard drive unless you crack the enclosure and get the drive write blocked and on bus, USB 3.0 or eSATA. Note to self: Add glue to field kit for when plastic tabs break off while opening shoddy enclosures.

At USB 2.0 transfer speeds, multi-terabyte acquisitions are measured in days, not hours. I’m a good lawyer, but I haven’t found a loophole in the laws of physics that govern transfer speeds. Moving lots of data takes too long.

Of course, terabyte data volumes also slow search, indexing, volume refinement, file carving and other key tasks. Most of the volume is nulls, but you have to read those nulls at least once to identify and ignore them. If you acquire drives raw and fast, you’ll invest time back at the lab to compress the data. It all ratchets up the cost of digital forensics, tending to make it less accessible in civil cases and adding to budget burdens of law enforcement.

If you’re thinking, “more hours mean more money to me,” beware. That’s golden goose money. Like the now-struggling e-discovery service providers who were profitable only while gouging customers, profiting near-term from what destroys your business long term is not sustainable. In the end, the commercial viability of computer forensics flows from its broad acceptance and use, fostered by reducing its cost.

We need faster ways to leave those nulls behind, or those predicting the end of forensics may end up being right…finally.


轉自 http://www.forensicfocus.com/craig-ball

Installing pescanner.py on Windows

I don't often work with Python scripts, but I recently had an instance where, due to advice from a trusted source, I needed to run pescanner.py, mentioned in the Malware Analyst's Cookbook. In short, what I wanted to do was take look at a couple of suspicious executable files, having already run several AV scanners to identify and locate those files. Based on what I learned in setting this up, I wanted to share the steps I used to get this script running on Windows XP SP3.

Pescanner.py is a powerful tool that takes a look into a Windows portable executable (PE) file, and reports on "suspicious" elements of the file, if found, based on heuristics identified within the "Pimp my PE" paper. Pescanner.py can also incorporate YARA functionality so that PEiD and ClamAV signatures can be used, as well. This can be extremely valuable to an analyst, as we're all aware how AV alone often times will not detect malware. I've seen cases where malware was detected by the installed AV, only to have the timeline clearly show that at some point further down the road, another file with the same name was dumped on the system, but NOT detected by the same AV.

Install Python: I opted for ActiveState's ActivePython, but you can also get the current distro for Windows from Python.org.

Install Pefile: Do NOT use the pypm utility that ships with ActivePython to install the pefile module; instead go directly to the source and get the latest version. Download the archive and copy the pefile.py and peutils.py files into the Lib directory for your Python installation.

Download pescanner.py: Go here (this is rev. 18, get the most current one available) and get the file; the easiest thing to do is click on "View raw file" and save it where you want it to go. I had some issues getting the script running on Windows 2003, and it came down to the indentations...if you program Python, you may know what I mean. I had selected and copied the code in my browser, and pasted it into a Notepad window; when I saved the code using "View raw file" from the Google Code site, things worked. On my XP system, I pasted the code into an UltraEdit window and saved it.

Installing python-magic: According to this source, you'll need a couple of files to get python-magic installed on your system. First, go get the GnuWin32 file utility, and download the latest archive. Copy magic1.dll to your system32 directory and put the magic file in the same directory as pescanner.py. You can get regex2.dll from the latest regex archive (copy the file to your system32 dir), and zlib1.dll from the latest zlib archive.

For this one, I contacted MHL (one of the Cookbook authors...) and he sent me the below instructions for installing python-magic on Windows:

Assuming you already have Python from python.org or the ActivePython version...
1) Install setuptools
2) Get python-magic
* python setup.py build
* python setup.py install
3) Get the GnuWin32's File utility
* Place magic1.dll from the Binaries package into your system32 dir
* Place "magic" from the Binaries package into your system32 dir (or anywhere else, just as long as you remember the path)
* Place zlib1.dll and regex2.dll from the Dependencies package into your system32 dir
4) Test your installation
C:\> python
>>> import magic
>>> test = magic.Magic(magic_file='C:\path\to\your\magic')
>>> print test.from_buffer("test") ASCII text, with no line terminators

For more information, go here and here.

Again, many thanks to MHL for providing those instructions.

Another lesson here is to not stick with one tool or one set of tools, but instead be open to finding and using a tool or technique that works, and incorporating it into your toolkit. While Perl has the Parse::Win32Registry module and Python does not appear to have something comparable, Python does have the pefile module (on which pescanner.py was built) and Perl does not have (to the best of my knowledge) a comparable module. So rather than fitting the case to the tool, it's often a much better idea (albeit not easier) to find a tool or technique that will help you with your case.


轉自 http://windowsir.blogspot.com/2010/12/installing-pescannerpy-on-windows.html

SSD資料無法100%銷毀

美國加州大學聖地牙哥分校一份研究,揭露出SSD固態硬碟廠商沒有告訴你的真相,儲存在SSD中的資料其實難以完全刪除,存在著資料外洩的風險,而且,不只SSD,大家常用的USB隨身碟、手機、相機等有使用快閃記憶體儲存的裝置,其實都潛藏同樣的風險
撰文⊙王宏仁、陳思翰





SSD廠商沒有告訴你的真相:SSD資料難以完全刪除(1)
SSD廠商沒有告訴你的真相:SSD資料難以完全刪除(2)


加州大學聖地牙哥分校一份研究揭露了SSD資料刪除不完全的安全問題,連美國國防部刪除資料的演算法,也不一定能有效刪除SSD硬碟中的特定文件

SSD廠商沒有告訴你的真相:SSD資料難以完全刪除

今年2月,聖地牙哥加州大學有位博士生Michael Wei,在儲存技術國際研討會(Fast 11)上發表了一份震驚全場的研究報告,他揭露了一個長期存在卻很少有人注意的SSD資料遺漏的安全問題,他說:「想要徹底銷毀SSD固態硬碟上的資料,其實不容易。沒有一種硬碟軟體刪除技術,可以有效刪除SSD硬碟中的特定文件。」


Michael Wei是加州大學聖地牙哥分校專門研究SSD硬碟的非揮發系統實驗室(Non-Volatile Systems Laboratory,NVSL)的成員,NVSL研究團隊發現,使用美國空軍刪除資料的方法,來清除SSD上的一個1GB檔案,仍舊有5.8~7.3% 的資料可以回復,若是USB隨身碟,甚至最高可以回復63.5%的資料。


NVSL研究團隊測試了13種各國官方採用的資料銷燬方法,包括刪除軟體常見的Gutmann模式、英國的British HMG IS5模式、德國的German VSITR模式、俄羅斯的German VSITR模式等,甚是美國國防部US DoD 5220.22-M。他們在SSD硬碟和USB隨身碟上寫入一個1GB大小的檔案,利用這13種方法刪除後,仍然可以回復數十MB甚至上百MB的資料,沒有一種方法能有效地徹底抹除這個檔案。

 
臺灣科技大學電子系助理教授吳晉賢表示,資料難以刪除的關鍵是,「SSD儲存資料的方式和傳統硬碟截然不同。」



SSD快閃記憶體儲存方式有三項限制
吳晉賢解釋,因為SSD使用快閃記憶體來儲存資料,電路特性會產生三個傳統硬碟所沒有的限制,這也導致SSD和硬碟儲存方式的差異


首先,資料不能重複寫入。在快閃記憶體上最小的儲存空間稱為一個Cell,一個Cell可以儲存一個位元的資訊,可以是1或0,這就是所謂的SLC儲存方式(Single Bit per Cell)。若要寫入新資料,必須充電來清除這個Cell的電位資訊以後,才可以重新寫入。不像硬碟磁盤上記錄資料的磁性可以反覆改變,也就說可反覆將資料寫入磁盤上同一個位置,達到重複寫入。另一種快閃記憶體技術MLC(Multi-level Cell),也是一樣在一個Cell上用不同電位來儲存2個位元的資訊,同樣也有不能重複寫入的特性。這是硬碟和SSD儲存方式第一個不同點。


第二,快閃記憶體刪除資料的方法也和硬碟磁盤不同,必須採取「逐一寫入整批抹除」的作法。
SSD寫入資料時最小的單位是Page,一個Page依SSD採用的快閃記憶體而有不同,可以是2,048、4,096或8,192Bit等,每次可以寫入1個Page的資料。但是,抹除資料時無法一次抹除1個Page的資料,而必須一整批Page同時抹除,這個整批抹除的單位就是Block,1個 Block通常是64或128個Page,也可以更多如128或256。


基本原則是,寫入時每次1個Page,抹除時則要每次1個Block。因為每次最少要抹除1個Block,即使這個Block只有寫入了幾個Page的資料,SSD還是會一次抹除這個Block中所有Page的資料。因為必須採取整批寫入的方式,所以SSD的抹除速度會比讀取速度慢很多。

 
若是要更新某一個Page資料的作法也相當繁複,必須先將整個Block中記錄的資訊取出,存放到快取記憶體中,再更新這段快取記憶體中的資料,最後再逐一將Page資料寫回這個Block中。


最後一個特性是快閃記憶體寫入資料有次數限制,例如有的快閃記憶體的電路特性可以寫入10萬次。當一個區域寫入次數達到這個限制以後,就無法再寫入,成為壞死區域(Bad Sector)。為了延長SSD的使用壽命,就必須避免寫入集中在少數區域,讓寫入資料平均分配到每一個Cell上。


用FTL中間層解決快閃記憶體的儲存限制
因為快閃記憶體這三個特性,所以,SSD採取了一種和傳統硬碟截然不同的存取架構,在檔案系統和實體資料儲存層之間,增加一個FTL層(Flash Translation Layer),FTL層會負責提供檔案系統和實體資料層之間的對應,讓作業系統仍舊看到和硬碟一樣的檔案系統。但是在實際儲存資料時,FTL層會將資料分散到不同的位置儲存,避免寫入動作集中在少數區域。


雖然SSD底層的實際寫入機制和硬碟不同,但FTL會模擬出像硬碟一樣的檔案系統,讓作業系統用同樣控制硬碟的指令,來控制SSD的寫入。


因為FTL層會移動資料實際存放的位置,這會造成資料覆寫的效果和傳統硬碟不同。
在傳統硬碟上,作業系統可以知道資料實際寫入的位置,若要覆蓋原來的資料,就在相同位置寫入資料。但是在SSD中,作業系統以為自己寫入相同位置的資料,但FTL層可能將第二次覆寫的資料,儲存到SSD中其他位置,而沒有蓋掉原來的資料,導致在SSD中無法透過資料覆寫來刪除原有資料。


SSD與傳統硬碟大不
SSD存取資料的架構和傳統硬碟截然不同。SSD在檔案系統和實體資料儲存層之間,增加一個FTL層(Flash Translation Layer),FTL層會負責提供檔案系統和實體資料層之間的對應,讓作業系統仍舊看到和硬碟一樣的檔案系統,但是在實際儲存資料時,FTL層會將資料分散到不同的位置儲存,避免寫入動作集中在少數區域。


因為FTL層會移動資料實際存放的位置,這會造成資料覆寫的效果和傳統硬碟不同。作業系統以為自己寫入相同位置的資料,但FTL層可能將第二次覆寫的資料,儲存到SSD中其他位置,原來資料仍舊存在,難以透過資料覆寫來摧毀SSD中的舊資料。


寫入方法大不同
SSD寫入資料時,FTL層為了平均使用每一個內部位置,會移動實際儲存資料的位置,作業系統角度看到的位置,不一定是實際存放資料的位置和順序。但是,傳統硬碟沒有FTL,作業系統和硬碟實際位置相符。

覆寫方法大不同
傳統硬碟覆寫資料時會直接蓋掉舊有資料,但是在SSD中,FTL層會標記舊有位置的資料無效,再將要覆寫的資料儲存到另一個位置,無法透過覆寫來刪除資料。




還有另一個造成資料不易刪除的原因,是廠商特別為SSD設計的資料抹寫方式TRIM機制。因為SSD必須整批寫入的特性,導致抹寫速度遠比讀取速度慢。減少實際寫入的次數,除了能延長使用壽命也可以提高SSD的存取效能,所以,廠商讓SSD的TFL層先對需要刪除的資料加註記號,而不實際進行刪除,等到這個Block中多數Page的資料都需要刪除時,才真正實際抹除這個Block。


例如SSD要刪除大量小檔案時,若每刪除一個檔案就要抹除一次,一個Block可能需要抹寫數十次。改用TRIM的作法以後,可以逐次將需要刪除的檔案標記下來,等到系統有閒暇時再一次抹除。這樣的作法,更讓資料在SSD中實際存活的時間更久,甚至是,作業系統以為資料已經刪除,但實情剛好相反。


SSD為效能和使用壽命而降低抹除可靠性
因為SSD有寫入次數的壽命限制,寫入速度也遠遠慢於讀取速度,廠商特別為SSD設計了一種不同於傳統硬碟的資料抹寫方式,稱為TRIM機制。當作業系統要刪除一筆資料時,SSD的TFL層先對需要刪除的資料加註記號,但沒有實際進行刪除,等到儲存資料所處的Block區域有多數資料需要刪除時,才會真正實際抹除這個Block,利用TRIM減少耗時的實際抹除動作,也因此,在實際抹除之前,舊資料一直存在,遺漏風險就會比傳統硬碟更高。

傳統硬碟
傳統硬碟沒有TRIM機制,作業系統刪除資料時,就會同時刪除在硬碟實際位置上的資料,資料遺漏的風險比SSD的風險低。



SSD硬碟
SSD的TRIM機制會先透過標記方式註明待刪除的資料無效,讓作業系統誤以為刪除完成,其實資料還在,就算多次寫入,也不一定能覆蓋。





FTL是黑盒子,隱藏資料遺漏的隱憂
吳晉賢表示,FTL層就像是一個黑盒子,將作業系統的檔案系統和實際寫入動作隔離,作業系統不知道盒子裡會發生了什麼事情。



加州大學聖地牙哥分校NVSL研究團隊正是打開這個黑盒子以後,發現了SSD會有資料無法刪除的隱憂。


NVSL研究團隊購買了12款常見的SSD,容量從32GB到120GB不等,包括使用MLC和SLC快閃記憶體的產品。他們自製了一個快閃記憶體讀取裝置,來避開FTL層的控制,直接取得實際儲存在快閃記憶體中的資訊,再測試各種不同的資料刪除情境和作法,來比較FTL層的影響,找出SSD資料刪除的問題。

 
低階指令全面抹除有效,但SSD不一定支援
NVSL的研究發現,如果使用低階磁碟控制指令ATA Command中的刪除指令,針對整顆SSD資料進行全面抹除,通常可以有效抹除資料,但是,不是每一款SSD都能正確支援這種指令,在NVSL的測試中也有一款SSD執行ATA刪除指令後,SSD只是註記刪除位置,而沒有實際抹除。


部分檔案刪除難度高,國防等級刪除法也沒輒
有時不一定能採取全面抹除的作法,NVSL也考慮了另一種情況,在經常使用的SSD中,只刪除特定敏感性的文件。NVSL發現,若將上千個檔案寫入SSD 後,有些檔案可能被複製了16份,散布在SSD中不同位置,想要單獨刪除其中特定檔案的難度相當高。NVSL測試了13種各國官方認可的資料刪除方法,都無法徹底刪除測試檔案的資料,在SSD中仍舊有部分測試檔案的資料可以回復。

吳晉賢表示,一般電子科系的大學生,就有能力使用便宜的8051單晶片做出可以直接存取快閃記憶體資料的工具,成本也不高,要取出SSD中尚未抹除的資料並不難。

不過,他認為,就算取出資料也不一定能夠完全重建出原始的檔案內容,只有像圖檔這種會連續儲存,即使部分損毀也能呈現的資料格式,比較有機會復原,或者是能取得文件標頭資訊才有可能重建出可用的內容。簡而言之,資料就算取回,能有效回復的機會也不大,但並不是完全沒有可能。



軟體抹除與實體摧毀孰勝?專家看法分歧
若SSD不需要繼續使用,SSD廠商OCZ(飢餓鯊)亞太營運中心產品經理程威笛建議,實體摧毀也是一個可行的作法。他表示,快閃記憶體晶片其實非常脆弱,只要有些許破損就無法使用。不過,同樣也是生產SSD的廠商宜鼎國際研發處協理吳錫熙則有不同的看法,他認為硬體破壞仍有資料遺漏風險,透過軟體徹底抹除SSD內容的安全性更佳。


但是,全面抹除的作法非常耗時,程威笛表示,他曾利用HD Tune軟體中的Gutmann演算法來抹除一顆120GB的SSD,花了8小時才處理完畢。有些SSD廠商的抹除工具也只能支援自家產品,而不能抹除所有的SSD產品。


吳晉賢倒是提出了另一個可以徹底保護SSD資料的作法,他建議,最保險又方便的作法是加密,將資料加密後再放入SSD,未來只要摧毀解密金鑰,資料就算被回復也無法解讀。不過,資料加密會影響存取效能,或是耗用處理器運算能力。


不只是SSD有風險,NVSL團隊提醒,凡是採用快閃記憶體的產品,包括了SSD,USB隨身碟、相機的SD記憶卡、手機、iPad、iPhone等產品,都有同樣的資料遺漏風險。


這些生活中常見的3C產品,保存了各種個人資料、私密照片、簡訊、電話等,倘若儲存的資料會有刪除不完全的問題,有心人士就有可能利用檔案回復技術來偷取資料,甚至是借用朋友的USB隨身碟暫存資料,也有可能會導致外洩問題。越來越多商用刀鋒伺服器和筆記型電腦開始採用SSD,這也意味著,企業重要的內部資料可能會因這些SSD遺失而外洩。


雖然,SSD資料刪除的威脅和解決方法的成效,各方意見仍有分歧,這也反映出SSD使用的複雜性,原本企業採用SSD的目的是為了提高讀取效率,但也不能忽略可能伴隨的資料遺漏風險。企業採購和運用SSD時,必須先了解SSD潛藏的問題,才能掌握可能風險,更縝密地評估需求,找出適合企業的運用之道。



加密才能徹底避免外洩風險

臺灣科技大學電子系助理教授 吳晉賢
臺灣科技大學電子系助理教授吳晉賢認為,廠商為了提高SSD硬碟效率和壽命,會透過FTL層來分散和延後實際資料寫入的動作,這會讓SSD中的舊資料不容易徹底抹除。



雖然不同廠牌SSD在FTL層的運作方式略有差異,廠商也會各自發展出不同的分散或抹除演算法。導致FTL就像是一個黑盒子,作業系統無法真正曉得盒子裡發生的事情,也無法運用現有硬碟軟體技術徹底有效抹除SSD的資料。


一般電子科系的大學生,很容易就能取得快閃記憶體存取資料的方法,也有能力利用便宜的8051單晶片做出直接存取快閃記憶體資料的工具,成本也不高,要取出SSD中尚未抹除的資料並不難。

不過,他認為,就算能夠取得快閃記憶體中資料,也不一定能夠完全重建出原始的檔案內容。除非像是圖檔格式的資料,儲存到SSD時會連續寫入,圖檔資料容易集中,就有機會回復,有些圖片壓縮格式即使部分損毀也能呈現畫面內容,就容易發生資料外洩的情況。或者是取得文件標頭資訊才有可能重建出可用的內容。簡而言之,就算有心人士取得SSD中的舊資料,能有效回復的機會也不大,但並非完全不可能。

吳晉賢認為,硬體破壞是一個可以採行的方法,不過傳統硬碟可用的消磁方式對SSD無效。因為快閃記憶體的運作方式不是磁性作用,所以,無法透過消磁來破壞資料。


吳晉賢倒是提出了一個可以徹底保護SSD資料的作法,他建議,最保險又方便的作法是加密,將資料加密後再放入SSD,未來只要摧毀解密金鑰,資料就算被回復也無法解讀,未來,廠商也可能直接將加密技術放入FTL層,來避免SSD資料外洩的風險。不過,資料加密會影響存取效能,或是耗用處理器運算能力。



僅部分產品能靠指令抹除
通常SSD的使用者在刪除資料時,資料並不會真的從快閃記憶體內抹除掉,而是被標記成已抹除的資料,在SSD需要釋放空間時,才會真正將資料給抹去。像支援TRIM功能的SSD,會在閒置時自動抹除資料;而不支援該功能的,則要視該SSD上的演算法而定,它會計算出何時該進行資料抹除。
 
如果使用者要自己進行資料抹除,則可以使用ANSI標準的ATA Secure Erase指令。而一位不願具名的金士頓(Kingston)技術支援部工程師表示,雖然SSD都擁有原生的內部指令,但是也要看各家的快閃記憶體控制器是否提供該功能,無則不能使用。



針對ATA Secure Erase指令支援度,目前市面上的SSD粗分成三種。第一種是支援該指令,當SSD接收到指令時,會將快閃記憶體上的邏輯區塊位址抹除,而這會讓區塊位置標示成已抹除的狀態,等同於回復到剛出廠的狀態。第二種則不支援指令,這是因為有些快閃記憶體控制器,並沒有支援ATA的ANSI標準指令,這類情形較會出現在早期的SSD上。而第三種則是表面支援指令,也可以執行該指令,但實際上卻無法抹除。


金士頓表示,他們自家的產品支援ANSI標準的ATA Normal Secure Erase及ATA Enhanced Secure Erase指令。使用者可透過HDDerase這套軟體,在DOS模式下抹除SSD。而這兩個指令的作用上,前者是將邏輯區塊位址抹除,來達到銷毀資料的目的;而後者的功能較為進階,它是將SSD上加密的金鑰摧毀,這會讓加密的資料幾乎無法進行解碼。


不過需注意的是,SSD上的超額配置(over-provisioning)空間,是用來暫存及加速存取資料用。而這部份的快閃記憶體,並不受Secure Erase指令影響。所以在抹除時,該區塊有可能會殘存部分資料。


可抹除SSD的小程式
HDDerase僅能在DOS模式下運行,使用者能透過它執行Secure Erase指令。這套軟體能依照安全等級,執行共4種層級的抹除指令,依照等級排列為Normal File Deletion、DoD 5220 Block Erase、Secure Erase及NIST 800-88 Enhanced Secure Erase。



軟體抹除較硬體破壞徹底

對於資料抹除,並非各家都使用硬體方式破壞。像同樣生產SSD的廠商宜鼎國際(InnoDisk),該公司的研發處協理吳錫熙表示,因為他們的客戶有更高的機密考量需求,所以要求資料絕對不能有任何一絲外流的可能性。而在資料抹除上,他認為使用硬體方式破壞時,假設快閃記憶體沒有完全故障,還是有極低的可能性,能將資料從快閃記憶體內給取出。


也因為這樣,有客戶曾要求他們以軟體的方式,將SSD徹底抹寫或破壞掉。如此一來,就算這些處理後的硬體被有心人士取走時,也會發現快閃記憶體內毫無資料。雖然用軟體抹除已經能確保資料抹除,但他們發現依舊有少部分客戶,會在軟體抹除完後,再透過硬體層面破壞SSD。


吳錫熙表示,它們軟體破壞的方法,並非透過作業系統去下達指令,因為這太耗費時間。而且有些資料抹除方式,只是將作業系統內的檔案配置表(FAT,File Allocation Table)刪除,但資料依舊保存在快閃記憶體內。但只要透過Final Data這類檔案救援軟體,就能重建檔案配置表,進而將資料從快閃記憶體中取出。


所以他們抹除資料的方式,是直接針對SSD下達抹除指令。不但能真正將資料抹除外,而省去作業系統這層傳遞指令,抹除速度也快上許多。吳錫熙說,宜鼎自家的儲存產品擁有兩種抹除指令。


一種是Destroy指令,該指令能夠將SSD資料完全抹除,並且會將快閃記憶體內原有的壞塊資訊也抹寫掉。而執行Destroy後,整顆SSD將會回到尚未開卡前的狀態,不能使用之外,也無法進行讀取;而且,Destroy一顆128GB的SSD,大約只要6秒。而另一種Quick Erase指令,一樣是將SSD資料抹寫,但只是將區塊中的資料給清除。執行完後,使SSD能夠重複使用。而Quick Erase一顆128GB的SSD,大約需55秒。



靠軟體並不能徹底抹除資料

事實上,去掉外殼的SSD是非常脆弱的。SSD廠商OCZ(飢餓鯊)亞太營運中心產品經理程威迪表示,他們比較常遇到的問題,是如何保存和讀取資料,較少在破壞這一塊。而提出銷毀需求的客戶,多半是企業而非個人,他們幾乎都是用硬體方式直接破壞SSD實體裝置,來達到資料銷毀的目的。
而這些廠商為何不認同軟體抹除的效果?程威迪說,這是因為,透過軟體抹除雖然能有效地將資料破壞到不可辨識,但還是有很低的機率,能將些許資料復原。



再加上,目前市面上資料抹除軟體,很少是針對SSD的特性去設計,所以都是使用針對一般硬碟的抹除軟體。而因為兩者架構上的差異,在抹除時通常會遺漏掉SSD的部分儲存區。程威迪表示,雖然架構不同,但還是能有效地抹除近70%的資料。


除了資料抹除不完全外,再加上抹除所需時間久,所以廠商大多選擇硬體方式破壞。程威迪說,他自己實驗過,使用HD Tune軟體Pro版的Gutmann演算法,將一顆120GB的SSD進行抹除,約要花上8個小時才能處理完畢。而且這還只有抹除掉約70%的資料,如果要做到徹底抹除,所花的時間可能需更久。


程威迪說,在硬體破壞方面,只要將SSD外殼拆掉,外力敲擊就能造成致命性的傷害。這是因為快閃記憶體非常脆弱,像針腳只要折斷一部分,就會造成傳輸訊號不穩。而且快閃記憶體是將晶圓封裝起來的產品,只要晶圓有一點損傷就等同全毀。


利用敲擊這方式去破壞並沒有特別的訣竅,因為目前大多SSD都採用平均抹寫技術(Wear-Leveling),資料會分別存放在各快閃記憶體上。所以只要破壞SSD中的一片快閃記憶體,其餘記憶體的資料則等同失效。



4種銷毀SSD資料的方法

由於SSD的硬體架構和儲存方式都與一般硬碟不同,所以不管透過軟、硬體方式抹除資料時,都會有些許差異。像SSD的硬體架構,是由多片快閃記憶體及一組控制晶片所組成;這與由碟片、磁頭組成的一般硬碟完全不同。


也因為儲存介質不同,所以在物理的儲存方式上也有所差異。像SSD是透過電流,在快閃記憶體的閘極中留下電子,來儲存資料;而一般硬碟雖然也是使用電流,目的是改變碟片上的磁性,以便將資料存放在碟片上。而這些差異,會影響破壞方式的程度,像一般硬碟運作遭到衝擊時,極有可能因為磁頭位置偏差刮傷碟片,而造成永久性破壞;而SSD則無物理性的磁頭讀寫步驟,都是以電子訊號傳輸,故撞擊對於SSD的影響較不顯著。


將SSD拆開後,可以看到其內部是由一張電路板,上面組合多片快閃記憶體和控制晶片而成。而去除掉外殼的SSD很容易受到破壞,不論在撞擊、耐溫等層面,等同毫無保護。
但SSD也並非我們想像中堅固,如果將其外殼拆開,讓內部晶片、記憶體裸露。光是這樣,就很有可能造成SSD的損壞。這是因為SSD的主要儲存元件為快閃記憶體,而快閃記憶體則是封裝過後的晶圓。它非常脆弱,光是人體靜電就有可能造成損傷。更甭提以物理方式敲擊、折斷,而以這類方式破壞快閃記憶體,幾乎不可能救回資料。
而接下來,我們將介紹軟體抹除、鐵鎚敲擊、火燒、泡水及消磁,這些對於一般硬碟有具體傷害的破壞方法。而這些方式,它對於SSD的破壞程度會有多大。




方法 1 軟體抹除法
不論一般硬碟與SSD,都能透過軟體將硬碟上的資料給抹除。而軟體抹除方式有很多種,有的是將資料徹底抹去,清空磁碟空間;而有的則是將隨機產生的亂數資料,重複且多次地寫入磁區,來將資料損毀。而這兩種方式對於銷毀資料都有一定的效果,目的都是要讓資料不可使用。


而目前要使用軟體抹除,可以使用HD Tune及HDDerase這兩套軟體實做。像HD Tune上有四種抹除方式,如零填充、隨機填充、美國國防部DOD 5220.22-M標準及德國Gutmann演算法。


像零填充能夠將快閃記憶體內的資料,全部抹寫成0。但因為硬體設計關係,有時電壓並不能夠完整將電子移除,所以並不能保證資料被抹除。不過因為邏輯區塊位址也被抹寫,所以就算實體層找到區塊內有資料,也不能將資料取出。


而HDDerase這套軟體,則可以執行ANSI標準的ATA Secure Erase指令。而大多支援抹除指令的SSD,都能夠用它進行標準及進階的資料抹除。標準的抹除指令功能有點類似零填充,它是將邏輯區塊位址抹除,而進階的抹除指令則是摧毀SSD上的加密金鑰。

一般企業使用這兩套軟體抹除,已足夠銷毀大多數資料。但這方法的缺點是,透過軟體抹除需耗去大量時間,而且在安全性上依舊有餘慮。


SDD資料經過重複抹寫後,大多幾乎不可辨識。


方法 2 鐵槌敲擊法
鐵槌敲擊法對於SSD與一般硬碟皆有極高的破壞性,而且也是IT人員損毀門檻最低的一種方式。
使用鐵鎚敲擊一般硬碟時,只要將碟片敲打至變形,幾乎就無法取得碟片上的資料。這是因為磁頭與碟片的定位點已經歪掉,要重新找回定位點並讀取資料,幾乎不可能。


而用鐵鎚敲擊SSD更簡單,由於SSD硬碟非常脆弱,只要將其外殼拆下後,就形同毫無保護。拆開外殼後的SSD硬碟,會看到只有一片IC電路板,上面有著多片快閃記憶體。只要拿鐵鎚擊碎其中一片快閃記憶體,整顆SSD就等同報廢。這是因為SSD大多有平均抹寫技術,導致資料不像一般硬碟,會將資料連續寫入在相同的區塊。所以即使損毀其中一片,剩餘的資料亦不能組合成完整檔案。


在破壞難度上,SSD較一般硬碟輕鬆。這是因為SSD範圍較小,且快閃記憶體硬度也較低,能輕鬆擊破;不像一般硬碟需要將各個碟片分別取下,並將它敲至變形才可。


而破壞SSD不一定要拿鐵鎚敲擊,只要是重物或是尖銳物體,就足夠破壞快閃記憶體,其破壞門檻不但低,且為多個銷毀方式中最有效果的一種。



SSD內的快閃記憶體遭擊碎後,資料幾乎確定無法復原。


方法 3 焚毀法
通常焚毀法分為兩種,一種是送進焚化爐,將硬碟給徹底燒毀。但一般企業並不會有這種設備,所以通常會選擇第二種,自行使用噴槍焚燒硬碟。


而一般硬碟使用焚毀法時,只要破壞表面磁粉,就能將當中的資料損毀。但麻煩的地方在於,一般硬碟有多個碟片,要確保完全毀損就需將每張碟片的表面都均勻焚毀,否則還是有機會能將資料取出。


但SSD的焚燒難度較低,因為硬體不同於一般硬碟。SSD因為面積小,且快閃記憶體的耐熱溫度為攝氏70至85度。再加上SSD是由電路板和快閃記憶體組合而成,不像一般硬碟整體金屬含量高,較難焚毀。


所以在焚燒SSD時,可能不需要用到噴槍,只要使用打火機持續燃燒一段時間,就能夠成功焚毀SSD。而快閃記憶體經過焚毀後,效果等同於敲擊法,幾乎成為不可復原的狀態,理當資料不能取出。
雖然焚毀法對於SSD的難度較一般硬碟低,也較容易銷毀。但企業在使用該方法破壞時,仍有其危險度,請慎選銷毀的場地。



SSD因為耐熱溫度低且面積小,透過打火機持續加熱快閃記憶體,即可破壞。


方法 4 消磁及泡水
以一般硬碟而言,使用消磁及泡水這兩種方式,大多都能有效地造成大範圍傷害,並損傷部份資料。不過,這兩者對於SSD,雖然不敢保證毫無傷害,但能造成資料損傷的機會極低。
磁力須達到一定強度等級,才有可能讓快閃記憶體產生電流,進而達到損毀的目的。


以消磁而言,因為快閃記憶體是靠電壓來抹除和寫入。因為快閃記憶體內的資料是電子,理論上來說,如果磁場強度夠,是可以讓快閃記憶體的金屬層產生電流進而摧毀,並導致無法讀取。不過在使用消磁機時,並無法只針對快閃記憶體抹除資料,所以對SSD進行消磁可能無效。


由於泡水並不會破壞線路,所以資料毀損率不高。

而泡水對於一般硬碟傷害非常嚴重,因為水會破壞碟片上的磁粉。但是對於SSD,泡水的方式則不太行。這是因為水並沒有破壞到線路,只要印刷電路板是好的,基本上吹乾後導電就可以使用。但如果水分沒有清除完畢就通電,還是有可能會造成短路而故障。

簡單來說,SSD就像我們日常使用的隨身碟,有時不小心送進洗衣機,拿出來吹乾後還是能使用。但它也跟大多數使用電路板的設備一樣,如果泡到海水或是具腐蝕性的液體,幾乎等同報廢。






Installation for Volatility 1.4

Installation Prerequisites



In order to use Volatility, you will need to install a few prerequisite programs and packages.
Prerequisites 


  • Python 2.6 or greater, but not Python 3.0 Python 2.6 will be used in this guide
  • Distorm (Malware Plugins, Volshell)
  • Yara (Malware Plugins)
  • PyCrypto (Core)
  • Subversion Client. We recommend TortoiseSVN for Windows
  • 7zip or an application that can unzip zip and gzip files
  • MinGW or other C Compiler (for compiling Pycrypto library)

Windows Installation

This covers how to install Volatility 1.4 on Windows.

Python Installation

In order to use Volatility, you must first install Python. You should get version 2.6 for Windows. When you download the file, double-click to install and you will see the following security message. Just click Run.
Choose the appropriate install options. Most likely you will want to install for all users on the machine:
The installer will ask you where you would like to install the Python files, the default under C:\Python26 should be fine:
The installer will then give you the option for more advanced install options. Unless you know what you are doing, it will be best to leave all options enabled:
On Vista/Windows7 you may have to confirm that you want to install:
Hit “Next” and Python will now install. Hit “Finish” when installation completes:

Setting Environment Variables

After Python is installed, you should make sure that the Python extensions are registered. If you have a regular start menu, click on start and then right click on “Computer” and choose properties. If you have the classic start menu, just right click on “My Computer” and choose properties.
If you have Windows 7 you will see the following screen. Choose "Advanced System Settings". You should see the following (some personal details removed):
Make sure you are on the "Advanced" tab and choose "Environmental Variables":
On the next screen find the "Path" variable and click "Edit":
Click on the text and scroll all the way to the end. Append the path of our Python installation to the end of the existing Path variable. Where it says “Variable Value” go to the end of the line and add the following:
;C:\Python26
The semicolon separates our new Path location from the current values. If the location of your Python installation is different from the above, type the appropriate folder location instead.
Now we are ready to test that we have set up everything correctly. Open a command prompt by clicking on the "Start Menu" and clicking on "Run". For Windows 7, click "Start" and type "cmd" in the search text box and hit "Enter":
Type "python" into the command prompt. You should then see the Python header and command prompt >>> Type "quit()" to exit. If this works, Python is installed correctly.

Installing Dependencies

Installing MinGW

Occasionally you will need a C/C++ compiler in order to install Python libraries. If you install Distorm3 or Pycrypto from source, you will need a compiler. Download the compiler from the Sourceforge site. Make sure you get the "ming-get-inst" installer as shown below:
Double click the installer. You should see the following picture. Hit Next to continue.
If you are running as Administrator you will see the following screen. Just hit Next.
You will have a choice to install the latest MinGW build or prepackaged binaries.
Accept the agreement.
Choose a location to install MinGW.
Keep accepting defaults until you get to the "Select Components" screen. Here you will need to make sure you have at least the C++ compiler checked as well as "MSYS Basic System" so you will have the "make" utility.
Hit Next. A black command prompt may appear as things are installing; just ignore it. If all goes well you will see the "Finish" screen. Just hit "Finish".
Add the "bin" directory of MinGW to your path like you did for Python. If you accepted the default installation directory the text to add would be:
;C:\MinGW\bin
You can test that this works by typing "gcc" plus "Enter" at the command line. You should see "gcc: no input files" if your path variable is set up correctly:

Installing Pycrypto

If you do not have a C compiler like MinGW installed, you can install a precompiled version of Pycrypto from www.voidspace.org.uk. If you installed MinGW as above you can install Pycrypto as follows.
To install from source, first go to the Pycrypto repository page. You can download a snapshot as a gzip file:
If you have 7zip installed, right click on the downloaded file and choose open 7zip->Open Archive:
Double click the tar file inside and click the "Extract" button.
Choose a location to extract the folder to:
Once the folder is extracted, open the command prompt and change directory into that folder. In this case, the folder was extracted onto the Desktop, so the command issued is:
cd Desktop\pycrypto-2.0.x
Once inside you can issue a "dir" command to make sure you have all the files, including "setup.py"
Type the following commands to install (wait until the first one finishes before typing the second one):
python setup.py build -c mingw32
python setup.py install
As long as you don't see any errors Pycrypto should be installed correctly.

Installing Distorm3

Distorm3 is used by several Malware plugins as well as the Core Volshell plugin. It's easiest to install the precompiled library for Python 2.6, which is the method shown here. Go to the Distorm Google Code page and download the distorm3-1.0.win32.zip which contains the library for Python 2.6. Unzip the file and navigate into the Python26\Lib\site-packages directory:
Copy all contents into your Python 2.6 library location, in this case C:\Python26\Lib\site-packages
You can check the installation by running python and importing distorm3. If you don't see any errors, distorm3 was installed correctly.

Installing Yara-Python 1.4a

Download the appropriate yara-python-1.4a.win32-py2.X.exe Windows installer. In this guide we will use yara-python-1.4a.win32-py2.6.exe. Double click the installer and click Next.
The installer should pick up your Python installation. If you have more than version of Python installed, choose the installation you will be using for Volatility.
Accept all defaults, hitting Next until complete. As long as there are no errors shown installation should be successful. You an always verify by running Python and typing "import yara"

Installing TortoiseSVN

In order to get the source code for Volatility 1.4 from the repository, you will need a Subversion (SVN) client. You can download the client from http://tortoisesvn.net/downloads.html. Make sure to choose the correct installer:
Double click the installer and keep hitting next. Accept all defaults and accept the user agreement. Hit "Finish" when the installation completes.
You will be asked to restart your computer after TortoiseSVN is installed.
After restarting, you can verify that TortoiseSVN is installed correctly by right-clicking on the Desktop. If it is installed, you will see it in the menu:

Installing Volatility 1.4 from SVN

Once you have a Subversion client installed, you can download the latest source code for Volatility 1.4 from the code repository. This guide will use TortoiseSVN. First create a folder where you want to keep the Volatility source code. For this guide we will create a folder "C:\Volatility 1.4". Go inside this folder and right-click, bringing up the menu options for TortoiseSVN. Choose "SVN Checkout":
Type the following url for the repository:
http://volatility.googlecode.com/svn/branches/Volatility-1.4_rc1
All other defaults should be fine, click OK. When the repository is finished downloading click OK to close out.
You should then see all the Volatility source code in the folder.
To use Volatility, open a command line and navigate to the Volatility source directory. In this case:
cd "c:\Volatility 1.4"
Then type:
python vol.py -h
You should see a long list of output that includes all of the plugins that are available. For more information on how to use Volatility check out BasicUsage and CommandReference



轉自 http://code.google.com/p/volatility/wiki/FullInstallation