




已阅读5页,还剩6页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
这两天在逆向分析MmIsAddressValid这个函数,学习了下PAE分页机制,并且也发现了一个问题。就是本机ntoskrnl中导出的MmIsAddressValid函数是采用非PAE方式的,而本机XP SP2系统采用的却是PAE方式的分页机制。这个可以通过windbg中看到。 在这里写出来与大家分享。关于PAE (Physical Address Extension 物理地址扩展)是 Intel x86 Pentium Pro处理器引入的一种内存映射模式。在此模式下CPU可以访问多达64GB的物理内存。在PAE模式下PDE和PTE为64位,而不是原来的32位。其结构如下:lkd dt _hardware_ptent!_HARDWARE_PTE +0x000 Valid : Pos 0, 1 Bit +0x000 Write : Pos 1, 1 Bit +0x000 Owner : Pos 2, 1 Bit +0x000 WriteThrough : Pos 3, 1 Bit +0x000 CacheDisable : Pos 4, 1 Bit +0x000 Accessed : Pos 5, 1 Bit +0x000 Dirty : Pos 6, 1 Bit +0x000 LargePage : Pos 7, 1 Bit +0x000 Global : Pos 8, 1 Bit +0x000 CopyOnWrite : Pos 9, 1 Bit +0x000 Prototype : Pos 10, 1 Bit +0x000 reserved0 : Pos 11, 1 Bit +0x000 PageFrameNumber : Pos 12, 26 Bits +0x000 reserved1 : Pos 38, 26 Bits +0x000 LowPart : Uint4B +0x004 HighPart : Uint4B以上具体理论部分可以看下intel的v3.System Programming Guide。上面有这两种分页方式的介绍。非PAE分页,理论部分,看图,分4K 和 4M两种页。下面是ida 看到的ntoskrnl.exe中导出的MmIsAddressValid。.text:0040C661 ; BOOLEAN _stdcall MmIsAddressValid(PVOID VirtualAddress).text:0040C661 public MmIsAddressValid.text:0040C661 MmIsAddressValid proc near ; CODE XREF: sub_40D65E+Cp.text:0040C661 ; sub_415459:loc_415470p .text:0040C661.text:0040C661 VirtualAddress = dword ptr 8.text:0040C661.text:0040C661 ; FUNCTION CHUNK AT .text:0041B84E SIZE 00000007 BYTES.text:0040C661 ; FUNCTION CHUNK AT .text:0044A4F2 SIZE 00000019 BYTES.text:0040C661.text:0040C661 mov edi, edi.text:0040C663 push ebp.text:0040C664 mov ebp, esp.text:0040C666 mov ecx, ebp+VirtualAddress.text:0040C669 mov eax, ecx.text:0040C66B shr eax, 14h ; 右移20位.text:0040C66E mov edx, 0FFCh ; 取高10位.text:0040C673 and eax, edx.text:0040C675 sub eax, 3FD00000h ; 加上0xc0300000.text:0040C675 ; PDE = (VA 22) 12) 22)12) 22) 12) u MmIsAddressValid l 50nt!MmIsAddressValid:80510fa0 8bff mov edi,edi80510fa2 55 push ebp80510fa3 8bec mov ebp,esp80510fa5 51 push ecx ;申请空间 EBP - 480510fa6 51 push ecx ;申请空间 EBP - 880510fa7 8b4d08 mov ecx,dword ptr ebp+8 ; 取参数,虚拟地址80510faa 56 push esi80510fab 8bc1 mov eax,ecx80510fad c1e812 shr eax,12h ; 右移12H(18位,相当于213),即线性地址高11位(32- 21)代表页目录索引,而页目录中每 ; 个索引占8个字节,故该索引在页目录中的相对偏移位置是页目录索引*8,也就是12 12)21)12)21)12) !pte VA 00000000PD
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年注册会计师(CPA)考试 会计科目冲刺押题试卷及解题技巧分享
- 2025年公务员考试行测数量关系考前冲刺押题卷
- 2025年英语专业四级阅读理解训练试卷 情景对话精讲
- 2025年注册会计师考试 会计科目押题冲刺试卷及解析
- 民法典新旧课件
- 2026届安徽省合肥市巢湖市化学高二上期末质量跟踪监视试题含答案
- 2026届青海省海西高三化学第一学期期末考试试题含解析
- 王熙凤的性格特点
- 王昌龄简介课件
- 2026届广东省广雅中学化学高一上期末考试试题含解析
- 餐饮行业数字化门店运营与管理效率提升报告
- S7-1200 PLC原理及应用基础 课件 第5章 S7-1200 PLC的模拟量处理
- 2024年四川省古蔺县事业单位公开招聘医疗卫生岗笔试题带答案
- 2025-2030中国驾驶培训行业市场发展前瞻及投资战略研究报告
- 2024年版中华民族共同体概论专家大讲堂课件全集第10章至16章节讲根据高等教育出版社教材制作
- 生产过程控制制度
- 糖尿病足的预防和护理
- 导尿管相关感染防控课件
- 国网公司合规管理
- 生物质气化并网发电行业跨境出海战略研究报告
- 沿墙架空电缆敷设施工方案
评论
0/150
提交评论