渗透测试之内核安全系列课程:Rootkit技术初探(四)

今天,我们来讲一下内核安全!

本文章仅提供学习,切勿将其用于不法手段!

目前,在渗透测试领域,主要分为了两个发展方向,分别为Web攻防领域和PWN(二进制安全)攻防领域。在PWN二进制领域免杀技术,一直是后渗透利用阶段的重要安全技术之一。

想要免杀,需要了解的安全技术知识包括软件加壳代码混淆(例如,使用花指令)、隐匿技术(例如,Rootkit技术)、动态加密内容

接上一篇文章,我们来继续讲述下 Rootkit技术 的相关基础知识点内容

在《 渗透测试之内核安全系列课程:Rootkit技术初探 》之前的文章中,我们讲述了 GDT 全局描述符表、LDT 局部描述符表、GDTR 全局描述符表 寄存器、LDTR 局部描述符表 寄存器 、一致性代码、非一致性代码、实模式、保护模式、线性地址 、PDPT 页目录指针表、PDT 页目录表、PTT 页表、P 页 、PDE 页目录表项 、PTE 页表项 、CR0 控制寄存器、CR2 页故障线性地址寄存器、 CR3 页目录基址寄存器 等非常重要的 基础知识 点 内容 

这些内容,是学习 Rootkit 技术 的基础 !

今天,我们来继续来重点讲解下 线性地址 到 物理地址 的 转换过程

首先,让我们来复习一下,相关的技术知识点

CR0 控制寄存器,最重要的两个比特位,分别是第 1 位 第 32 位

CR0控制寄存器的第1位 PE控制保护模式 的 开启关闭 !当 PE 位 是 1 时,保护模式 处于 开启 状态 ,当 PE 位 是 0 时,保护模式 处于 关闭 状态,此时 计算机 运行于 实模式

CR0控制寄存器的第32位 PG控制内存分页机制 的 开启关闭 !当 PG 位 是 1 时,内存分页机制 处于 开启 状态 ,当 PG 位 是 0 时,内存分页机制 处于 关闭 状态,此时 计算机 运行于 实模式

如果需要 启用 内存分页机制,那么 第 1 位 PE 位第 32 位 PG 位 的值,均要为 1

CR2 页故障线性地址寄存器,主要用于 在页异常情况发生时,存储 产生异常线性地址

发生页异常时(例如,指定的内存分页,并不存在 !这时,会触发 缺页中断 )CPU 会把引起 缺页中断线性地址 保存在 CR2 页故障线性地址寄存器 之中!

操作系统中的页异常处理程序(其实就是 缺页中断 所对应的  中断服务程序)可以通过检查 CR2 页故障线性地址寄存器 的 内容值 的方式,去筛查出 缺页中断 这个异常 是 由 虚拟地址空间(线性地址空间)中的哪个 线性地址访问  所引起的(CR2 页故障线性地址寄存器,主要用于定位错误,以及通过分页交换文件去辅助载入内存分页)!

我们需要知道,针对 缺页中断 ,从 硬盘 中 去载入 相对应的 页表资源 或 页资源,是由 缺页中断 对应的  中断服务程序 去自动完成的 !CR2 页故障线性地址寄存器,在 从 硬盘空间  向 内存空间 载入  指定页表资源 或 指定页资源 时,发挥了非常重要作用

CR3 页目录基址寄存器,主要用于 PDT 页目录表PDPT 页目录指针表物理寻址

CR3 页目录基址寄存器,存储了 PDT 页目录表 或 PDPT 页目录指针表物理内存地址

启用PAE 物理地址扩展的基础上,CR3 页目录基址寄存器高 27 位,被用于 进行 PDPT 页目录指针表 物理地址寻址

什么是 PAE 呢?

PAE ,指的是 物理地址扩展

物理地址扩展(PAE) 中央处理器 CPU 的一项功能,它的作用是:使 x86 系列的处理器 能够在支持 PAE 物理地址扩展 技术 的 部分 Windows 操作系统环境(是否支持 PAE 物理地址扩展,与系统版本有关。例如, Windows 7 (32 位)   、Windows Server 2008 仅 (32 位)  、Windows Vista 仅 (32 位)  、Windows Server 2003 仅 (32 位)  、Windows XP (32 位) )中 访问 4 GB 以上物理内存地址。 能够访问的内存物理地址大小,取决于中央处理器CPU能够支持最大内存物理地址上限(例如,64位 CPU,所能支持的最大物理内存)!

未启用 PAE 物理地址扩展机制 之前,32位 线性地址 寻址,线性地址 的 结构高 10 位 的 页目录 表项索引 、中 10 位 的 页表 表项索引、低 12 位 的 页内偏移量 共同组成 !

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值