จะอ่านไฟล์ Windows Hibernation (hiberfil.sys) เพื่อดึงข้อมูลได้อย่างไร


8

ฉันต้องการค้นหาข้อมูลทั้งหมดที่เก็บไว้ในไฟล์จำศีลโดยการแยกวิเคราะห์ อย่างไรก็ตามจนถึงตอนนี้ฉันสามารถจัดการด้วยตนเองได้ด้วยการเปิดในโปรแกรมแก้ไข Hex แล้วค้นหาข้อความในนั้น ฉันพบเกี่ยวกับห้องสมุด SandMan แต่ไม่มีทรัพยากรใด ๆ อยู่ในปัจจุบัน มีความคิดวิธีอ่านไฟล์อย่างไร? หรือมีเครื่องมือ / ห้องสมุดหรือวิธีการอื่นที่จะทำเช่นนั้น?


3
ไฟล์ hiberfil เป็นภาพของ ram ระบบในเวลาที่จำศีล ดังนั้นตัวแก้ไข Hex จึงน่าจะเป็นสิ่งที่ดีที่สุดที่คุณจะได้รับ ภารกิจนี้ไม่แตกต่างจากการพยายามอ่านเนื้อหาของ RAM ของคุณ
Frank Thomas

6
ที่เกี่ยวข้อง: security.stackexchange.com/questions/23787/…
Der Hochstapler

1
@ Frankank คุณรู้หรือไม่ว่ารูปแบบของไฟล์ไฮเบอร์เนตคืออะไร?
coder

@OliverSalzburg ฉันต้องการทราบโครงสร้างข้อมูลเพื่ออ่านไฟล์หรือไม่
coder

1
@WernerHenze สำหรับการมอบหมายของฉัน
coder

คำตอบ:


7

คุณสามารถค้นหาข้อมูลจำนวนมากเกี่ยวกับHiberfil.sysบนหน้า ForensicWiki

แม้ว่าโครงสร้างข้อมูลส่วนใหญ่ที่จำเป็นในการแยกวิเคราะห์รูปแบบไฟล์จะมีอยู่ในสัญลักษณ์การดีบักของ Microsoft Windows แต่การบีบอัดที่ใช้ (Xpress) นั้นไม่มีการทำเอกสารจนกว่าจะได้รับการออกแบบโดย Matthieu Suiche เขาสร้างด้วย Nicolas Ruff โครงการที่ชื่อว่าSandmanเป็นเครื่องมือโอเพนซอร์ซเดียวที่สามารถอ่านและเขียนไฟล์ hibernation ของ Windows

รูปแบบไฟล์ PDF ของโครงการแซนด์แมนพบที่นี่

ผู้สร้างโครงการ Sandman ยังสร้างเครื่องมือในการถ่ายโอนข้อมูลหน่วยความจำและHiberfil.sys-file (และแยกออกจากรูปแบบการบีบอัด XPress) ชุดเครื่องมือหน่วยความจำ Windows MoonSols

ลิงก์อื่น ๆ บางส่วนในหน้า ForensicWiki ไม่ทำงานอีกต่อไป แต่นี่คือสิ่งที่ฉันพบ: (หากคุณต้องการดำดิ่งลงในโครงสร้างรูปแบบคุณสามารถใช้ทรัพยากรนี้สำหรับส่วนหัว 8192 ไบต์แรกของ ไฟล์คุณไม่จำเป็นต้องคลายการบีบอัด)

Format ของไฟล์การไฮเบอร์เนต

นี้รูปแบบไฟล์ PDF ที่ผ่านมาและการเชื่อมโยงสุดท้ายใน ForensicWiki Hiberfil.sysหน้าควรให้ข้อมูลที่เพียงพอเกี่ยวกับโครงสร้างของ

ไฟล์การไฮเบอร์เนตประกอบด้วยส่วนหัวมาตรฐาน (PO_MEMORY_IMAGE) ชุดของบริบทเคอร์เนลและการลงทะเบียนเช่น CR3 (_KPROCESSOR_STATE) และหลายอาร์เรย์ของบล็อกข้อมูล Xpress ที่บีบอัดและเข้ารหัส (_IMAGE_XPRESS_HEADER และ _PO_MEMORY_RANGE_ARRAY)

ส่วนหัวมาตรฐานมีอยู่ที่ออฟเซ็ต 0 ของไฟล์และแสดงอยู่ด้านล่าง โดยทั่วไปสมาชิกลายเซ็นจะต้องเป็น "hibr" หรือ "wake" เพื่อให้ถูกต้องอย่างไรก็ตามในกรณีที่เกิดขึ้นได้ยากส่วนหัว PO_MEMORY_IMAGE ทั้งหมดได้ถูกทำให้เป็นศูนย์ซึ่งสามารถป้องกันการวิเคราะห์ไฟล์ไฮเบอร์เนตในเครื่องมือส่วนใหญ่ ในกรณีดังกล่าวความผันผวนจะใช้อัลกอริทึมแรงเดรัจฉานเพื่อค้นหาข้อมูลที่ต้องการ

การอ้างอิงในเอกสารเหล่านั้นควรให้แหล่งข้อมูลอื่น ๆ แก่คุณมากมายในการสำรวจเช่นกัน


3

ฉันอยากจะแนะนำให้คุณดูที่คำตอบนี้จากsecurity.stackexchange.com มันแสดงให้เห็นถึงวิธีการที่ยอดเยี่ยมในการดึงข้อมูลและข้อมูลเกี่ยวกับอัลกอริธึมเอง

ฉันได้เน้นส่วนที่สำคัญ

ใช่มันเก็บมันไม่ได้เข้ารหัสบนดิสก์ มันเป็นไฟล์ที่ซ่อนอยู่ C:\hiberfil.sysซึ่งจะถูกสร้างขึ้นบนระบบที่เปิดใช้การจำศีลอยู่เสมอ เนื้อหาจะถูกบีบอัดโดยใช้อัลกอริทึม Xpress, เอกสารที่สามารถใช้ได้เป็นเอกสาร Word จาก Microsoft Matthieu Suiche ทำการวิเคราะห์ที่ครอบคลุมว่าเป็นการนำเสนอ BlackHat ในปี 2008 ซึ่งคุณสามารถรับเป็น PDFได้ นอกจากนี้ยังมีเครื่องมือที่เรียกว่าMoonSols Windows Memory Toolkitที่ให้คุณถ่ายโอนเนื้อหาของไฟล์ ฉันไม่รู้ว่ามันช่วยให้คุณแปลงกลับได้ไหม คุณอาจต้องพยายามหาทางทำด้วยตัวเอง

เมื่อคุณได้รับข้อมูลออกมาเป็นไปได้ที่จะแยกหรือแก้ไขข้อมูลรวมถึงคำแนะนำ ในแง่ของการบรรเทาปัญหาทางออกที่ดีที่สุดของคุณคือการใช้การเข้ารหัสดิสก์เต็มรูปแบบเช่น BitLocker หรือ TrueCrypt

แหล่ง


3

แปลงไฟล์ Hiberfil.sys ไปยังภาพดิบใช้http://code.google.com/p/volatility/downloads/list รุ่นล่าสุด ณ ขณะนี้คือ 2.3.1 คุณสามารถใช้บรรทัดคำสั่งต่อไปนี้เพื่อสร้างอิมเมจ raw ก่อน: -f imagecopy -O hiberfil_sys.raw สิ่งนี้จะสร้างอิมเมจดิบสำหรับคุณจากนั้นเรียกใช้ความผันผวนซึ่งจะช่วยให้คุณสามารถดึงข้อมูลเช่นกระบวนการการเชื่อมต่อซ็อกเก็ตและกลุ่มรีจิสทรี (เพียงไม่กี่ชื่อ) รายการเต็มรูปแบบของปลั๊กอินที่สามารถพบได้ที่นี่: https://code.google.com/p/volatility/wiki/Plugins แน่นอน Redline mandiant เป็นอีกเครื่องมือหนึ่งที่ให้ฟังก์ชั่นดังกล่าว หวังว่านี่จะช่วยได้

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.