1 / 54

安全操作系统

安全操作系统. 中国科学技术大学计算机系 陈香兰( 0512 - 87161312 ) xlanchen@ustc.edu.cn 助教:裴建国 Autumn 2008. 实验讲解. 口令破解, Password cracking 文件恢复, file recovery 缓冲区溢出 系统安全 安全审计 文件事件审计 主机安全审计. 文件恢复, file recovery. 实验中用到的工具 磁盘相关 磁盘物理组织和结构 磁盘逻辑组织和结构 FAT32 文件恢复 Ext2 文件恢复. 工具. Winhex

cirila
Download Presentation

安全操作系统

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 安全操作系统 中国科学技术大学计算机系 陈香兰(0512-87161312) xlanchen@ustc.edu.cn 助教:裴建国 Autumn 2008

  2. 实验讲解 • 口令破解,Password cracking • 文件恢复,file recovery • 缓冲区溢出 • 系统安全 • 安全审计 • 文件事件审计 • 主机安全审计

  3. 文件恢复,file recovery • 实验中用到的工具 • 磁盘相关 • 磁盘物理组织和结构 • 磁盘逻辑组织和结构 • FAT32文件恢复 • Ext2文件恢复

  4. 工具 • Winhex • 下载evaluation版:http://winhex.en.softonic.com/ • FinalData • 下载Demo版,有限时间;有限使用http://www.finaldata.com/ • 文件粉碎机 • 下载,很多网站 • 例如filekiller • Debugfs,Linux自带

  5. 文件恢复,file recovery • 实验中用到的工具 • 磁盘相关 • 磁盘物理组织和结构 • 磁盘逻辑组织和结构 • FAT32文件恢复 • Ext2文件恢复

  6. cylinder/head/sector Illustration of a hard disk  http://www.microsoft.com/resources/documentation/windowsnt/4/server/reskit/en-us/resguide/diskover.mspx?mfr=true

  7. Tracks and Cylinders

  8. Sectors and Clusters

  9. 文件恢复,file recovery • 磁盘相关 • 磁盘物理组织和结构 • 磁盘逻辑组织和结构 • FAT32文件恢复 • Ext2文件恢复

  10. 关于PC的启动过程,可以参见这里:Boot sequence on standard PC (IBM-PC compatible) MBR • IA32 IBM PC系统采用MBR分区表方案 • 系统启动时,首先执行ROM BIOS中的固件 • 该固件将会装载( 0x7C00 )并执行MBR中的boot loader • 运行在实模式 • MBR中的boot loader将查找分区表,找到活动分区,加载该分区启动扇区并执行 • 与FS类型以及OS类型有关 • 通常用来加载OS相关的secondary bootstrap loader,例如io.sys, ntldr

  11. 512字节的MBR • =446字节的boot loader • +64字节的分区表 • +2字节的signature:0xAA55 • track 0, head 0, and sector 1 演示本机磁盘管理信息

  12. 分区表, partition table • 4项,MBR 446字节开始的64个字节,偏移分别 • Partition 1 0x01BE (446) • Partition 2 0x01CE (462)  • Partition 3 0x01DE (478)  • Partition 4 0x01EE (494)  • 每项16个字节 An example http://blogs.msdn.com/ntdebugging/archive/2007/06/19/how-windows-starts-up-part-1-of-4.aspx

  13. 分区表项(细)

  14. 关于更多的system id,参考这里

  15. FAT Partition Boot Sector BPB http://www.ntfs.com/fat-partition-sector.htm 找到并加载Io.sys …… 关于Windows 95的启动过程,参考这里

  16. NTFS Partition Boot Sector • 关于Windows 2000的启动,参见Ntldr • Vista和server 2008:winload.exe和Windows Boot Manager 找到并加载Ntldr ……

  17. 演示? • 打开整个磁盘,看分区,MBR

  18. Partition recovery • 误删一个分区? • TestDisk • gpart • 有些磁盘管理工具,在删除分区时,会写覆盖分区前部的几个扇区 • Windows 2000/XP,第一个扇区 • 需要有备份的启动扇区配合恢复 • 病毒? • 分区时突然掉电/死机? • 安装或删除多OS之一? 查杀病毒恢复分区表 重新分区?? fdisk /mbr

  19. 文件恢复,file recovery • 实验中用到的工具 • 磁盘相关 • 磁盘物理组织和结构 • 磁盘逻辑组织和结构 • FAT32文件恢复 • Ext2文件恢复

  20. FAT基本概念 • 扇区 • 簇 • 链式存储(显式) • File Allocation Table • 目录项 • FAT的备份 • FAT#1和FAT#2,大小相等

  21. FAT的格式 • 最早,FAT12,用12bit对簇寻址 • 4096-(000h,001h,FF0h~FFFh)=4078个可用 • 软盘 • Initial FAT16,用16bit对簇寻址,65517 • 受限于16位扇区号,分区最大32MB • Final FAT16,1987 • 磁盘技术:可以使用32位的扇区号 • sectors-per-cluster<=64 • 标准扇区大小512字节,簇最大32KB,分区最大2G • FAT32,32位,其中28位用来寻簇 • 若32KB的簇,则8TB,理论上 • 受限于bootsector,32位扇区号,实际上最大2TB

  22. FAT表的大小 • 簇数×(12/16/32) • 以扇区为单位向上取整 • FAT表项的作用(根据表项的编号和表项的值) • 标明磁盘类型 • 链接一个文件的各个簇 • 标明坏簇和可用簇

  23. FAT表项的值 ? 不能用作next指针

  24. FAT的第0项 • 首字节标明磁盘类型,参见这里 • FAT的第1项 • 不用

  25. FAT 分区布局

  26. FAT32 boot sector

  27. BPB Sectors per cluster • 25个字节 Reserved sector count Bytes per sector 0x00 JMP(3) OEM NAME(8) 512 0x10 2 Hidden sectors 0x20 Total sectors Number of heads # of FATs Sectors per track Maximum number of root directory entries 2个字节,最大512 FAT12/16 Sectors per FAT for FAT12/16 Media descriptor 参见这里

  28. Extended BPB,for FAT12/16 Physical drive number Reserved Extended boot signature 0x20 Total sectors serial number Volume Label, Operating system boot code … …padded with blanks FAT type,补空格,FAT12或16 0x30 0x1F0 55和AA

  29. Extended BPB,for FAT32 FAT Flags Cluster number of root directory start 0x20 Total sectors Sectors /FAT Version Reserved 0x30 Sector # of a copy of this boot sector Sector # of FS Information Sector Physical drive number Extended boot signature Reserved 0x40 serial number Volume Label, 补空格… … Operating system boot code … FAT type,补空格,“FAT32 ” 0x50 55和AA 0x1F0

  30. File system information sector • File system information sector • 空闲簇的个数;最近分配出去的簇号 http://home.teleport.com/~brainy/fat32.htm

  31. FAT各部分的偏移计算 • Bootsector:分区的第一个扇区(start sector) • FAT表1: • Start + # of Reserved Sectors • FAT表2: • Start + # of Reserved Sectors+FAT表大小 • Data area: • Start + # of Reserved + (# of Sectors Per FAT * 2) http://home.teleport.com/~brainy/fat32.htm

  32. FAT的目录 • 目录是一个特殊的文件 • 每个目录项32字节 • 名称 • 扩展名 • 属性(archive, directory, hidden, read-only, system and volume) • 创建日期和时间 • 第一个簇的编号 • 大小 • FAT12/16有专门的根目录区域 • FAT32的根目录存放在数据区域

  33. 日期格式: 时间格式: 日, 5位 Year,7位, 从1980~2107 月,4位 Seconds/2, 5位 Hours,5位 Minutes,6位 File Attributes 目录格式(8.3entry) Reserved Create time, 10ms*(0~199) Create time 3字节 0x00 File name,补空格,8字节 extension (1) (1) (1) (2) 0x10 (2) (2) (2) (2) (2) (2) Size,4字节 First cluster in FAT12/16; Low 2 bytes of first cluster in FAT32 Create date Last access date Last modified date Last modified time EA-Index (used by OS/2 and NT) in FAT12 and FAT16, High 2 bytes of first cluster number in FAT32

  34. 文件属性

  35. FAT的长文件名 • 8.3entry,受限;超过? • 若干个长文件名目录项(倒序)+短文件名目录项 • 一个文件最多20个,可以容纳255个UTF-16字符 • 最后一个有效字符后,填写0x00 0x00,此后填充0xFF 0xFF

  36. 长文件名举例 • 假设文件名“File with very long filename.ext ” 序列号的最高位(第8位)用作判断该项是否被删除 序列号的第7位,用作判断是否最后长文件名的最后一项

  37. 演示? • 格式化FAT32 • 查看FAT • 找到根目录 • 在根目录下,创建目录、文件;删除;恢复 • 再次格式化;恢复 • 安全删除

  38. 文件恢复,file recovery • 实验中用到的工具 • 磁盘相关 • 磁盘物理组织和结构 • 磁盘逻辑组织和结构 • FAT32文件恢复 • Ext2文件恢复

  39. Ext2文件恢复 • Linux文件系统简介 • 工具 • Debugfs • 命令 • dd; od; fdisk; mkfs.ext2; mount/umount; cd; ls; md5sum; stat; rm;

  40. 在linux下查看MBR • 一个获得MBR内容的方法 • dd bs=512 count=1 if=/dev/hda | od -Ax -tx1z -v • 在虚拟机中演示

  41. ?演示 • 查看硬盘设备文件(/dev目录) • 磁盘分区(fdisk),后,再次看硬盘设备文件 • 格式化 mkfs.ext2 • 挂载(mount) • 查看系统中的分区挂载情况 • 编辑(vi)并保存/文件摘要(md5sum)/文件状态(stat) • 删除文件 • 卸载(umount)/重新挂载为只读 • debugfs,可读写方式,lsdel/dump • 文件摘要并比较

  42. Thanks! The end.

  43. The structure of a hard disk http://oreilly.com/catalog/debian/chapter/book/ch02_03.html

  44. http://www.hddtech.co.uk/resource/hard-disk-functionality.htmhttp://www.hddtech.co.uk/resource/hard-disk-functionality.htm

  45. NTFS文件系统,基本概念 • NTFS简单发展史 • v1.0 with NT 3.1, released mid-1993 • v1.1 with NT 3.5, released fall 1994 • v1.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) (occasionally "NTFS V6.0") and Windows Server 2008 • The file system specification is a trade secret

  46. Metadata,元数据 • "data about data" • 例如,跟“书”相关的元数据有:作者、出版社、出版日期、版本号、ISBN号等等 • Metafile,元文件 • several files which define and organize the file system • 常规:不可见

  47. $MFT • Describes all files on the volume • file names • Timestamps • stream names • lists of cluster numbers where data streams reside • Indexes • security identifiers • file attributes like "read only", "compressed", "encrypted", etc. • For each file, a file record

  48. MFT的前16项,系统保留 • 第一项与MFT自身相关,MFT record • 第二项与MFT的镜像备份相关,MFT mirror record • 上述两个文件的位置信息都保存在NTFS分区中的启动扇区中 • 第三项与日志文件有关,用来进行文件

  49. a simplified illustration of the MFT structure

More Related