[发明专利]一种PE程序文件加载执行方法有效
申请号: | 201410594178.3 | 申请日: | 2014-10-30 |
公开(公告)号: | CN104331308B | 公开(公告)日: | 2017-08-22 |
发明(设计)人: | 章立春 | 申请(专利权)人: | 章立春 |
主分类号: | G06F9/445 | 分类号: | G06F9/445 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 620360 四川*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 pe 程序 文件 加载 执行 方法 | ||
技术领域
本发明涉及一种PE程序文件加载执行方法,具体地说:是涉及一种PE文件启动运行时直接通过服务端传输并直接加载PE文件代码和数据到进程内存空间中,初始化并执行,能够实现防止PE文件代码在PE文件启动和运行过程中,PE文件代码被非法利用或泄露。
背景技术
传统的PE文件其加载过程均由操作系统从一个文件系统当中直接读取出PE文件中所包含的代码及数据并结合该PE文件中的PE文件头信息建立新的进程,再通过内存映射或直接复制将数据加载到该进程的内存空间中,做必要的初始化后便开始转入PE文件的代码执行。
传统的方法要求,在PE文件的加载和运行的整个周期当中,如图1所示其相应的PE文件的各个数据部分,包括PE文件头数据,区段数据等必须一直存在于PE文件启动时所存储的文件系统当中,同时还要求PE文件启动和运行时,该PE文件在文件系统当中的PE文件代码是完整的。同时在该PE文件程序运行时,PE文件可以被复制,无法删除。此方法不能防止PE文件在运行的时候,其文件数据被复制,拷贝,从而有可能造成PE文件数据的泄露或被非法利用。
发明内容
本发明的目的在于提供一种PE程序文件加载执行方法,通过将PE文件的代码和数据存储于通过网络与执行PE文件系统相连接的服务端中,在进程建立以后,即时从服务端传输PE文件的代码和数据到执行PE文件程序的系统内存中,并直接将区段数据等除PE文件头数据外的数据加载到相应进程的内存空间当中,初始化并执行。如图2所示,实现在整个PE程序从启动到执行的整个周期当中,执行程序的系统的文件系统当中,不会存在该PE文件的区段代码和区段数据。同时,在程序启动运行后,执行程序的系统的内存中也不会存在完整原始的PE文件代码和数据,从而避免PE文件代码和数据泄露和被非法利用。
为了实现上述目的,本发明采用的技术方案如下:
一种PE程序文件加载执行方法,所述PE程序文件加载执行方法包括以下步骤:
(1)建立只包含有一个PE文件头数据的PE文件
(2)以暂停方式启动步骤(1)所建立的PE文件
(3)从服务端程序接收被加载PE文件运行所必要的代码和数据
(4)将步骤(3)所接收到的代码和数据加载到步骤(2)所创建进程的内存空间当中
(5)向步骤(2)所创建的进程的内存空间当中添加附加处理代码,具体步骤如下:
a.在步骤(2)所创建的进程中申请一段内存空间
b.将附加处理代码写入所申请的内存空间当中
c.修改步骤(2)所创建进程的代码入口,使其转入添加的附加处理代码入口。
(6)恢复步骤(2)所创建进程的状态为运行状态,恢复程序代码的执行。
所述步骤(1)的方法为:由服务端程序在服务端从被动态加载执行的PE文件中复制PE文件头数据并通过网络将数据传输给运行于被加载执行PE文件需要运行的系统中的加载程序。加载程序在接收到步骤(1)中服务端程序传输过来的数据后,在被加载执行PE文件需要被启动的文件位置建立一个文件,并将接收到的数据进行修正后写入文件当中,从而在被加载PE文件需要被启动的文件位置建立一个只包含一个PE文件头数据的PE文件。
所述步骤(2)的方法为:加载程序在启动所述步骤(1)所创建的PE文件时,设定相应的参数,使操作系统创建一个处于暂停状态的新进程。
所述步骤(3)的方法为:加载程序从服务端程序接收被加载执行PE文件运行时所需要的必要的代码和数据。
所述步骤(4)的方法为:加载程序对步骤(3)所接收到的数据进行必要的调整,并根据被加载执行PE文件的原始PE文件头中得区段描述信息将数据写入步骤(2)所创建进程内存空间当中的正确位置。
所述步骤(5)的方法为:加载程序在步骤(2)所创建进程中申请一段带可执行代码属性的内存空间,然后将一段自定义的附加处理代码写入所申请的内存空间,最后将步骤(2)所创建进程的原始代码入口处代码修改为一段跳转到写入的附加处理代码入口处的代码。
所述步骤(6)的方法为:加载程序恢复步骤(2)所创建进程的状态为运行状态。
所述步骤(3)中的必要代码和数据具体包括PE文件头区段描述表所指向的该PE文件位于文件当中的各区段代码或数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于章立春,未经章立春许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410594178.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:消息的接收与发送方法及装置
- 下一篇:一种垃圾焚烧灰渣陶瓷集热板的制备方法