一种基于linux内核进程监控来保护代码及数据的系统和方法技术方案

技术编号:34020276 阅读:76 留言:0更新日期:2022-07-02 16:46
本发明专利技术涉及数据保护相关领域,具体为一种基于linux内核进程监控来保护代码及数据的系统和方法,本发明专利技术支持加密储存非运行过程中的软件代码和数据;对软件运行过程中产生的中间文件,敏感数据进行有效的保护;通过进程管控防止外部程序访问解密后的数据和代码,只有可信进程才可以访问;基于虚拟内存式的文件系统的临时型特性(掉电后内存数据丢失特性),有效防止解密后的代码在掉电后被非法窃取的可能性;被保护的目录下的程序,会对其执行的代码做路径匹配,只会执行保护目录下的代码,其他未受保护的代码会被视为可疑代码,都不会被执行,有效防止外部非法代码注入。有效防止外部非法代码注入。有效防止外部非法代码注入。

【技术实现步骤摘要】
一种基于linux内核进程监控来保护代码及数据的系统和方法


[0001]本专利技术涉及数据保护相关领域,具体为一种基于linux内核进程监控来保护代码及数据的系统和方法。

技术介绍

[0002]随着计算机软件技术的发展,源码保护,重要数据保护,一直是软件开发领域的重要课题,软件破解、代码抄袭,数据泄露这些行为让企业蒙受了巨大的损失,且随着编程语言的不断进步与发展,其所带来的源码保护也面临着各种挑战。除了源码保护,往往在软件运行过程中,会产生一些重要的中间文件和数据,对于这些中间文件和敏感数据的保护也显得尤其重要。
[0003]在软件开发过程中,常见的编程语言可以分为编译型和解释型语言。其代码保护方法却不尽相同。
[0004]编译型的代码保护方法通常由外壳或硬件加密设备等方式。对于本身不经过编译的解释型语言,裸露源码用文本形式存储的脚本语言时,加外壳形式的保护并不适用。且这些加壳加密方法,往往对其运行过程中产生的重要代码和数据无法有效保护。
[0005]解释型语言相对于编译型语言存在的,源代码不是直接翻译成机器语言,而是先本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种基于linux内核进程监控来保护代码及数据的系统,其特征在于,包括:第一模块:用于对代码保护程序提供加密模块,可以对静态文件进行加密,采用自定义的加密算法进行加密,加密完成后替换原有的代码;第二模块:用于对所述第一模块中加密完成代码和数据进行解密,解密之前会检查内核代码保护驱动模块是否开启和保护目录是否创建,满足条件后,会把加密数据解密到保护目录中;第三模块:基于进程监控的动态保护,动态保护由内核代码保护驱动模块提供,会对访问保护目录中的进程进行实时监控,会对访问的进程进行数字签名验证和路径检查。同时也会限制应用层IO接口的访问;第四模块:通过代码保护程序调用解释器执行相应的解密代码,代码保护程序调用解释器之前,会再一次判断要运行的代码路径是否为保护目录下的代码,对于其他目录非保护目录的代码将禁止执行。2.根据权利要求1所述的一种基于linux内核进程监控来保护代码及数据的系统,其特征在于:所述第三模块中内核代码保护驱动模块是基于hook技术来实现,通过hook技术去hook住操作系统中的函数表中的主要的函数,在入口出注入勾子代码,实现对访问目录文件的进程监控和权限的控制,利用ftrace来实现,ftrace采用GCC的profile特性在所有内核函数的开始部分加入一段stub代码,ftrace重载这段代码来实现trace功能,内核初始化的初期,ftrace查询__mcount_loc段,得到每个函数的入口地址,并将mcount替换为nop指令,这样在默认情况下,ftrace不会对内核性能产生影响,当用户打开ftrace功能时,ftrace将这些nop指令动态替换为ftrace_caller,该函数将调用用于进程鉴别的trace函数。3.一种基于linux内核进程监控来保护代码及数据的方法,其特征在于,包括以下步骤:步骤S1、在第一模块中对代码保护工具,解释器程序进行数字签名,把生成的数字签名保存到内核保护模块中,后续作为可信进程判别的依据,防止解释器程序被非法篡改或替换,同时对代码保护程序进行加密。步骤S2、在第二模块中通过系统配置,设置开机自启动,创建基于内存文件系统tmpfs的保护目录;步骤S3、在创建完成基于内存文件系统tmpfs的保护目录之后,开...

【专利技术属性】
技术研发人员:傅涛陆海勇李国胜孟宪路胡志锋郑轶郭金辉王路路
申请(专利权)人:博智安全科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1