“为了解决这个问题,公司应该记录并商定与第一方代码和第三方代码相关的业务风险,然后,他们需要确定他们愿意在声誉损害、财务损害或法律审查等领域承担多大风险 。在管理层达成共识后,关键系统的企业主应该努力识别和实施控制措施,以降低这些风险 。”
一旦一家公司确定了其最优先的问题,下一步就是解决这些问题 。不幸的是,这并不总是可行的 , 公司需要寻找其他措施 。
当唯一的答案是缓解当涉及到旧系统时,可能没有任何人拥有修复代码所需的知识 。根据技术服务公司Advanced去年11月发布的一项调查 , 在使用大型机的公司中,42%的公司表示他们最著名的遗留语言是COBOL,另有37%的公司仍在使用汇编语言 。
“别管就业市场了,很难找到像COBOL这样拥有过时编程语言技能的人 。”WithSecure的网络安全顾问Paul Brucciani说 。
另一个问题是源代码何时丢失 。Brucciani告诉采访人员:“你会惊讶于运行在古老软件上的[许多]公司因为丢失了源代码而无法更新 。”
在某些情况下,这些应用程序太重要了,不能碰 , 因为破坏它们的风险太高,更换它们会造成太大的中断 。“并不是所有的遗留代码和应用程序在被发现时都可以删除 。在许多情况下,关键业务流程依赖于由遗留系统执行的功能和工作流,“Cymulate的DeNapoli说 。
软件漏洞也可能因为时间或资源不足或合规性考虑而无法修复,但如果被利用仍会构成风险 。在这些情况下,公司应该在易受攻击的系统周围采取缓解措施 , 公司将需要使用其他策略,如实施或加强薪酬控制 。
零信任架构、网络分段和对身份验证的更多关注有助于降低易受攻击的应用程序被利用的风险 。Veracode的Eng说:“把所有东西都放在认证层后面是一种广泛的趋势 。不管代码有多旧 , 这种情况都会发生 。”
其他缓解策略包括加密、防火墙、安全自动化和动态数据备份 。
自动查找旧代码并创建更安全的代码针对易受攻击的旧代码问题的最新解决方案涉及人工智能领域的新进展,我们已经有了可以编写新代码的生成性人工智能工具 , 但供应商也在致力于专门的人工智能,这些人工智能经过专门培训,专门修复漏洞 。Eng说:“人工智能可以提出修复建议 , 然后开发人员可以对其进行一些调整 。”
问题是,当公司使用大型、公开的大型语言模型时,这些模型会接受各种培训,包括不好的东西 。“正如他们过去常说的 , 垃圾进了,垃圾出了 。不可避免的是 , 由这些模型生成的代码也将包含漏洞 。因此,代码的生成速度会更快 , 但仍会有错误 。“Eng补充道 。
Veracode正在基于自己经过审查的代码构建自己的人工智能 。“我们生成易受攻击的代码和良好的代码,并针对每一个类别训练模型,”Eng说 。“这样我们就可以肯定地知道,发布出来的东西不是随机从某个开发者的Github库中提取出来的 。”
Veracode Fix于今年4月发布,据该公司称,该产品可以为JAVA代码中发现的72%的缺陷生成修复程序 , 这可以极大地加快公司的补救工作 。
在某个时候,较大的企业可能会想要构建自己的、定制的人工智能工具 。“他们想以他们使用的代码风格生成修复程序 。”Eng说 。
但这并不意味着企业应该坐等人工智能机构来解决所有问题 , 他说:“有了大多数公司的大量安全债务,即使你现在只应对最严重的事情,你也不会没有事情可做 。”
【修复来自开源和遗留程序的旧的、不安全的代码的三种方法】
推荐阅读
- 固态硬盘坏了能修复 固态硬盘坏了能不能修复
- 一文读懂 AutoGPT 开源 AI Agents
- 肋软骨隆鼻失败了怎么解决 隆鼻失败了该怎么修复
- 来自qq单向好友是什么意思呀 来自QQ单向好友是什么意思
- 白雪公主出自哪里,白雪公主这个形象最早来自于哪本书?
- ps怎么磨皮消除脸部高光,ps去除修复人物脸部斑点的教程
- 最全Vue3开源管理系统汇总
- 2023年微软开源八个人工智能项目
- 修复Windows 10上“未安装音频输出设备”的错误
- 牙齿修复方法有几种 牙齿修复方法
