1,利用下面的代码编译成32位的程序,然后在64位操作系统中放入OD中进行调试。

#include<Windows.h>
#include<stdio.h>
void main()
{char a[100] = { 0 };char b[100] = { 0 };ReadProcessMemory(GetCurrentProcess(), a, b, 5,NULL);}

2,F7跟进,然后我们就进入到Kernel32.dll中,继续F7跟进,进入到KernelBase.dll中,



3,再继续跟进call dword ptr fs:[0x000000C0] 进入这是一个调用门,跟进进入到jmp far中,这里之前都是32位的地址,
这个jmp far就进入到64位地址,而且模块是wow64Cpu.dll



4,Wow64SystemServiceEx进入到这个函数,这个函数的作用跟kifastcallEntry有点类似,查找系统服务表应该选择第一张表还是第二张表,根据函数序号,找到函数地址执行。

5,进入到call r12执行函数中,在wow64模块的一个函数,然后我们进入NtReadVirtyalMemory中,然后进入到ntdll中的
NtReadVirtualMemory函数,经过这个函数我们就真正进入到内核里面了。


总结:
1,32位程序调用系统函数流程:
ReadProcessMemory->Kernel32->KernelBase->wow64cpu->wow.dll->ntdll->内核
2,存在2张服务表,一张在Wow64SystemServiceEx中,一张在系统内核中
3,通过调用们和远跳转进入到从32位寻址编成64位寻址
4,具体分析见Excel

win32程序时如何在64位操作系统上运行的相关推荐

  1. VB 6.0 如何在64位操作系统下运行!

    XP系统已经被停止维护很长一段时间了,但是还是有不少朋友可能还没有升级到WIN7或更高的操作系统.对于使用VB6.0作为开发工具的朋友来说,是否升级到64位操作系统,是个有点纠结的问题. 我们无外乎几 ...

  2. 在64位操作系统上运行32位的程序

    运行 32 位程序 WOW64 子系统使 32 位程序能够在基于 x64 版本的 Windows Server 2003 和 Windows XP 专业 x64 版的运行而不用修改.WOW64 子系统 ...

  3. 32位程序在64位系统上运行

    32位程序在64位系统上运行 32位系统下的MFC文件,怎么在64位的系统上面运行? 先将32位的应用程序转换为64位的应用程序. 从32位应用程序到64位应用程序 编译:starlight 这篇文章 ...

  4. 在64位操作系统上使用FlashDevelop的Debug功能

    来自:http://zengrong.net/post/1692.htm 本站文章除注明转载外,均为本站原创或者翻译. 本站文章欢迎各种形式的转载,但请18岁以上的转载者注明文章出处,尊重我的劳动,也 ...

  5. 64位系统上运行32位程序的内存限制

    64位系统上运行32位程序能否申请到8G内存? 收藏到手机    转发   评论 2010-01-20 10:56 申请不到,因为64为系统在运行32位程序的时候只是为了向下兼容而已,对于32位程序来 ...

  6. 32位dll转64位工具_如何在64位系统中运行32位或16位程序

    由于CPU和系统架构的更新,现行主流的Windows系统已经是64位.然而许多人还恋恋不舍的一些老游戏或老程序已经没有了更新.在64位的系统上运行这些程序,往往会出现运行故障.如何才能解决这个烦心事? ...

  7. 禁止32位安装包运行在64位操作系统上

    Windows installer提供了一个"Msix64"属性帮我们检测当前系统是32位还是64位. The Msix64 property is defined only if ...

  8. Windows 32位程序在64位操作系统下运行

    VS2013新建的VC++项目默认的组件平台是32位 要将它编译为64位程序,按以下步骤: 1.点击"Win32"下拉框,打开"配置管理器" 2.点击" ...

  9. 如何简单的在阿里云centos7.6 64位操作系统上手动搭建LNMP环境(Nginx1.14.2+PHP7.x+mysql5.7)

    步骤如下: 开通云服务器 建站首先要有服务器和域名,对于个人使用的小型网站,一台1核CPU|2G内存|1M带宽|40G系统盘的云服务器ECS实例即可满足需要.目前国内主流云服务提供商为阿里云.腾讯云. ...

最新文章

  1. 数据分析之Pandas合并操作总结
  2. 环境微生物期刊—Applied and Environmental Microbiology
  3. 基于OHCI的USB主机 —— OHCI(端点)
  4. 【旧文章搬运】Win7可变对象头结构之InfoMask解析
  5. 30年来我只坚持三件事
  6. ad20中怎么多选操作改层_在操作系统中CPU是怎么调度的
  7. 同一主机的多个子进程使用同一个套接字_在操作系统中进程是如何通信的
  8. Shutdown Abort :亚马逊成功迁移物流业务中最后一个Oracle数据库
  9. Custom Sublime Text Build Systems For Popular Tools And Languages
  10. a href='../目录 +变量+ ' download='../目录 +变量+“'查看附件/a 使用变量
  11. ug80浩强工具_ug浩强工具安装软件下载-ug浩强工具2.45 官方免费版-东坡下载
  12. [高西泉] 数字信号处理(第四版)程序集
  13. 烽火通信力推SDN技术在网络中实现
  14. android怎么防8门神器,八门神器(GameKiller)怎么用?安卓版使用教程
  15. 没有人脉如何靠内推进大厂?内推真的那么神吗?带你搞透内推到底是什么
  16. linux 运维工程师必备技能
  17. 爱普生LQ-635K针式打印机打链式打印纸设置自动切纸方法
  18. java代码借助插件生成组织架构图并实现导出功能
  19. 网页视频播放的去Flash方案
  20. 使用Python进行数据分析——线性回归分析

热门文章

  1. C++ 栈实现回文数判断
  2. Angular4_层级表格,表头固定
  3. 《牛津字典精华总结》- 初阶系列 - 字母 - C
  4. settext 在android的作用,setText()不起作用
  5. mysql语句创建临时表并存入数据_mysql创建临时表,将查询结果插入已有表中 | 学步园...
  6. 996、8116、007,要命的工作,你干不干?
  7. 黑石五子棋3.7解版_黑石测试版!!!
  8. 牛客练习赛79 A- 炼金术师 题解 【贪心】
  9. 简单步骤:wps如何从一页之后开始定义页眉和页脚
  10. 路由软件故障,小米路由器如何恢复出厂设置