bulk_extractor
是一種高效能數位取證利用工具。它是一個「獲取證據」按鈕,可以快速掃描任何類型的輸入(磁碟映像、文件、文件目錄等)並提取結構化訊息,例如電子郵件地址、信用卡號碼、JPEG 和JSON 片段,而無需解析文件系統或檔案系統結構。結果儲存在文字檔案中,可以輕鬆檢查、搜尋或用作其他取證處理的輸入。 bulk_extractor 還創建它找到的某些類型特徵的直方圖,例如 Google 搜尋字詞和電子郵件地址,因為先前的研究表明,此類直方圖在調查和執法應用程式中特別有用。
與其他數位取證工具不同, bulk_extractor
會探測資料的每個位元組,以查看它是否是可以解壓縮或以其他方式解碼的序列的開始。如果是,則遞歸地重新檢查解碼的資料。因此, bulk_extractor
可以找到傳統雕刻工具遺漏的 BASE64 編碼的 JPEG 和壓縮的 JSON 物件等內容。
這是bulk_extractor
2.1 開發分支!它很可靠,但如果您想要一個經過充分測試的生產品質版本,請從 https://github.com/simsong/bulk_extractor/releases 下載版本。
bulk_extractor
我們建議從源頭建構。我們在etc/
目錄中提供了許多bash
腳本,用於配置乾淨的虛擬機器:
git clone --recurse-submodules https://github.com/simsong/bulk_extractor.git
./bootstrap.sh
./configure
make
make install
有關安裝套件和建置bulk_extractor的詳細說明,請閱讀此處的wiki頁面:https://github.com/simsong/bulk_extractor/wiki/Installing-bulk_extractor
有關bulk_extractor的更多信息,請訪問:https://forensics.wiki/bulk_extractor
此版本的bulk_extractor需要C++17,並且已經過測試可以在以下平台上編譯:
您應該始終從新的虛擬機器開始,並使用etc/
目錄中適當的準備腳本準備系統。
如果您正在撰寫科學論文並使用bulk_extractor,請使用以下方式引用:
Garfinkel,Simson,使用批量資料分析和批量提取器進行數位媒體分類。計算機與安全 32: 56-72 (2013)
@article{10.5555/2748150.2748581,
author = {Garfinkel, Simson L.},
title = {Digital Media Triage with Bulk Data Analysis and Bulk_extractor},
year = {2013},
issue_date = {February 2013},
publisher = {Elsevier Advanced Technology Publications},
address = {GBR},
volume = {32},
number = {C},
issn = {0167-4048},
journal = {Comput. Secur.},
month = feb,
pages = {56–72},
numpages = {17},
keywords = {Digital forensics, Bulk data analysis, bulk_extractor, Stream-based forensics, Windows hibernation files, Parallelized forensic analysis, Optimistic decompression, Forensic path, Margin, EnCase}
}
可以設定以下環境變數來更改bulk_extractor
的操作:
多變的 | 行為 |
---|---|
DEBUG_BENCHMARK_CPU | 在report.xml 檔中包含CPU 基準測試信息 |
DEBUG_NO_SCANNER_BYPASS | 如果 sbuf 包含 ngram 或不具有較高的不同字元計數,則停用繞過某些掃描器的掃描器繞過邏輯。 |
DEBUG_HISTOGRAMS | 在基於文件的直方圖上列印偵錯資訊。 |
DEBUG_HISTOGRAMS_NO_INCREMENTAL | 不要使用增量的、基於記憶體的直方圖。 |
DEBUG_PRINT_STEPS | 當每個 sbuf 呼叫每個掃描器時列印到標準輸出 |
DEBUG_DUMP_DATA | 十六進位轉儲每個要掃描的 sbuf。 |
DEBUG_SCANNERS_IGNORE | 要忽略(不載入)的掃描器的逗號分隔清單。對於調試單元測試很有用。 |
其他調試提示:
注意:Currenltybulk_extractor 2.1 不是在 Windows 上建置的,但 2.0 可以。
如果您希望針對 Windows 進行構建,則應該從 Fedora 系統進行交叉編譯。從乾淨的虛擬機器開始並使用以下命令:
$ git clone --recurse-submodules https://github.com/simsong/bulk_extractor.git
$ cd bulk_extractor/etc
$ bash CONFIGURE_FEDORA36_win64.bash
$ cd ..
$ make win64
將 jpeg_carved 特徵記錄器重新命名為 jpeg,以便可以使用 -S jpeg_carve_mode=2 設定 jpeg 雕刻模式,而不是 -S jpeg_carved_carve_mode=2,這很令人困惑。
bulk_extractor
2.0 (BE2) 現已投入運作。儘管它可以與基於 Java 的檢視器配合使用,但我們目前沒有在 Windows 下執行的安裝程式。
BE2 需要 C++17 才能編譯。它需要https://github.com/simsong/be13_api.git
作為子模組,而子模組又需要dfxml
作為子模組。
該項目花費的時間比預期的要長。除了更新到 C++17 之外,它還被用作大規模程式碼重構和程式碼品質、可測試性和可靠性普遍提高的機會。有關該實驗的文章將發表在即將出版的 ACM Queue 雜誌上