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

简介:

实验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

题库:

1
2
3
4
实验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脚本:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
#!/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  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  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  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、不得将用于考试的直接涉及答案的文件放入考试系统磁盘中。










本文转自 张宇 51CTO博客,原文链接:http://blog.51cto.com/zhangyu/1941949,如需转载请自行联系原作者
目录
相关文章
|
22天前
|
Ubuntu Linux 开发者
Ubuntu20.04搭建嵌入式linux网络加载内核、设备树和根文件系统
使用上述U-Boot命令配置并启动嵌入式设备。如果配置正确,设备将通过TFTP加载内核和设备树,并通过NFS挂载根文件系统。
69 15
|
27天前
|
Ubuntu Unix Linux
Linux网络文件系统NFS:配置与管理指南
NFS 是 Linux 系统中常用的网络文件系统协议,通过配置和管理 NFS,可以实现跨网络的文件共享。本文详细介绍了 NFS 的安装、配置、管理和常见问题的解决方法,希望对您的工作有所帮助。通过正确配置和优化 NFS,可以显著提高文件共享的效率和安全性。
172 7
|
27天前
|
存储 运维 监控
Linux--深入理与解linux文件系统与日志文件分析
深入理解 Linux 文件系统和日志文件分析,对于系统管理员和运维工程师来说至关重要。文件系统管理涉及到文件的组织、存储和检索,而日志文件则记录了系统和应用的运行状态,是排查故障和维护系统的重要依据。通过掌握文件系统和日志文件的管理和分析技能,可以有效提升系统的稳定性和安全性。
46 7
|
1月前
|
安全 Linux 数据安全/隐私保护
深入Linux操作系统:文件系统和权限管理
在数字世界的海洋中,操作系统是连接用户与硬件的桥梁,而Linux作为其中的佼佼者,其文件系统和权限管理则是这座桥梁上不可或缺的结构。本文将带你探索Linux的文件系统结构,理解文件权限的重要性,并通过实际案例揭示如何有效地管理和控制这些权限。我们将一起航行在Linux的命令行海洋中,解锁文件系统的奥秘,并学习如何保护你的数据免受不必要的访问。
|
2月前
|
存储 运维 监控
深入Linux基础:文件系统与进程管理详解
深入Linux基础:文件系统与进程管理详解
98 8
|
2月前
|
Linux 网络安全 数据安全/隐私保护
Linux 超级强大的十六进制 dump 工具:XXD 命令,我教你应该如何使用!
在 Linux 系统中,xxd 命令是一个强大的十六进制 dump 工具,可以将文件或数据以十六进制和 ASCII 字符形式显示,帮助用户深入了解和分析数据。本文详细介绍了 xxd 命令的基本用法、高级功能及实际应用案例,包括查看文件内容、指定输出格式、写入文件、数据比较、数据提取、数据转换和数据加密解密等。通过掌握这些技巧,用户可以更高效地处理各种数据问题。
239 8
|
2月前
|
监控 Linux
如何检查 Linux 内存使用量是否耗尽?这 5 个命令堪称绝了!
本文介绍了在Linux系统中检查内存使用情况的5个常用命令:`free`、`top`、`vmstat`、`pidstat` 和 `/proc/meminfo` 文件,帮助用户准确监控内存状态,确保系统稳定运行。
946 6
|
2月前
|
Linux
在 Linux 系统中,“cd”命令用于切换当前工作目录
在 Linux 系统中,“cd”命令用于切换当前工作目录。本文详细介绍了“cd”命令的基本用法和常见技巧,包括使用“.”、“..”、“~”、绝对路径和相对路径,以及快速切换到上一次工作目录等。此外,还探讨了高级技巧,如使用通配符、结合其他命令、在脚本中使用,以及实际应用案例,帮助读者提高工作效率。
149 3
|
2月前
|
监控 安全 Linux
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景,包括 ping(测试连通性)、traceroute(跟踪路由路径)、netstat(显示网络连接信息)、nmap(网络扫描)、ifconfig 和 ip(网络接口配置)。掌握这些命令有助于高效诊断和解决网络问题,保障网络稳定运行。
125 2
|
1月前
|
Linux Shell
Linux 10 个“who”命令示例
Linux 10 个“who”命令示例
84 14
Linux 10 个“who”命令示例