此外,遗留软件通常也存在性能方面的缺陷。由于不再获得新功能的更新,公司员工必须在没有改进的情况下使用这些产品,这无疑限制了公司的成长潜力。
尽管存在这些缺陷,遗留软件在许多公司中仍然占有一席之地。它们在现代工作场所的普遍性使得了解如何将这些软件纳入组织的安全审计流程变得尤为重要。
2 明确组织继续使用旧版软件的原因
参与安全审计的团队成员应深入探究公司在有更新产品可用时仍坚持使用旧版软件的原因。了解背后的原因可能颇具挑战,特别是当公司的现有基础设施已经存在数十年时。

Actian 公司负责工程的高级副总裁 Emma McGrattan 指出,与世界上一些最大组织相关的许多系统至少有三十年的历史。这些系统通常包含多层基础设施,使得更新过程比预期更为复杂。
此外,公司之所以依赖遗留软件,有时是因为缺乏合适的更新替代品。在这种情况下,决策者必须权衡并接受相关风险。安全审计人员一旦掌握了这些具体原因,就能够更准确地评估过时软件是否对维持业务运营至关重要。
3 审查代码质量及其潜在威胁
在安全审计过程中,除了评估遗留软件的一般风险外,还必须深入检查代码质量,以识别潜在的漏洞、安全风险和其他关键问题。目前,许多供应商提供自动化工具来辅助这一过程,这些工具可以与专业人员的知识和经验相结合,以提高审查的效率和准确性。
细致的代码审查可以揭示哪些遗留软件构成了最大的安全风险。以美国政府问责局(GAO)对联邦机构使用的65个案例的分析为例,该分析在10个受影响的组织中识别出了10个最关键的问题。GAO随后为这些问题提供了补救建议。
然而,值得注意的是,GAO的这项分析是在2019年进行的。尽管许多组织在解决遗留软件的安全风险方面取得了显著进展,但截至2023年,仍有部分组织未能完全采纳GAO的建议。
内部安全审计可以作为一个激励机制,促使相关人员与高层管理人员进行深入讨论,阐明代码质量问题所带来的风险以及忽视这些风险可能带来的后果。
一旦识别出代码中的风险,组织就可以开始采取适当的网络安全措施来应对这些问题。即便审计发现某些问题无法立即解决,组织至少可以投资于监控工具,以增强对潜在渗透尝试或正在进行的攻击的感知能力。
4 规划减少或消除风险的途径
安全审计还应包括帮助组织减少或消除已识别风险的策略。软件供应商在通知用户其产品支持结束方面扮演着关键角色,这对于帮助组织评估和规划风险管理至关重要。当支持的结束影响到执行审计的公司之外的其他方时,这些信息尤为宝贵。
例如,医疗设备制造商有责任告知医疗保健客户其软件支持的结束时间。这样,客户就可以根据这些信息决定是继续使用现有产品还是寻找替代方案。软件供应商可以通过提供更新产品的详细信息,并明确告知旧软件支持的终止时间,来协助客户完成这一过程。
消除风险的策略可能包括寻找替代产品,并评估这些产品如何成为更优的投资选择。当软件不再接受更新时,继续使用的设备可能成为安全风险的源头。此外,如果这些旧设备无法满足当前的工作需求,它们也可能影响生产力。
此外,2023年对IT专业人员的一项调查发现,在经历过违规行为的组织中工作的人数占比为10%。尽管这一比例看似不高,但更令人担忧的是,已知的安全漏洞是导致47%违规案件的直接原因。这些数据强调了不升级到更新软件可能带来的可预防的安全风险。
5 避免不必要的责任集中
安全审计过程中可能会发现,对遗留软件的管理知识集中在极少数人,甚至个别人手中。如果这些关键人员因疾病、假期或其他原因缺席,可能会给组织带来严重的风险。
以澳大利亚维多利亚州信息专员办公室(OVIC)的一个真实案例为例。OVIC的创新部门依赖一个遗留系统来提取组织数据并生成关键任务报告。令人担忧的是,只有一名员工掌握了管理该遗留系统的技能。
最坏的情况发生在这名关键员工休假期间,当时发生了一起勒索软件攻击。由于遗留系统缺乏备份方案,且部门其他成员对系统的基础设施知之甚少,这导致了灾难性的后果。
该组织的系统管理员曾向领导层提出过迁移出遗留系统的建议,并强调了这一行动的紧迫性。然而,由于高管们担心迁移成本高昂以及可能导致的服务中断,这一建议遭到了强烈的反对。
在勒索软件攻击发生后,组织内部人员在近一周的时间内努力应对网络安全威胁,但未能成功。最终,在员工休假期间,他们不得不联系这名员工求助。
许多人认为单点故障是遗留系统内部的一个弱点。然而,这个案例也表明,对关键个人的过度依赖同样会增加组织面临灾难性问题的风险。
6 获取用户反馈
安全审计还应包括收集那些日常使用遗留软件的员工的反馈。了解他们对使用体验的看法,以及哪些因素可能导致了挫折或其他障碍,这些信息对于指导IT团队在解决审计过程中发现的安全问题时的决策至关重要。
所有针对遗留漏洞的解决方案都应考虑员工的需求、工作流程和职责。安全审计可能揭示出组织需要立即采取行动以防范迫在眉睫的网络攻击。即便如此,如果对遗留系统的修改打乱了员工的工作流程,他们可能会感到困惑或沮丧。
良好的沟通在整个过程中至关重要,可以减少这些负面影响。正如审计团队应当积极征求员工的反馈一样,他们也应该对收到的意见持开放态度。当员工感觉到IT团队重视他们的意见时,他们更有可能接受新的安全措施,而不是试图规避这些措施。
7 选择迁移方法和时间框架
安全审计可能揭示出,为了应对最紧迫的风险,最快捷的解决方案是从遗留系统迅速迁移。在这种情况下,制定一个详尽的迁移计划和明确的时间表至关重要,这将指导如何以最小的干扰完成迁移,同时考虑到组织、运营和员工的需求。
以一家商业信息服务提供商为例,该提供商在将一些已有20多年历史的遗留系统迁移到云端时采取了这种方法。团队通过内部探索流程,将应用程序分类并根据技术模式进行整合,从而节省了大量时间。
在这次迁移中,公司面临400多个应用程序的处理任务,他们意识到如果逐个重新开发这些应用程序将耗费大量时间。因此,团队选择专注于重新托管和重新平台化,为遗留应用程序的云迁移做准备。通过将团队分成小组,每个小组负责5到10个应用程序,他们使这一庞大的任务变得更加可管理。
这种方法不仅使公司实现了在两年内完成迁移的主要目标,而且分析还显示,迁移后云成本降低了20%。这一结果表明,出于安全或其他考虑,将遗留应用程序迁移到云并不必然导致长期成本的增加。
8 将安全审核构建到与安全相关的操作中
对于大多数依赖遗留软件的公司而言,立即停止使用这些软件并不现实。更可行的下一步是进行全面的安全审计,以明确识别出的漏洞类型和严重程度。
决策者可以利用这些审计结果来确定最有效的风险缓解措施,作为组织逐步淘汰过时产品的过渡策略。
除了遵循上述建议外,还应将安全审计的结果报告给有直接决策权的高层管理人员,以减少遗留软件带来的威胁,并授权采取措施减少组织对这些过时产品的依赖。
此外,所有相关人员都应审查并更新组织的现有政策和程序,确保它们反映了通过审计确定的风险缓解策略。这些积极主动的措施将帮助组织构建一个更现代化、更安全的基础设施,满足当前和未来的业务需求。
9 成本效益分析
在考虑遗留软件的迁移或更新时,进行成本效益分析是至关重要的。这不仅涉及直接的财务成本,还包括时间成本、人力成本以及潜在的业务中断风险。
直接成本包括迁移过程中的软件购买、硬件升级、开发和实施费用。此外,还需要考虑培训员工使用新系统的成本,以及可能的许可证和订阅费用。
时间成本涉及到迁移过程可能导致的业务延迟。对于关键任务系统,任何停机时间都可能对业务产生显著影响。
人力成本包括培训现有员工以及可能的招聘新员工以支持新系统。此外,还需要考虑到管理层和IT团队在迁移过程中的额外工作量。
业务中断风险是迁移过程中可能遇到的最大隐性成本之一。这包括数据丢失、系统故障以及用户对新系统的适应时间。
为了全面评估成本效益,组织应考虑迁移后的长期收益,如提高的运营效率、增强的安全性、更好的可扩展性和更低的维护成本。
10 法规遵从性
遗留软件可能无法满足当前的法规要求,特别是在数据保护和隐私方面。不遵守这些法规可能导致重大的法律责任和财务处罚。
数据保护:随着法规如欧盟的通用数据保护条例(GDPR)的实施,组织必须确保其软件系统能够保护个人数据免受未授权访问和泄露。
行业特定法规:医疗保健、金融服务和政府等行业有其特定的法规要求,遗留软件可能无法满足这些要求。
合规性审计:定期的合规性审计可以帮助组织识别其软件系统与当前法规之间的差距,并采取必要的行动来解决这些问题。
更新和维护:为了保持合规性,组织必须确保其软件系统是最新的,并且定期接受安全补丁和更新。
风险管理:组织应将合规性风险纳入其整体风险管理策略中,并确保有足够的资源来应对潜在的合规性问题。
通过确保遗留软件的迁移和更新与法规遵从性要求相一致,组织可以避免法律风险,同时提高其业务操作的透明度和信誉。