您现在的位置是:首页 > 文章详情

linux中生成考核用的NTFS文件系统结构样例(一)

日期:2017-06-26点击:422


实验NTFS-1说明:NTFS-1.img是一个包含NTFS文件系统的磁盘镜像,请使用winhex手工方式读出这个文件系统内的指定文件,并回答其md5 HASH值。

要求:

    1、利用WINHEX手工方式读取。

    2、不得使用WINHEX模板功能。

    3、不得使用WINHEX文件系统解析功能。

    4、填写的MD5 HASH值全部为大写,不包括0x头标或H尾标,中间不得有任何间隔符号(包括空格、制表符、’-’等符号),以WINHEX软件运算出的HASH值为准。


实验目的:

    1、实现手工方式跟踪一个NTFS文件系统,并读出指定的某个文件。

    2、理解目录缓冲区的结构原理。

    3、理解文件有多个碎片的处理方式(runlist的结构)。

    4、理解DBR、$MFT、FileRecord等文件系统组件。

    5、熟练使用WINHEX

题库:

实验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//容易。。 ... ...

附:生成考题的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")


部署流程:

 1、在liunx下执行上述脚本,生成NTFS-1.img和NTFS-1-kaoti.txt(可以生成两份,一份用于练习,一份用于考试)。

 2、针对每一份考题,把NTFS-1-kaoti.txt导入考试系统。

 3、针对每一份考题,把NTFS-1.img放入考试系统指定目录。

 4、不得将用于考试的直接涉及答案的文件放入考试系统磁盘中。

原文链接:https://blog.51cto.com/zhangyu/1941949
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章