随笔分类 -  windows系统

解析NTFS(二)DBR\MFT部分
摘要:前面解析MBR,得到每个分区的起始扇区号,以及每个分区的大小;至于该分区的详细信息,则取决于该分区卷加载的文件系统。比如:簇大小,扇区大小,文件系统类型,该分区使用情况,介质描述,隐含扇区,扇区总数……解析完MBR,跳转到引导分区的第一个扇区,即DBR;然后从DBR中的BPB中得到改卷的基本参数信息,定位MFT起始簇,进而定位到文件系统元数据文件位置,对该分区上的所有文件和目录进行遍历解析。下面分步说明:DBR的作用简单的来说,计算机启动时执行完BOIS的启动代码,检查各硬件设备正常后,JMP到MBR的引导代码进行执行;然后由MBR引导至活动分区的DBR,再由DBR引导操作系统。如:DBR调用 阅读全文

posted @ 2013-02-24 12:50 紫 陌 阅读(12020) 评论(0) 推荐(1)

mft(转载)
摘要:1前言NTFS是现在流行的磁盘格式.想想当年FAT32的时代都差不多过去了,现在装机差不多都是NTFS.我们平时编程时使用文件操作函数基于操作系统,所以不管磁盘是何种格式,都只是用相同的几个函数就可搞掂,似乎分析NTFS文件系统没有什么必要.但是如果要搞些底层一点的东西,比如数据恢复啊,磁盘分析啊等等,甚至搞一些高级病毒之类,了解NTFS文件系统都很有必要! 现在我准备开始这个研究,现在的我对于这个是一窍不通,所以也不知从哪里开始,只能见一步学一步.所以借爱delphi(www.aidvr.com)网站发一些杂乱无章的笔记. 先定一个目标,要实现NTFS文件系统解析,写出一个程序,能在NTFS 阅读全文

posted @ 2013-02-24 12:19 紫 陌 阅读(5466) 评论(0) 推荐(1)

TSS任务状态段
摘要:任务状态段(Task State Segment)是保存一个任务重要信息的特殊段。任务状态段描述符用于描述这样的系统段。任务状态段寄存器TR的可见部分含有当前任务的任务状态段描述符的选择子,TR的不可见的高速缓冲寄存器部分含有当前任务状态段的段基地址和段界限等信息。 TSS在任务切换过程中起着重要作用,通过它实现任务的挂起和恢复。所谓任务切换是指,挂起当前正在执行的任务,恢复或启动另一任务的执行。在任务切换过程中,首先,处理器中各寄存器的当前值被自动保存到TR所指定的TSS中;然后,下一任务的TSS的选择子被装入TR;最后,从TR所指定的TSS中取出各寄存器的值送到处理器的各寄存器中。由此可. 阅读全文

posted @ 2012-10-25 10:52 紫 陌 阅读(5989) 评论(0) 推荐(1)

PEB-------------模块链表Ldr
摘要:一、xp下peb结构kd> dt _pebntdll!_PEB +0x000 InheritedAddressSpace : UChar +0x001 ReadImageFileExecOptions : UChar +0x002 BeingDebugged : UChar +0x003 SpareBool : UChar +0x004 Mutant : Ptr32 Void +0x008 ImageBaseAddress : Ptr32 Void +0x00c Ldr : Ptr32 _PEB_LDR_DATA;进程加载的模块链表 +0x010 ProcessParameters : 阅读全文

posted @ 2012-05-10 16:37 紫 陌 阅读(3455) 评论(0) 推荐(1)

硬盘基本知识
摘要:1.磁道,扇区,柱面和磁头数 硬盘最基本的组成部分是由坚硬金属材料制成的涂以磁性介质的盘片,不同容量硬盘的盘片数不等。每个盘片有两面,都可记录信息。盘片被分成许多扇形的区 域,每个区域叫一个扇区,每个扇区可存储128×2的N次方(N=0.1.2.3)字节信息。在DOS中每扇区是128×2的2次方=512字节,盘片表 面上以盘片中心为圆心,不同半径的同心圆称为磁道。硬盘中,不同盘片相同半径的磁道所组成的圆柱称为柱面。磁道与柱面都是表示不同半径的圆,在许多场合, 磁道和柱面可以互换使用,我们知道,每个磁盘有两个面,每个面都有一个磁头,习惯用磁头号来区分。扇区,磁道(或柱面)和磁 阅读全文

posted @ 2012-05-03 23:02 紫 陌 阅读(839) 评论(0) 推荐(0)

SEH异常处理
摘要:SEH是应用最为广泛,却没有被微软公开技术之一,所有不同windows版本,SEH可能有所不同。SEH链表位置:fs:[0]->线程信息块TIB,TIB.ExceptionList->SEH链表一)有关SEH链表结构:1)线程信息块TIB结构kd> dt _NT_TIBnt!_NT_TIB +0x000 ExceptionList : Ptr32 _EXCEPTION_REGISTRATION_RECORD ;SEH链表头 +0x004 StackBase : Ptr32 Void +0x008 StackLimit : Ptr32 Void +0x00c SubSystem 阅读全文

posted @ 2012-04-25 10:50 紫 陌 阅读(4645) 评论(0) 推荐(0)

FS寄存器
摘要:FS寄存器指向当前活动线程的TEB结构(线程结构),缺省情况下fs:error表示fs未使用,若要引用fs寄存器,需fs:nothing后,才可使用。XP下teb结构如下kd> dt _tebnt!_TEB +0x000 NtTib : _NT_TIB ;SEH链表指针 +0x01c EnvironmentPointer : Ptr32 Void +0x020 ClientId : _CLIENT_ID;cid +0x028 ActiveRpcHandle : Ptr32 Void +0x02c ThreadLocalStoragePointer : Ptr32 Void +0x030 阅读全文

posted @ 2012-04-25 09:05 紫 陌 阅读(2078) 评论(0) 推荐(0)

导航