SSL代码签名最佳实践

news2024/11/18 21:53:34

代码签名就是软件发布者使用全球可信的证书颁发机构CA颁发的代码签名证书对软件代码进行签名,由此来验证软件开发者的真实身份,确保软件代码的完整性和可信任性。然而,攻击者一直试图渗透代码签名,意将恶意软件嵌入可信代码中。由此,为了降低被攻破的风险,本文将介绍8大代码签名最佳实践
image.png
1、安全密钥存储
如果用于签名的私钥被泄露或从组织窃取,它就会被用来对嵌入恶意软件的软件进行签名,这样发布的软件就会被注册为源自该组织的合法软件。由此,私钥应存储在硬件安全模块(HSM)进行保护中,或在静态时加密。根据 CA/Browser (CA/B) 论坛的要求,用于公共信任的密钥必须存储在 HSM 中。
2、执行密钥和签名访问控制
设置策略并执行密钥访问控制,确保只有经过授权的开发人员和用户才能在需要时使用特定密钥签名。在云中生成密钥,以免密钥被共享、丢失或窃取。实施职责分离,即把生成密钥的人和签名的人的职责分开。实施多因素身份验证(MFA),确保访问签名的人确实是本人。取消已离职人员或不再需要访问签名或生成密钥的人员的访问权限。
3、监控和审核密钥签名工作流程
跟踪什么人在什么时间签署了什么,以便对未经授权的签署做出快速反应,并采取适当的补救措施。定期审核与密钥对相关的所有操作,包括生成、证书操作以及分配密钥和签名行动。
比如采用统一数字证书管理系统UCM,申请、管理、部署数字证书,并对包含代码签名证书在内的所有数字证书定期扫描、监控和检测,给予预警通知。
image.png
4、与时俱进,在全公司范围内执行加密标准政策
为了帮助企业在威胁形势中保持领先,行业要求会与时俱进。CA/B论坛的规定要求,自2021年6月1日起,公众信任的代码签名和时间戳证书的最低密钥要求为3072位RSA。组织内的开发人员和用户在生成密钥或签署代码时可能不会意识到这些变化,而企业必须执行行业要求,防止用户使用弱算法或不符合要求的算法、密钥大小或曲线生成密钥或申请证书。
5、在 SDLC 流程中启用自动代码签名
在 SDLC 流程(如 CI/CD 管道)中集成签名并实现签名自动化,从而降低未签名代码或签名不合规的风险。可以设置安全控制自动化,在持续、快速的软件开发过程中构建安全、合规的软件。
6、比较来自不同构建服务器的签名:
在发布之前,对来自不同构建服务器的软件哈希值进行签名和比较,以确定服务器构建之间是否存在任何差异。两个或更多相同构建的法定数量可确保构建中没有包含未知代码,构建是安全的。
7、撤销受损代码签名证书
如果发现密钥泄露或签名了恶意软件,请向证书颁发机构(CA)报告,需要撤销代码签名证书,以使软件失效从而阻止恶意软件进一步传播。
8、为已签名的代码打上时间戳
为已签名的代码打上时间戳,避免代码签名证书过期时软件意外失效的风险。代码签名证书的有效期一般为1~3 年,代码签名证书过期后,已签名软件的有效性也将过期,除非软件在签名时有时间戳。系统会记录时间戳,只要软件还在生产中,就会继续有效。
给代码打上时间戳的另一个原因是尽量减少证书吊销的影响。一旦发现恶意软件,相关证书必须被吊销,而时间戳会将影响降到最低,因为吊销只会影响到吊销日期之后发布的软件。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1792060.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

finalshell刚连上就断,这个参数你注意到了吗

在实际应用中可能一不下心弄错一个参数就会让你的finalshell刚连上就断,如下图所示。 1、进入ssh目录下,修改ssh_config文件 2、修改UseDNS no,并把前面的#去掉。 注:如果在ssh_config文件见不到UseDNS yes ,可以打开sshd_config,他们是在…

视频怎么压缩变小?推荐三个压缩方法

视频怎么压缩变小?在数字时代,视频已成为我们日常生活和工作中不可或缺的一部分。然而,随着视频质量的提升,视频文件的大小也随之增加,这给存储和分享带来了不小的挑战。幸运的是,市面上有许多视频压缩软件…

Java学习笔记 集合的使用

在实际的项目中开发过程中,会有很多的对象,如何高效、方便的管理这些对象,是影响程序性能与可维护性的重要环节。在Java语言中为这个问题提供了一套完美的解决方案,也就是接下来要介绍的集合框架。 1.1 集合框架的结构 从Collect…

什么是 Batch Normalization 批标准化和全连接层

Batch Normalization 神经元在经过激活函数之后会处于饱和状态,无论后续怎么变化都不会再起作用。 每一层都会进行batch normalization的处理! without normalization 会导致数据分布再饱和区 全连接层: 全连接层(fully connected layers&a…

DPDK基础组件一(mbuf、ring、pktmbuf_pool)

一、rte_mbuf 此部分转自:https://zhuanlan.zhihu.com/p/616314276 1.mbuf结构 mbuf是报文中的描素的结构体,是整个转发过程中最核心的数据结构之一。主要针对于mbuf的常用API与基本原理做一个简单的介绍。 mbuf:报文内存存储结构,存储在mempool中mempool:使用环形缓冲…

【kubernetes】k8s集群中的ingress(对外服务)规则详解

目录 一、Ingress 简介 1.1service的作用 1.2外部访问方案 (四种)🌹🌹🌹 部署externalIPs 1.3Ingress 是什么 二、Ingress 组成🌹🌹🌹 三、Ingress 工作原理🐱&#x1f…

一维时间序列信号的小波时间散射变换(MATLAB 2021)

小波散射变换的目的在于获取第一层次的特征信息,即免疫平移、轻微形变的信息。而低通的滤波器能够获取输入信号的概貌,获取反映其整体大尺度特征的信息,以图像为例,由低通滤波器选取的信号对于图像的平移、伸缩、旋转等局部变化有…

【QT5】<总览二> QT信号槽、对象树及样式表

文章目录 前言 一、QT信号与槽 1. 信号槽连接模型 2. 信号槽介绍 3. 自定义信号槽 二、不使用UI文件编程 三、QT的对象树 四、添加资源文件 五、样式表的使用 六、QSS文件的使用 前言 承接【QT5】<总览一> QT环境搭建、快捷键及编程规范。若存…

计算机发展史 | 从起源到现代技术的演进

computer | Evolution from origins to modern technology 今天没有参考资料哈哈 PPT:(评论区?) 早期计算工具 算盘 -算盘是一种手动操作的计算辅助工具,起源于中国,迄今已有2600多年的历史,是…

告别鼠标:蓝牙无线安卓模拟鼠标,绘图板,手写板操作电脑PC端,卡卡罗特也说好,儿童节快乐

家人们,上链接了:https://download.csdn.net/download/jasonhongcn/89387887 横屏模式: 竖屏模式: 操作说明: 1. 手势滑动模拟鼠标移动 2. 界面如果有滚动条,右手指按紧,通过左手指移动实现…

智慧医疗新纪元:可视化医保管理引领未来

在数字化浪潮席卷全球的今天,我们的生活正在经历前所未有的变革。其中,智慧医保可视化管理系统就像一股清新的风,为医疗保障领域带来了全新的活力与可能。 想象一下,在繁忙的医院里,患者和家属不再需要为了查询医保信息…

适合航天航空的国产FTP替代软件

在宇宙探索的旅程中,航空和航天领域总是站在科技的最前沿,对数据传输的要求特别高。随着信息量急剧增加和安全威胁的复杂化,传统的FTP软件已经不能满足这个高端领域的需要了。因此,找到一款适合航空和航天领域的FTP替代软件&#…

SQLServer 查询指定数据库名和表名及表结构等

查询当前数据库中所有表名,不用指定数据库,选中某数据库直接执行SQL就好 -- U:所有用户表名; S:所有系统表名;V:所有视图表名 SELECT name FROM sysobjects WHERE xtypeU OR xtypeS OR xtypeV 查询指定数据库数据库中所有表名, SELECT TAB…

ad18学习笔记21:焊盘设置Paste Mask Expansion(锡膏层延伸)

在pcb上放置焊盘的时候,可以对焊盘进行设置,可以用默认的规则,可以用自定义的规则,网上很少看到自定义的规则怎么用。 参考了官方的说明文档,我只是稍微补充了一下 paste mask与solder mask有哪些区别_paste mask与s…

【30天精通Prometheus:一站式监控实战指南】第10天:blackbox_exporter从入门到实战:安装、配置详解与生产环境搭建指南,超详细

亲爱的读者们👋   欢迎加入【30天精通Prometheus】专栏!📚 在这里,我们将探索Prometheus的强大功能,并将其应用于实际监控中。这个专栏都将为你提供宝贵的实战经验。🚀   Prometheus是云原生和DevOps的…

isp效果库相关参数——镜像翻转

前言 之前一直比较忙着接触新工作内容,所以有一段搁置期,但是工作中的知识点还是有一直记录的,只是没空发出来,毕竟需要先熟悉才能总结内容,接下来的几天会连着发布 不同的产品数据手册有着不同的叫法但是统一的意思离…

怎么实现车间生产设备数据文件比传统FTP的精准快速管控?

在现代制造业中,数据管理的重要性日益凸显。车间生产设备产生的数据文件需要被精确、快速地管控,以确保生产效率和产品质量。传统上,文件传输协议(FTP)被广泛用于数据传输,但它存在一些明显的局限性。 传统…

三十七、openlayers官网示例Earthquakes Heatmap解析——在地图上加载热力图

官网demo地址: Earthquakes Heatmap 这篇主要介绍了热力图HeatmapLayer HeatmapLayer 是一个用于在地图上显示热力图的图层类型,通常用于表示地理数据中的密度或强度。例如,它可以用来显示地震、人口密度或其他空间数据的热点区域。在这个示…

2024050302-重学 Java 设计模式《实战享元模式》

重学 Java 设计模式:实战享元模式「基于Redis秒杀,提供活动与库存信息查询场景」 一、前言 程序员👨‍💻‍的上下文是什么? 很多时候一大部分编程开发的人员都只是关注于功能的实现,只要自己把这部分需求…

flutter as连接网易模拟器

网易模拟器下载 Mac 使用MuMu模拟器调试 Flutter开发 Android Studio 安装第三方模拟器—网易MuMu Mac 安卓Studio使用外部模拟器 Mac电脑:Android Studio 连接 MUMU 网易模拟器 Mac 上 Android Studio 链接网易 MuMu 模拟器调试 在 .zshrc 中设置 adb 二进制文…