一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种可信脚本加载及执行方法和装置与流程

2022-04-06 18:41:23 来源:中国专利 TAG:


1.本发明涉及脚本执行技术领域,特别是涉及一种可信脚本加载及执行方法和装置。


背景技术:

2.脚本语言又被称为扩建的语言,或者动态语言,是一种编程语言,用来控制软件应用程序,脚本通常以文本形式保存,只在被调用时进行解释或编译。脚本语言是为了缩短传统的编写-编译-链接-运行(edit-compile-link-run)过程而创建的计算机编程语言。虽然许多脚本语言都超越了计算机简单任务自动化的领域,成熟到可以编写精巧的程序,但仍然还是被称为脚本。动态脚本语言具有编码灵活适用性广的特色。但在实际应用中,脚本语言往往成为恶意代码进行漏洞注入的途径。一些恶意代码甚至还可能造成一些关键信息的泄漏,对信息安全产生影响。目前尚缺乏统一有效的方法保障可信的脚本代码加载与执行。


技术实现要素:

3.本发明所要解决的技术问题是提供一种可信脚本加载及执行方法和装置,能够防止脚本代码被中间人篡改以及确保执行过程可回溯。
4.本发明解决其技术问题所采用的技术方案是:提供一种可信脚本加载及执行方法,包括以下步骤:
5.基于数字证书加载脚本;
6.通过代理改造机制以及所述数字证书对所述脚本进行执行;
7.收集所述脚本的执行输出结果,并通过所述数字证书对所述输出结果进行签名并记录脚本执行日志。
8.所述基于数字证书加载脚本具体为:
9.接收带有所述数字证书签名的脚本;
10.通过所述数字证书对所述脚本进行验证,确认所述脚本的来源,当所述脚本的来源为可信来源时,进入下一步。
11.当所述脚本的来源为可信来源时,还基于静态扫描检测所述脚本中是否带有可疑恶意代码的步骤,当所述脚本中未带有可疑恶意代码时,进入下一步。
12.所述通过代理改造机制以及所述数字证书对所述脚本进行执行具体为:
13.采用代理执行方式替换至少一个涉及安全的系统接口;
14.检测到所述脚本在执行时需要调用所述系统接口时,校验所述脚本的数字证书,确认所述脚本是否具备调用所述系统接口的授权;当所述脚本具备调用所述系统接口的授权时,继续执行,否则停止执行。
15.所述的可信脚本加载及执行方法还包括对每次系统接口的调用进行以所述脚本对应的数字证书对调用参数进行加签,并记录相应的系统调用日志。
16.在所述脚本执行时,当所述脚本出现异常,中断所述脚本的执行,并以所述脚本对
应的数字证书对异常信息进行签名并记录相应的系统异常日志。
17.本发明解决其技术问题所采用的技术方案是:还提供一种可信脚本加载及执行装置,包括:
18.加载模块,用于基于数字证书加载脚本;
19.执行模块,用于通过代理改造机制以及所述数字证书对所述脚本进行执行;
20.结果输出模块,用于收集所述脚本的执行输出结果,并通过所述数字证书对所述输出结果进行签名并记录脚本执行日志。
21.所述加载模块包括:
22.接收单元,用于接收带有所述数字证书签名的脚本;
23.验证单元,用于通过所述数字证书对所述脚本进行验证,确认所述脚本的来源,当所述脚本的来源为可信来源时,送入所述执行模块。
24.所述执行模块包括:
25.替换单元,用于采用代理执行方式替换至少一个涉及安全的系统接口;
26.校验单元,用于在检测到所述脚本在执行时需要调用所述系统接口时,校验所述脚本的数字证书,确认所述脚本是否具备调用所述系统接口的授权;当所述脚本具备调用所述系统接口的授权时,继续执行,否则停止执行。
27.所述可信脚本加载及执行装置还包括异常处理模块,用于在所述脚本执行时,当所述脚本出现异常,中断所述脚本的执行,并以所述脚本对应的数字证书对异常信息进行签名并记录相应的系统异常日志。
28.有益效果
29.由于采用了上述的技术方案,本发明与现有技术相比,具有以下的优点和积极效果:本发明通过数字证书的校验确保脚本代码的来源可信并且防止脚本代码被中间人篡改。通过对系统调用的代理改造机制引入基于数字证书的访问授权并能够记录可信的系统调用日志记录用于可信执行的历史回溯以确保执行过程的安全可信。
附图说明
30.图1是本发明第一实施方式的流程图。
具体实施方式
31.下面结合具体实施例,进一步阐述本发明。应理解,这些实施例仅用于说明本发明而不用于限制本发明的范围。此外应理解,在阅读了本发明讲授的内容之后,本领域技术人员可以对本发明作各种改动或修改,这些等价形式同样落于本技术所附权利要求书所限定的范围。
32.本发明的第一实施方式涉及一种可信脚本加载及执行方法,如图1所示,包括以下步骤:
33.步骤1:加载可信脚本代码。具体包括:步骤1a,接收带有所述脚本代码,本实施方式中的脚本代码具有附加的数字签名证书,通过所述数字证书对所述脚本进行验证,确认脚本代码的来源可信且未经篡改;步骤1b,为防止可信脚本代码本身存在问题,本实施方式基于静态扫描检测所述脚本代码中是否带有可疑恶意代码,当所述脚本中未带有可疑恶意
代码时,进入下一步,否则停止加载。
34.步骤2:执行可信脚本代码。具体包括:步骤2a,通过脚本执行引擎改造,采用代理执行方式替换至少一个涉及安全的系统接口;步骤2b,检测到所述可信脚本代码在执行时需要调用所述系统接口时,校验所述可信脚本代码所附的数字证书,确认所述可信脚本代码是否具备调用所述系统接口的授权;当所述脚本具备调用所述系统接口的授权时,继续执行,否则停止执行;步骤2c,对每次系统接口的调用进行以所述可信脚本代码对应的数字证书对调用参数进行加签,并记录相应的系统调用日志,以确保之后的可信执行溯源可以基于系统调用日志进行检验。
35.步骤3:可信执行脚本执行异常捕获。具体包括:步骤3a,当可信脚本代码执行出现异常时,将中断所述可信脚本代码的继续执行,由脚本引擎捕获异常并接管;步骤3b,脚本引擎捕获到异常抛出时,将以当前可信脚本代码所对应的数字证书对异常信息进行签名后,并记录相应的系统异常日志,以确保之后的可信执行溯源可以基于系统异常日志进行检验。
36.步骤4:可信脚本代码执行成功。具体为:脚本引擎收集可信脚本的执行输出结果并通过所述可信脚本代码所对应的数字证书对输出结果进行签名,并记录相应的脚本执行日志。
37.本发明的第二实施方式涉及一种可信脚本加载及执行装置,包括:加载模块,用于基于数字证书加载脚本;执行模块,用于通过代理改造机制以及所述数字证书对所述脚本进行执行;结果输出模块,用于收集所述脚本的执行输出结果,并通过所述数字证书对所述输出结果进行签名并记录脚本执行日志。
38.其中,所述加载模块包括:接收单元,用于接收带有所述数字证书签名的脚本;验证单元,用于通过所述数字证书对所述脚本进行验证,确认所述脚本的来源,当所述脚本的来源为可信来源时,送入所述执行模块。所述加载模块还包括恶意代码检测单元,所述恶意代码检测单元用于在所述脚本的来源为可信来源时,基于静态扫描检测所述脚本中是否带有可疑恶意代码,当所述脚本未带有可疑恶意代码时,送入所述执行模块。
39.所述执行模块包括:替换单元,用于采用代理执行方式替换至少一个涉及安全的系统接口;校验单元,用于在检测到所述脚本在执行时需要调用所述系统接口时,校验所述脚本的数字证书,确认所述脚本是否具备调用所述系统接口的授权;当所述脚本具备调用所述系统接口的授权时,继续执行,否则停止执行。所述执行模块还包括加签单元,所述加签单元用于对每次系统接口的调用进行以所述脚本对应的数字证书对调用参数进行加签,并记录相应的系统调用日志。
40.所述可信脚本加载及执行装置还包括异常处理模块,用于在所述脚本执行时,当所述脚本出现异常,中断所述脚本的执行,并以所述脚本对应的数字证书对异常信息进行签名并记录相应的系统异常日志。
41.不难发现,本发明通过数字证书的校验确保脚本代码的来源可信并且防止脚本代码被中间人篡改。通过对系统调用的代理改造机制引入基于数字证书的访问授权并能够记录可信的系统调用日志记录用于可信执行的历史回溯以确保执行过程的安全可信。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献