《实验讲解课件.ppt》由会员分享,可在线阅读,更多相关《实验讲解课件.ppt(54页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、安全操作系统,中国科学技术大学计算机系陈香兰(051287161312)助教:裴建国Autumn 2008,实验讲解,口令破解,Password cracking文件恢复,file recovery缓冲区溢出系统安全安全审计文件事件审计主机安全审计,文件恢复,file recovery,实验中用到的工具磁盘相关磁盘物理组织和结构磁盘逻辑组织和结构FAT32文件恢复Ext2文件恢复,工具,Winhex下载evaluation版:http:/ recovery,实验中用到的工具磁盘相关磁盘物理组织和结构磁盘逻辑组织和结构FAT32文件恢复Ext2文件恢复,http:/ of a hard disk
2、,cylinder/head/sector,Tracks and Cylinders,Sectors and Clusters,文件恢复,file recovery,磁盘相关磁盘物理组织和结构磁盘逻辑组织和结构FAT32文件恢复Ext2文件恢复,MBR,IA32 IBM PC系统采用MBR分区表方案系统启动时,首先执行ROM BIOS中的固件该固件将会装载( 0x7C00 )并执行MBR中的boot loader运行在实模式MBR中的boot loader将查找分区表,找到活动分区,加载该分区启动扇区并执行与FS类型以及OS类型有关通常用来加载OS相关的secondary bootstrap
3、loader,例如io.sys, ntldr,关于PC的启动过程,可以参见这里:Boot sequence on standard PC (IBM-PC compatible),512字节的MBR 446字节的boot loader 64字节的分区表 2字节的signature:0xAA55track 0, head 0, and sector 1,演示本机磁盘管理信息,分区表, partition table,4项,MBR 446字节开始的64个字节,偏移分别Partition 1 0x01BE (446) Partition 2 0x01CE (462)Partition 3 0x01DE
4、 (478)Partition 4 0x01EE (494)每项16个字节,An examplehttp:/ id,参考这里,FAT Partition Boot Sector,http:/ 95的启动过程,参考这里,找到并加载Io.sys,NTFS Partition Boot Sector,关于Windows 2000的启动,参见NtldrVista和server 2008:winload.exe和Windows Boot Manager,找到并加载Ntldr,演示?打开整个磁盘,看分区,MBR,Partition recovery,误删一个分区?TestDiskgpart有些磁盘管理工具
5、,在删除分区时,会写覆盖分区前部的几个扇区Windows 2000/XP,第一个扇区需要有备份的启动扇区配合恢复病毒?分区时突然掉电/死机?安装或删除多OS之一?,查杀病毒恢复分区表,fdisk /mbr,重新分区?,文件恢复,file recovery,实验中用到的工具磁盘相关磁盘物理组织和结构磁盘逻辑组织和结构FAT32文件恢复Ext2文件恢复,FAT基本概念,扇区簇链式存储(显式)File Allocation Table目录项FAT的备份FAT1和FAT2,大小相等,FAT的格式,最早,FAT12,用12bit对簇寻址4096(000h,001h,FF0hFFFh)4078个可用软盘I
6、nitial FAT16,用16bit对簇寻址,65517受限于16位扇区号,分区最大32MBFinal FAT16,1987磁盘技术:可以使用32位的扇区号sectors-per-cluster=64标准扇区大小512字节,簇最大32KB,分区最大2GFAT32,32位,其中28位用来寻簇若32KB的簇,则8TB,理论上受限于bootsector,32位扇区号,实际上最大2TB,FAT表的大小簇数(12/16/32)以扇区为单位向上取整FAT表项的作用(根据表项的编号和表项的值)标明磁盘类型链接一个文件的各个簇标明坏簇和可用簇,FAT表项的值,?不能用作next指针,FAT的第0项首字节标明
7、磁盘类型,参见这里FAT的第1项不用,FAT 分区布局,FAT32 boot sector,JMP(3),BPB,25个字节,0x00,OEM NAME(8),512,Sectors per cluster,Bytes per sector,Reserved sector count,2,0x10,Maximum number of root directory entries2个字节,最大512FAT12/16,Media descriptor 参见这里,Sectors per FAT for FAT12/16,Hidden sectors,Total sectors,Number of h
8、eads,Sectors per track,# of FATs,0x20,Operating system boot code,Extended BPB,for FAT12/16,0x20,Physical drive number,serial number,Total sectors,0x30,padded with blanks,FAT type,补空格,FAT12或16,Volume Label,55和AA,Reserved,Extended boot signature,0x1F0,Total sectors,Extended BPB,for FAT32,Operating sys
9、tem boot code,0x20,Sectors /FAT,0x30,FAT type,补空格,“FAT32 ”,Volume Label, 补空格,55和AA,0x40,0x50,serial number,Physical drive number,Reserved,Extended boot signature,Version,Cluster number of root directory start,Reserved,Sector # of a copy of this boot sector,Sector # of FS Information Sector,FAT Flags
10、,0x1F0,File system information sector,File system information sector空闲簇的个数;最近分配出去的簇号,http:/ sector)FAT表1:Start + # of Reserved Sectors FAT表2:Start + # of Reserved SectorsFAT表大小Data area:Start + # of Reserved + (# of Sectors Per FAT * 2),http:/ directory, hidden, read-only, system and volume)创建日期和时间第
11、一个簇的编号大小FAT12/16有专门的根目录区域FAT32的根目录存放在数据区域,EA-Index (used by OS/2 and NT) in FAT12 and FAT16, High 2 bytes of first cluster number in FAT32,目录格式(8.3entry),File name,补空格,8字节,extension,(1),(1),(1),(2),(2),(2),(2),(2),(2),(2),Size,4字节,First cluster in FAT12/16;Low 2 bytes of first cluster in FAT32,Last
12、modified date,Last modified time,Last access date,Create date,Create time,Create time, 10ms*(0199),Reserved,File Attributes,0x00,0x10,3字节,文件属性,FAT的长文件名,8.3entry,受限;超过?若干个长文件名目录项(倒序)短文件名目录项一个文件最多20个,可以容纳255个UTF-16字符最后一个有效字符后,填写0x00 0x00,此后填充0xFF 0xFF,长文件名举例,假设文件名“File with very long filename.ext ”,序列
13、号的最高位(第8位)用作判断该项是否被删除序列号的第7位,用作判断是否最后长文件名的最后一项,演示?格式化FAT32查看FAT找到根目录在根目录下,创建目录、文件;删除;恢复再次格式化;恢复安全删除,文件恢复,file recovery,实验中用到的工具磁盘相关磁盘物理组织和结构磁盘逻辑组织和结构FAT32文件恢复Ext2文件恢复,Ext2文件恢复,Linux文件系统简介工具Debugfs命令dd; od; fdisk; mkfs.ext2; mount/umount; cd; ls; md5sum; stat; rm;,在linux下查看MBR,一个获得MBR内容的方法dd bs=512 c
14、ount=1 if=/dev/hda | od -Ax -tx1z -v 在虚拟机中演示,?演示查看硬盘设备文件(/dev目录)磁盘分区(fdisk),后,再次看硬盘设备文件格式化 mkfs.ext2挂载(mount)查看系统中的分区挂载情况编辑(vi)并保存/文件摘要(md5sum)/文件状态(stat)删除文件卸载(umount)/重新挂载为只读debugfs,可读写方式,lsdel/dump文件摘要并比较,Thanks!,The end.,The structure of a hard disk,http:/ with NT 3.1, released mid-1993v1.1 with
15、 NT 3.5, released fall 1994v1.2 written by NT 3.51 (mid-1995) and NT 4 (mid-1996) (occasionally referred to as NTFS 4.0, because OS version is 4.0) v3.0 from Windows 2000(autumn 2001; occasionally NTFS V5.1), Windows Server 2003 (spring 2003; occasionally NTFS V5.2), Windows Vista (mid-2005) (occasi
16、onally NTFS V6.0) and Windows Server 2008The file system specification is a trade secret,Metadata,元数据data about data 例如,跟“书”相关的元数据有:作者、出版社、出版日期、版本号、ISBN号等等Metafile,元文件several files which define and organize the file system常规:不可见,$MFT,Describes all files on the volume file namesTimestampsstream names
17、lists of cluster numbers where data streams resideIndexessecurity identifiersfile attributes like read only, compressed, encrypted, etc. For each file, a file record,MFT的前16项,系统保留第一项与MFT自身相关,MFT record第二项与MFT的镜像备份相关,MFT mirror record上述两个文件的位置信息都保存在NTFS分区中的启动扇区中第三项与日志文件有关,用来进行文件,a simplified illustra
18、tion of the MFT structure,文件和文件属性,每个文件都由一组文件属性表示Standard Information,例如时间戳和链接数 Attribute List,用来链接不在MFT中的属性记录 File Name Security Descriptor,描述属主信息以及访问控制信息 Data,文件数据 Object ID Logged Tool Stream Reparse Point,用于卷的mount点Index Root Index Allocation Bitmap Volume Information,仅$Volume,卷版本Volume Name ,仅$Volume,卷标,用于目录和其他索引,MFT Record for a Small File or Directory,NTFS 分区布局;启动扇区,Boot sector,About 12,BPB & Extended BPB,