一种基于pe格式的实时监控系统授权码管理的新方法

文档序号:9618553阅读:614来源:国知局
一种基于pe格式的实时监控系统授权码管理的新方法
【技术领域】
[0001] 本发明涉及一种基于PE格式的实时监控系统授权码管理的新方法。
【背景技术】 随着计算机、通信技术的飞速发展,信息安全已成为当前信息时代的一个重要问题。在 信息安全领域,入侵检测技术是信息安全领域非常重要的一项技术。在此,入侵检测系统 (Intrusion detection systems, IDS)用来对计算机用户可能遭受的攻击产生警报,它可 以分析和过滤网络数据包,以及监控系统中的程序行为以防止危险操作的发生。实时监控 技术是入侵检测技术的一种,它能够监控计算机系统上运行的所有程序,拦截未授权的操 作,由用户决定是否继续下一步的调用。授权管理是指实时监控系统按照某种方式删除、添 加以及查找用户对此程序的相关授权记录的方法。由于系统的易用性直接影响了实时监 控系统的销售量,而授权管理的方法是系统易用性的一个重要方面。就授权管理而言,现有 实时监控系统授权管理都是以文件存放的绝对路径来区分不同的可执行文件,从而辨认不 同的可执行文件的授权。这种授权管理方法存在一定的缺陷,例如,当可执行文件的名字或 者存放路径发生改变时,即使可执行文件的内容没有发生修改,监控系统却识辨不出此可 执行文件,所以需要对此可执行文件重新进行一次繁琐的授权,这便降低了系统的易用性。
[0002] 时至今日,利用网络技术,以网络为载体频频暴发的间谍程序、蠕虫病毒、邮件病 毒、QQ病毒、MSN浏病毒、游戏木马等网络新病毒,已经颠覆了传统的病毒概念。与传统的计 算机病毒相比,网络病毒具有以下特点:传播速度大大加快、数量与种类越来越多、病毒暴 发范围广、攻击途径多样化等。在这种趋势下,传统的基于病毒特征码的扫描技术已经显得 捉襟见肘,而基于行为分析的实时监控系统便显得越来越重要。而如今实时监控系统并不 像基于特征码扫描的杀毒软件一样普及,其中有个很重要的原因是实时监控系统的易用性 不高,例如它要求用户对所有运行于操作系统的程序进行繁琐的授权且必须对更改文件 名或者更改了存放路径的可执行文件重新授权,再者,如果存放授权的文件或者数据库损 坏,那么用戶不得不对所有的程序再次授权。以上的这些弊端最终将导致用户不能容忍频 繁反复的授权而最终放弃了实时监控系统的使用。所以,如果能够实现新的授权管理方案 以提高实时监控系统的易用性,这将非常有利于实时监控系统的普及。
[0003] 经对现有技术文献的检索,发现没有任何实时监控系统能够识别改名或者更改路 径但是代码却没有变化的可执行文件。

【发明内容】

[0004] 为解决上述现有的缺点,本发明的主要目的在于提供一种实用的基于PE格式的 实时监控系统授权码管理的新方法,能保证授权码的完整性和认证性,对存储空间的要求 小,同时提高了实时监控系统的易用性。
[0005] 为达成以上所述的目的,本发明的一种基于PE格式的实时监控系统授权码管理 的新方法采取如下技术方案: 一种基于PE格式的实时监控系统授权码管理的新方法,包括授权码的写入和授权码 的读取,其特征在于,授权码写入的步骤为,系统获取要授权的可执行文件的全局路径,系 统保存一个初始密钥,并在内存授权表中设定进程文件的授权码,其格式为,"标识文件签 名授权码1…授权码η编号",其中文件签名为可执行文件的校验码或者哈希值,系统 加密授权码,首先判断可执行文件的存放介质是否可写,如果为只读,则系统直接加密授权 码,否则系统判断要写入授权码的可执行文件是否为Windows保护文件,如果是,则系统直 接加密授权码,否则系统判断进程的映象文件是否为PE格式的可执行文件,如果不是,则 系统直接加密授权码,如果是则系统计算授权码的长度,如果PE可执行文件中现有的可利 用字段能完全存放下授权码,则系统使用保存的密钥加密授权码,如果现有的可利用字段 不足以存放下所有的授权码,则系统继续在PE可执行文件中寻找可利用字段,直到所找的 可利用字段能够存放下完整的授权码,如果系统搜索一遍后仍然没有找到足够的可利用 字段存放,则将剩余未存放的授权码分离出来以备存入授权码数据库中,如果系统的授权 码存放在不连续的可利用字段中,则系统按照上述授权码的格式分割授权码,并且分别对 每一段授权码加密,授权码格式中的编号用于指向下一段授权码的存放位置,系统将授权 码密文写入PE可执行文件中的可利用字段时,若可执行文件的存放介质为只读,或要授权 的可执行文件为Windows保护文件,或还有PE文件中存放不下的授权码密文,则系统将授 权码密文存入授权码数据库文件中,否则,系统向文件驱动发送写请求包,将授权码密文写 入PE可执行文件中。
[0006] 所述授权码读取的步骤为: 1) 系统获取要读取授权码的可执行文件的全局路径; 2) 系统从PE文件中的可利用字段中读取授权码密文时,先判断文件的存放介质是否 可写,如果为只读,则系统从授权码数据库文件中查找可执行文件的授权码,如果没有找到 则给可执行文件提供默认授权码,并写入内存的授权表,系统结束授权码的读过程;如果文 件的存放介质属性为可写,则系统判断可执行文件是否为Windows保护文件,如果是,则系 统从授权码数据库文件中查找可执行文件的授权码,如果没有找到则向可执行文件提供 默认授权码,并写入内存的授权表,系统结束授权码的读过程,否则系统判断可执行文件是 否为PE格式的可执行文件,如果不是,系统从授权码数据库文件中查找可执行文件的授权 码,若没有找到则给可执行文件提供默认授权码,并写入内存的授权表,系统结束授权码 的读过程;如果是则系统向文件驱动发送读请求包,从PE可执行文件中读入授权码密文; 3) 系统用事先保存的密钥对读取的授权码密文解密;检查解密后的授权码标识是否 改变;如果标识改变,则以对话框形式提示用户,由用户决定重新授权或删除可执行文件, 授权码的读操作结束;如果标识未改变,则系统计算PE可执行文件的校验码或者哈希值, 并将得出的值与授权码中的校验码或者哈希值比较,如果不同,则以对话框形式提示用户, 由用户决定重新授权或删除可执行文件,授权码的读操作结束;如果文件校验码或哈希值 相同,则系统检查授权码是否完全读出,如果还有剩余的授权码,则根据授权码末尾的编号 读取后续的授权码密文,重复进行解密步骤,直到授权码密文完全读出为止; 4) 系统将授权码写入内存的授权表中,以便再次查询。
[0007] 采用如上技术方案的本发明,具有如下有益效果: 本发明能保证授权码的完整性和认证性,对存储空间的要求小,同时提高了实时监控 系统的易用性。
【附图说明】
[0008] 图1是本发明的授权码写入流程图。
[0009] 图2是本发明的授权码读取流程图。
【具体实施方式】
[0010] 为了进一步说明本发明,下面结合附图及实施例进一步进行说明: 本发明的一种基于PE格式的实时监控系统授权码管理的新方法,授权码写入过程如 图1所示,系统先保存一个初始密钥,并在内存授权表中设定进程文件的授权码,然后加密 授权码。在系统获取要授权的可执行文件的全局路径后,系统将授权码密文写入PE可执行 文件中的可利用字段。
[0011] 以将授权码写入可执行文件,"C: \Program Files\FlashFXP\FlashFXP. exe" 为 例,具体步骤如下: 1) 系统获取FlashFXP. exe的全局路径 "C:\Program Files\FlashFXP\FlashFXP. exe" 2) 系统保存一个初始密钥,并在内存授权表中设定进程文件的授权码。授权码的格式 为:
系统计算FlashFXP. exe的CRC校验码(循环冗余校验码〕,为4个字节,以及标识符1 字节,对FlashFXP程序文件的具体授权3个字节,因此授权码总长度为7字节; 3) 系统加密授权码,首先判断可执行文件的存放介质是否可写,如果为只读,则系统直 接加密授权码,对于FlashFXP. exe文件来说,存放介质C盘为可写,则 系统判断要写入授权码的可执行文件是否为Windows保护文件,如果是,则系统直接 加密授权码;对于FlashFXP. exe文件来说,不是Windows保护文件,贝U 系统判断进程的映象文件是否为PE格式的可执行文件,如果不是,则系统直接加密授 权码;对于FlashFXP. exe文件来说,是PE格式的可执行文件,则系统计算授权码的长度,如 果PE可执行文件中现有的可利用字段能完全存放下授权码,则系统使用保存的密钥加密 授权码;如果现有的可利用字段不足以存放下所有的授权码,则系统继续在PE可执行文件 中寻找可利用字段,直到所找的可利用字段能够存放下完整的授权码;如果系统搜索一遍 后仍然没有找到足够的可利用字段存放,则将剩余未存放的授权码分离出来以备存入授权 码数据库中;如果系统的授权码存放在不连续的可利用字段中,则系统按照上述授权码的 格式分割授权码,并且分别对每一段授权码加密;授权码格式中的编号用于指向下一段授 权码的存放位置。
[0012] 对于FlashFXP. exe文件来说,系统判断FlashFXP. exe中节表首项的 PointToRawData、PointToRelocations、NumberOflocations 以及 NumberOfLinenumber 四 个字段共12个字节能完全存放下授权
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1