【软件安全】查看可执行文件4G内存的分布,PDE&PTE与文件节属性关联

执行编写的“Hello world,查看其4G内存的分布及其PDEPTE内容:


1.安装windbg调试器:


Install Debugging Tools for Windows 32-bit Version:
http://www.microsoft.com/whdc/devtools/debugging/installx86.mspx
Install Debugging Tools for Windows 64-bit Versions:
http://www.microsoft.com/whdc/devtools/debugging/install64bit.mspx


2.配置windbg:


(1)从微软官网上下载Symbols:

     http://msdl.microsoft.com/download/symbols

     解压到相应文件夹,此处解压到f:/symbols

 

(2)添加环境变量_NT_SYMBOL_PATH:

    

    


(3)打开windbgFile->Symbol File Path,填上Symbols下载安装的地址:



(4)File->OpenExecutable->可以选择一个可执行文件进行调试:


 !address -summary:



(5)若要进入内核调试,重启windbg,管理员模式运行,File->Kernel Debug


a.找到目标可执行文件:



b . 页目录基地址:

方法一:

方法二:


(6)节属性与PDE&PTE的关联:


a.使用!address查看:




b.使用PEView打开hello4.exe

此处以查看.text节为例:



我们可以看到.text节开始于00401000,属性为60500020:可读+可执行+16字节对齐+包含代码


在!address里截取相关信息:


保护属性为PAGE_EXECUTE_READ(执行并可读),于.text节属性一致


(7)手动修改hello4”可执行文件的节属性(RWX),然后执行该程序,分析其PDEPTE内容的变化


a.在winhex中修改.text节属性:

 

原属性:60500020,对应于PAGE_EXECUTE_READ



修改为:80500020,可写+16字节对齐+包含代码:



b.重新在windbg中打开hello4.exe,输入!address



可以看到,保护属性变成了PAGE_WRITECOPY(写时拷贝)。


另:保护模式:Protect值,所有可用的保护包括:PAGE_NOACCESS(不可访问),PAGE_READONLY(只读),PAGE_READWRITE(读写),PAGE_EXECUTE(可执行), PAGE_EXECUTE_READ(执行并可读),PAGE_EXECUTE_READWRITE(执行并可读写),PAGE_WRITECOPY(写时拷贝),PAGE_EXECUTE_WRITECOPY(执行,并写时拷贝), PAGE_GUARD(保护)。













  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值