bulk_extractor
เป็นเครื่องมือหาประโยชน์จากนิติเวชดิจิทัลที่มีประสิทธิภาพสูง เป็นปุ่ม "รับหลักฐาน" ที่สแกนอินพุตทุกประเภทอย่างรวดเร็ว (ดิสก์อิมเมจ ไฟล์ ไดเร็กทอรีของไฟล์ ฯลฯ) และแยกข้อมูลที่มีโครงสร้าง เช่น ที่อยู่อีเมล หมายเลขบัตรเครดิต JPEG และส่วนย่อย JSON โดยไม่ต้องแยกวิเคราะห์ระบบไฟล์หรือ โครงสร้างระบบไฟล์ ผลลัพธ์จะถูกจัดเก็บไว้ในไฟล์ข้อความที่ตรวจสอบ ค้นหา หรือใช้เป็นอินพุตสำหรับการประมวลผลทางนิติเวชอื่นๆ ได้อย่างง่ายดาย นอกจากนี้ Bulk_extractor ยังสร้างฮิสโตแกรมของคุณลักษณะบางประเภทที่พบ เช่น ข้อความค้นหาของ Google และที่อยู่อีเมล เนื่องจากการวิจัยก่อนหน้านี้แสดงให้เห็นว่าฮิสโตแกรมดังกล่าวมีประโยชน์อย่างยิ่งในแอปพลิเคชันการสืบสวนและการบังคับใช้กฎหมาย
แตกต่างจากเครื่องมือนิติเวชดิจิทัลอื่นๆ bulk_extractor
จะตรวจสอบข้อมูลทุกไบต์เพื่อดูว่าเป็นจุดเริ่มต้นของลำดับที่สามารถคลายการบีบอัดหรือถอดรหัสได้หรือไม่ หากเป็นเช่นนั้น ข้อมูลที่ถอดรหัสจะถูกตรวจสอบซ้ำอีกครั้ง ด้วยเหตุนี้ bulk_extractor
จึงสามารถค้นหาสิ่งต่างๆ เช่น JPEG ที่เข้ารหัส BASE64 และวัตถุ JSON ที่ถูกบีบอัดซึ่งเครื่องมือแกะสลักแบบเดิมๆ ขาดหายไป
นี่คือสาขาการพัฒนา bulk_extractor
2.1! มีความน่าเชื่อถือ แต่หากคุณต้องการรุ่นคุณภาพการผลิตที่ได้รับการทดสอบอย่างดี ให้ดาวน์โหลดรุ่นจาก https://github.com/simsong/bulk_extractor/releases
bulk_extractor
เราขอแนะนำให้สร้างจากแหล่งที่มา เรามีสคริปต์ bash
จำนวนหนึ่งในไดเร็กทอรี etc/
ที่จะกำหนดค่าเครื่องเสมือนใหม่ทั้งหมด:
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 และได้รับการทดสอบเพื่อคอมไพล์บนแพลตฟอร์มต่อไปนี้:
Amazon Linux ณ วันที่ 25-05-2023
Fedora 36 (ล่าสุด)
อูบุนตู 20.04LTS
แมคโอเอส 13.2.1
คุณควรเริ่มต้นด้วย VM ใหม่ เสมอ และเตรียมระบบโดยใช้สคริปต์การเตรียมที่เหมาะสมในไดเร็กทอรี etc/
Debian 10 (ไม่รองรับรุ่นเนทีฟ))
หากคุณกำลังเขียนบทความทางวิทยาศาสตร์และใช้ 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 | รวมข้อมูลการวัดประสิทธิภาพ CPU ในไฟล์ report.xml |
DEBUG_NO_SCANNER_BYPASS | ปิดใช้งานลอจิกการบายพาสสแกนเนอร์ที่จะเลี่ยงผ่านสแกนเนอร์บางตัวหาก sbuf มี ngrams หรือมีจำนวนอักขระไม่ชัดเจน |
DEBUG_HISTOGRAMS | พิมพ์ข้อมูลการดีบักบนฮิสโตแกรมตามไฟล์ |
DEBUG_HISTOGRAMS_NO_INCREMENTAL | อย่าใช้ฮิสโตแกรมแบบเพิ่มหน่วยตามหน่วยความจำ |
DEBUG_PRINT_STEPS | พิมพ์ไปที่ stdout เมื่อสแกนเนอร์แต่ละตัวถูกเรียกสำหรับ sbuf แต่ละตัว |
DEBUG_DUMP_DATA | Hex-dump แต่ละ sbuf ที่จะสแกน |
DEBUG_SCANNERS_IGNORE | รายการสแกนเนอร์ที่คั่นด้วยเครื่องหมายจุลภาคที่จะละเว้น (ไม่โหลด) มีประโยชน์สำหรับการทดสอบหน่วยการดีบัก |
คำแนะนำอื่นๆ สำหรับการดีบัก:
เรียกใช้ -xall เพื่อให้ทำงานโดยไม่มีสแกนเนอร์
รันด้วยการสุ่มตัวอย่าง 0.001% เพื่อแก้ไขข้อบกพร่องในการอ่านขนาดรูปภาพและการค้นหาอย่างรวดเร็วเล็กน้อย
หมายเหตุ: Currenlty Bulk_extractor 2.1 ไม่ได้สร้างบน windows แต่ 2.0 สร้าง
หากคุณต้องการสร้างสำหรับ Windows คุณควรคอมไพล์ข้ามระบบจากระบบ Fedora เริ่มต้นด้วย clean VM และใช้คำสั่งเหล่านี้:
$ 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 เพื่อให้สามารถตั้งค่าโหมด jpeg carve ด้วย -S jpeg_carve_mode=2 แทนที่จะเป็น -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 ฉบับที่กำลังจะมีขึ้น