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

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

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

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

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

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

在《 渗透测试之内核安全系列课程:Rootkit技术初探 》之前的文章中,我们讲述了 GDT 全局描述符表、LDT 局部描述符表、GDTR 全局描述符表 寄存器、LDTR 局部描述符表 寄存器 、一致性代码、非一致性代码、实模式、保护模式、线性地址 等非常重要的基础知识点内容!

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

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

注意,本章中的 比特位排序,是从 数字 1 开始计算的,第N位 对应的 比特位索引第N位 - 1

注意,本章中的 字节排序,是从 数字 1 开始计算的,第N个字节 对应的 字节索引第N个字节 - 1 

说起,线性地址 到 物理地址 的 转换,我们不得不提起几个非常重要的 控制寄存器 

CR0 寄存器、CR1 寄存器、CR2 寄存器CR3 寄存器 。 

其中,CR1 寄存器 ,并没有被实际使用,所以 暂时 忽略 ! 

这里,重点只讲 CR0 控制寄存器 、CR2 页故障线性地址寄存器、 CR3 页目录基址寄存器

CR0 控制寄存器,最重要的两个比特位,分别是第1位第32位,刚好是 CR0寄存器的内容值的“ 头 ” 和 “ 尾 ” !

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

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

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

在禁用 CPU 的 内存分页机制 时,线性内存地址 等同于 物理内存地址!

现在,让我们来科普一下 布尔值布尔运算 存在 的 意义

这主要是为了让您更加深刻理解01 所代表的 布尔运算 意义 !

在我之前发布的一些文章中,我提到了 布尔值 的 运算 !

非真即假,非假即真!不是真的?那么就一定是假的!不是假的?那么就一定是真的!

布尔值,只会存在 两个值,True 真,或者 False 假

在 计算机领域 的 二进制 世界 中,数字 1 ,通常代表 True 真

在 计算机领域 的 二进制 世界 中,数字 0 ,通常代表 False 假

在 计算机领域 的 二进制 世界 中,数字 1 ,通常代表 条件成立

在 计算机领域 的 二进制 世界 中,数字 0 ,通常代表 条件不成立

在 计算机领域 的 二进制 世界 中,数字 1 ,通常代表 开启

在 计算机领域 的 二进制 世界 中,数字 0 ,通常代表 关闭

这些知识,都属于 计算机领域 中 技术知识 学习方面 的 小技巧

CR2 页故障线性地址寄存器,主要用于 在页异常情况发生时,报告相应的出错信息

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

操作系统中的页异常处理程序(其实就是 缺页中断 所对应的  中断服务程序)可以通过检查 CR2 页故障线性地址寄存器 的 内容值 的方式

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值