LibcarePlus 用户态热补丁作为 openEuler 社区关键技术,受到了广大开发者的关注和讨论。openEuler 社区与天翼云基础架构技术团队通力合作,共同打造了全面支持 aarch64 及 x86 平台的 LibcarePlus 热补丁功能,可以应用于 CVE 漏洞修复,也可应用于不中断应用服务的紧急 bug 修复。下面我们就来聊聊什么是热补丁技术。
热补丁技术背景
当运行的程序存在漏洞的时候,我们一般有以下几种解决办法:
- 替换最新的包含修复补丁的 OS 版本,在有主备倒换能力的组网环境上,可以先将当前运行的程序迁移到备区,待主区升级完后,再将程序迁移到主区;
- 替换程序的 rpm 包,然后重新运行程序(注意此时需要考虑依赖包的兼容性),对于具备热替换能力的程序,则可以利用热替换能力,实现程序运行内容的替换;
- 直接给运行的程序内容打补丁,替换有问题的代码,实现程序漏洞的修复;
从补丁粒度上来说,上述技术漏洞修复粒度是从大到小变化的:
- 第一个是系统级的,主要涉及的技术有热迁移技术;
- 第二个是 rpm 包级的,主要涉及的技术有热替换;
- 第三个是运行程序级的,主要涉及的技术有热补丁。
从业务中断时长来说,上述技术的业务中断时长也是从大到小变化的:
- 第一种技术业务中断时间一般在分钟级,且一般涉及整个系统业务的主备倒换,升级周期最长,一般需要几个月的升级窗口;
- 第二种技术业务中断时间一般在百毫秒级,且该技术一般不通用,需要侵入式修改和适配大量业务代码,升级周期相对比较短,一般仅需要一个月的升级窗口;
- 第三种技术业务中断时间则一般在毫秒级,该技术比较通用,不需要侵入式修改和适配业务代码,仅需要适配一些通用代码,适配工作量较小,升级周期相对比较短,一般仅需要一个月的升级窗口。
通过上述分析,我们大概能总结出热补丁的如下几个优点:一是热补丁能够在不影响现网业务的情况下,完成程序漏洞的修复;二是热补丁适用于

本文介绍了LibcarePlus热补丁技术,一种能在不影响业务的热态下修复漏洞的先进技术。它基于openEuler社区,支持多种架构,提供函数级过滤和增量补丁,降低业务中断。重点讲解了热补丁制作原理和Qemu热补丁管理过程。
最低0.47元/天 解锁文章
486

被折叠的 条评论
为什么被折叠?



