漏洞在线修复的方法和装置制造方法及图纸

技术编号:25185801 阅读:39 留言:0更新日期:2020-08-07 21:13
本公开的实施例公开了漏洞在线修复的方法和装置,该方法的一具体实施方式包括:对在线状态下的产品的线上日志进行检测;当检测到线上日志中存在程序报错信息时,获取程序报错信息所指示的待修复的程序代码,其中,程序报错信息包括程序错误类型;基于修复策略获取与待修复的程序代码匹配的漏洞修复代码,修复策略为对程序错误类型进行判断得到的修复策略;将漏洞修复代码编译成漏洞修复字节码;基于漏洞修复字节码,更新用于执行待修复的程序代码的虚拟机中与待修复的程序代码对应的字节码;基于虚拟机中已更新的字节码,对待修复的程序代码进行漏洞修复。该实施方式缩短了修改代码逻辑和升级程序所消耗的时间,提高了产品处理漏洞的效率。

【技术实现步骤摘要】
漏洞在线修复的方法和装置
本公开的实施例涉及计算机
,具体涉及数据处理
,尤其涉及漏洞在线修复的方法和装置。
技术介绍
随着线上应用的越来越多,使用量越来越大,出问题的概率也越来越大。在一些特定情况下,例如:应用高并发时,修改代码逻辑、发布新版本应用来解决漏洞(bug)的周期较长,很难满足业务的需要,这时可以采用线上bug修复工具,重新修改某些有问题的方法和类,使之按照自己的业务逻辑运行。
技术实现思路
本公开的实施例提出了漏洞在线修复的方法和装置。第一方面,本公开的实施例提供了一种漏洞在线修复的方法,包括:对在线状态下的产品的线上日志进行检测;当检测到线上日志中存在程序报错信息时,获取程序报错信息所指示的待修复的程序代码,其中,程序报错信息包括程序错误类型;基于修复策略获取与待修复的程序代码匹配的漏洞修复代码,修复策略为对程序错误类型进行判断得到的修复策略;将漏洞修复代码编译成漏洞修复字节码;基于漏洞修复字节码,更新用于执行待修复的程序代码的虚拟机中与待修复的程序代码对应的字节码;基于虚拟机中已更新的字本文档来自技高网...

【技术保护点】
1.一种漏洞在线修复的方法,所述方法包括:/n对在线状态下的产品的线上日志进行检测;/n当检测到线上日志中存在程序报错信息时,获取程序报错信息所指示的待修复的程序代码,其中,所述程序报错信息包括程序错误类型;/n基于修复策略获取与所述待修复的程序代码匹配的漏洞修复代码,所述修复策略为对所述程序错误类型进行判断得到的修复策略;/n将所述漏洞修复代码编译成漏洞修复字节码;/n基于所述漏洞修复字节码,更新用于执行所述待修复的程序代码的虚拟机中与所述待修复的程序代码对应的字节码;/n基于所述虚拟机中已更新的字节码,对所述待修复的程序代码进行漏洞修复。/n

【技术特征摘要】
1.一种漏洞在线修复的方法,所述方法包括:
对在线状态下的产品的线上日志进行检测;
当检测到线上日志中存在程序报错信息时,获取程序报错信息所指示的待修复的程序代码,其中,所述程序报错信息包括程序错误类型;
基于修复策略获取与所述待修复的程序代码匹配的漏洞修复代码,所述修复策略为对所述程序错误类型进行判断得到的修复策略;
将所述漏洞修复代码编译成漏洞修复字节码;
基于所述漏洞修复字节码,更新用于执行所述待修复的程序代码的虚拟机中与所述待修复的程序代码对应的字节码;
基于所述虚拟机中已更新的字节码,对所述待修复的程序代码进行漏洞修复。


2.根据权利要求1所述的漏洞在线修复的方法,其中,所述基于修复策略获取与所述待修复的程序代码匹配的漏洞修复代码,包括:
对所述程序错误类型进行判断;
响应于判定所述程序错误类型为表征所述待修复的程序中存在报空指针,确定修复策略为对所述待修复的程序中所述报空指针指示的变量进行赋值;
基于所述修复策略,获取与所述待修复的程序代码匹配的漏洞修复代码。


3.根据权利要求2所述的漏洞在线修复的方法,其中,在所述对所述程序错误类型进行判断之后基于修复策略,还包括:
响应于判定所述程序错误类型为表征所述待修复的程序中存在路径错误指针,确定修复策略为对所述待修复的程序中所述路径进行修改。


4.根据权利要求2所述的漏洞在线修复的方法,其中,在所述对所述程序错误类型进行判断之后基于修复策略,还包括:
响应于判定所述程序错误类型为表征所述待修复的程序中存在变量值错误指针,确定修复策略为对所述待修复的程序中所述变量值进行修改。


5.根据权利要求1所述的漏洞在线修复的方法,其中,所述基于所述漏洞修复字节码,更新用于执行所述待修复的程序代码的虚拟机中与所述待修复的程序代码对应的字节码,包括:
基于所述漏洞修复字节码,更新用于执行所述待修复的程序代码的Java虚拟机中与所述待修复的程序代码对应的字节码。


6.根据权利要求1所述的漏洞在线修复的方法,所述方法还包括:
根据漏洞修复后的所述待修复的程序代码与产品程序的相关性,定位产品程序中的问题。


7.根据权利要求6所述的漏洞在线修复的方法,所述方法还包括:
基于所述产品程序中的问题,优化产品的程序和/或产品结构。

【专利技术属性】
技术研发人员:张红章
申请(专利权)人:北京同邦卓益科技有限公司
类型:发明
国别省市:北京;11

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

1