實驗NTFS-1說明:NTFS-1.img是一個包含NTFS文件系統的磁盤鏡像,請使用winhex手工方式讀出這個文件系統內的指定文件,並回答其md5 HASH值。
要求:python
一、利用WINHEX手工方式讀取。
二、不得使用WINHEX模板功能。
三、不得使用WINHEX文件系統解析功能。
四、填寫的MD5 HASH值所有爲大寫,不包括0x頭標或H尾標,中間不得有任何間隔符號(包括空格、製表符、’-’等符號),以WINHEX軟件運算出的HASH值爲準。dom
實驗目的:
一、實現手工方式跟蹤一個NTFS文件系統,並讀出指定的某個文件。
二、理解目錄緩衝區的結構原理。
三、理解文件有多個碎片的處理方式(runlist的結構)。
四、理解DBR、$MFT、FileRecord等文件系統組件。
五、熟練使用WINHEXoop
題庫:
實驗NTFS-1中,文件系統中對"/mnt/NTFS-1-58/12.txt",人工讀取內容後計算獲得的文件MD5 HASH值爲0x___。////927C94BBFC5B2A545C8526F8272F65F8//容易。。
實驗NTFS-1中,文件系統中對"/mnt/NTFS-1-58/7.txt",人工讀取內容後計算獲得的文件MD5 HASH值爲0x___。////685A3C1600211F75362F2B9D0541A2DA//容易。。
實驗NTFS-1中,文件系統中對"/mnt/NTFS-1-58/4.txt",人工讀取內容後計算獲得的文件MD5 HASH值爲0x___。////0C72D420DD8902BBAE41A8C4E6676BCA//容易。。
... ...code
附:生成考題的python腳本:
#!/usr/bin/python3
import os
import random
import hashlib
import struct
r=os.system
rc=random.choice
ri=random.randint
md5=hashlib.md5
items = list(range(1,21))
r("cd ~/NTFS-1")
fkaoti=open("NTFS-1-kaoti.txt",'w+')
r("qemu-img create -f raw NTFS-1.img 500M")
r("losetup /dev/loop0 NTFS-1.img")
r("mkfs.ntfs -f /dev/loop0")
r("mount.ntfs-3g /dev/loop0 /mnt")
for i in range(1,60):
r("mkdir /mnt/NTFS-1-%d" % i)
random.shuffle(items)
for ii in items:
f=open("/mnt/NTFS-1-%d/%d.txt"%(i,ii),'w+')
for iii in range(1,ri(500,550)):
if ri(1,32)==1:
f.write("*****COPY RIGHT:")
else:
f.write("www.frombyte.com")
f.close()
for i in range(1,60):
random.shuffle(items)
for ii in items:
f=open("/mnt/NTFS-1-%d/%d.txt"%(i,ii),'a')
for iii in range(1,ri(1000,1100)):
if ri(1,32)==1:
f.write("*****COPY RIGHT:")
else:
f.write("www.frombyte.com")
f.close()
#//對40之後的目錄生成MD5 HASH,40以後即不可能存在於第一個目錄塊
for i in range(40,60):
for ii in items:
fn="/mnt/NTFS-1-%d/%d.txt"%(i,ii)
ff=open(fn,'r')
data=ff.read()
ff.close()
fkaoti.write("實驗NTFS-1中,文件系統中對\"%s\",人工讀取內容後計算獲得的文件MD5 HASH值爲0x___。//%s//容易。。\n"\
% (fn,md5(data.encode("utf8")).hexdigest().upper()) )
fkaoti.flush()
fkaoti.close()
r("cd")
r("umount /dev/loop0")
r("losetup -d /dev/loop0")md5
部署流程:
一、在liunx下執行上述腳本,生成NTFS-1.img和NTFS-1-kaoti.txt(能夠生成兩份,一份用於練習,一份用於考試)。
二、針對每一份考題,把NTFS-1-kaoti.txt導入考試系統。
三、針對每一份考題,把NTFS-1.img放入考試系統指定目錄。
四、不得將用於考試的直接涉及答案的文件放入考試系統磁盤中。部署