您的浏览器禁用了JavaScript(一种计算机语言,用以实现您与网页的交互),请解除该禁用,或者联系我们。[新思科技]:在并购交易中采取全面的软件审计方法 - 发现报告
当前位置:首页/行业研究/报告详情/

在并购交易中采取全面的软件审计方法

信息技术2023-02-07新思科技测***
AI智能总结
查看更多
在并购交易中采取全面的软件审计方法

黑鸭审计:在并购交易中采取全面的软件审计方法 审核专有代码、第三方代码、开源和Web服务的许可、代码质量和安全风险 目录 行政概览1 软件问题可能会通过以下方式损害并购交易的价值: 损害专有知识产权 使敏感数据和系统面临风险 阻碍集成操作 延长交易和集成时间增加补救成本 行政概览 当软件是并购交易的重要组成部分时,收购者需要知道目标代码库中的内容。了解潜在的软件安全和质量缺陷以及与开源代码相关的可能问题,可以保护买卖双方免受可能影响交易价值的意外影响。软件审计过程— —对目标软件的全面审查——应该是任何并购交易的标准部分,在并购交易中,软件是一个重要部分。 尽管并购(M&A)交易是软件审计的最常见动力,但审计在其他情况下也很有用。例如,您的组织可能希望在为主要版本做准备时审核应用程序,以识别诸如不需要的许可证义务之类的问题。客户可能需要软件清单(物料清单或BOM)作为其采购过程的一部分。或者潜在的合作伙伴可以在最终确定协议之前请求第三方审查的BOM。 SyopsysBlacDc®审计服务提供对全面软件尽职调查所需的代码的快速、彻底、专家审计。审计服务将世界级分析工具的强大功能与人类专业知识相结合,以评估开源许可证合规性和安全风险以及第三方和专有软件质量和安全风险。而且由于目标和收购组织都可以信任Syopsys来保护代码,因此谈判很顺利。 黑鸭子审计包括: •开源和第三方软件审计:这包括对代码库的分析,以创建完整的开源软件材料清单,该清单识别许可证冲突和义务,已知的安全漏洞以及通过第三方 Web服务API集成引入的潜在风险。 •应用程序安全审计:这包括渗透测试,静态分析和设计分析,以评估安全健壮性,发现潜在的安全弱点,并评估缺失的安全控制的总体设计 。 •软件质量审核:它从三个维度评估软件质量:架构设计、代码质量和用于开发代码的过程。 无论您是并购交易中的买方还是卖方(或出于其他目的需要全面了解您的代码),软件审核都可以帮助您在问题成为主要的安全性,许可或软件质量问题之前识别和解决问题。 在尽职调查中了解开源和第三方软件 “专有代码中的开源问题可能会对 从许可证合规性的角度来看,软件特许经营实际上,我们已经看到一些买家,如果存在开源问题,他们将不会以任何价格收购该公司。” -专注于技术的投资银行 今天的软件很少是100%定制的。事实上,SynopsysBlackDuckAuditServices检查的几乎每一个代码库都包含开源。我们最新的OSSRA报告中讨论的95%以上的审计应用程序都包含开源。由于开源许可冲突,超过85%的交易使其所有者面临潜在的法律问题。 开源许可证风险 开源软件与任何其他软件没有什么不同,因为版权法规定其使用受许可证约束。即使是最友好的开源许可证也包括以软件使用为回报的义务,因此,除了识别冲突外,买方还需要确保卖方遵守所有许可证。 当代码库包含其许可证似乎与代码库的整体许可证冲突的组件时,就会出现潜在的许可证风险。最常见的例子是GNU通用公共许可证v2.0(GPLv2)下的开源代码,它在编译为分布式商业软件时经常会产生冲突。但是,在被视为软件即服务(SaaS)的软件中,相同的代码并不是问题。GPL的义务仅在分发相关软件时触发,GPL不认为SaaS代码是“分布式的”。“这并不意味着SaaS软件不受许可证冲突的影响;有些许可证对SaaS来说也是有问题的。 有时,开源组件具有所谓的“自定义许可证”,其中开发人员为组件使用自己的许可语言或向标准许可证添加语言。此类许可证添加通常是出于善意,但可能会引起关注,尤其是在与需要解释影响和风险的律师进行并购交易时。 即使第三方组件没有许可证,在美国和许多其他司法管辖区,创造性作品默认被置于独家版权之下-其中包括软件。除非许可证另有规定(或版权持有者授予许可),否则任何其他方都不能合法使用、复制、分发或修改该作品而不会招致诉讼风险。 使用未经许可的代码的组织违反了版权法,因此暴露了。合格的律师可以帮助评估风险。 组织需要一个准确、最新的软件 BOM,包括开源组件清单,以确保其代码是高质量、合规和安全的 。 |synopys.com|3 开源安全风险 开源风险不仅限于许可证风险。近100%的交易包含开源漏洞,这些漏洞可能会通过攻击或数据泄露危及软件。95%的交易包含开源这些组件要么过时超过四年,要么在过去两年没有开发活动,使这些组件面临更高的故障风险。 所有软件,无论是商业的、定制的还是开源的,都会有缺陷或弱点,使其容易受到攻击和利用。未修补的软件漏洞是组织面临的最大网络威胁之一,未修补的开源组件是这方面安全暴露的主要原因。使用开源组件的公司数量惊人,他们没有及时应用他们需要的补丁,从而使他们的应用程序受到潜在的攻击。 开源安全漏洞可能不会破坏交易,但了解代码中漏洞的数量和重要性对于评估它们对集成时间表的影响非常重要。需要解决漏洞,特别是关键漏洞,以防止可能严重影响交易ROI的潜在漏洞。花在补救上的时间就是不花在整合或创新上的时间。了解这一点可以让买家计划资源,使软件进入安全状态,并协商保留以覆盖风险。 通过软件材料清单了解您的代码 近年来,我们目睹了一些备受瞩目的安全漏洞,这些漏洞促使全国范围内对组织安全实践进行了重新审查。其中一些实践包括生成和维护SBOM的指南,该指南提供了您的代码,其起源以及任何相关的安全或许可证风险的完整清单。 软件BOM的概念源于制造业,在制造业中,经典的物料清单是详细说明产品中包含的所有项目的库存。例如,当发现有缺陷的零件时,汽车制造商可以准确地知道哪些车辆受到影响,并可以开始维修或更换过程。同样,准确,最新的软件BOM 包括开源组件清单对于组织确保其代码高质量、合规和安全是必要的。在制造过程中,开源组件的BOM允许快速识别易受攻击的组件,并适当地确定补救工作的优先级。 由于大多数公司没有有效地遵循Gardner的建议,因此BlackDuck审核提供了已审核代码库中的开源和第三方组件的全面BOM。BOM包括所有开源组件以及使用的版本,每个项目的下载位置和所有依赖项,代码调用的库以及这些依赖项链接到的库。 BlackDuckAudits还可以进一步深入到代码库中,以提供开源风险的详细视图,以及识别应用程序使用的外部Web服务。 通过定期执行软件审计,即使没有其他良好控制的企业也可以维护准确、最新的软件清单,列出所有许可义务以及代码中的潜在代码质量和安全问题。 |synopys.com|4 第三方软件和Web服务 开发人员的标准做法是,除了在其应用程序中使用开源代码之外,还利用第三方软件和Web服务。一般来说,第三方软件是来自组织开发团队以外的实体的代码 。大多数公司将第三方软件与开源软件区分开来,因为第三方组件是购买或授权使用的。例如,许多企业通过集成在企业整体Web应用程序中的商业第三方聊天软件提供在线客户参与。 Web服务是通过API在Internet上提供的资源,API是软件用于与其他软件进行交互的接口。像开源一样,通过API对Web服务的调用通常不会在包含它们的软件中正式记录。 对不一定信誉良好的Web服务的调用可能会将数据暴露给黑客,以搜索敏感信息,尤其是当这些信息未加密时。许多Web服务收集和存储个人身份信息 ,可能会使使用这些服务的公司面临无意中违反GDPR和安全港等法规的风险。 显然,第三方软件已获得许可。公司使用的每个第三方应用程序都要遵守各种许可条款和条件,其中某些许可可能与其他许可或合并软件的整体许可冲突。 类似地,web服务的使用受它们各自的服务条款的约束。这些术语可以经常更改,恕不另行通知。通常,最终用户协议中隐含的是,即使这些条款发生变化,使用Web服务也等于接受服务条款。这些术语可以限制例如每天查询的最大数量,这可能对软件的使用施加硬上限。并非每个Web服务都是可靠的;性能或可用性问题会严重影响依赖这些服务的应用程序。 总的来说,公司没有跟踪机制可以生成他们所依赖的Web服务的全面列表,并且可以使收购方不知道相关风险。将此列表作为整体软件材料清单的一部分,不仅可以使收购方正确评估风险,而且还提供更全面的清单供参考。 评估专有代码中的风险 专有软件的安全风险 并购活动中的一个重要因素是了解目标公司的网络安全工具和实践及其整体安全状况。来自(ISC)的报告2指出,在250名受访者中,77%的受访者根据目标公司网络安全计划的实力,就是否继续进行并购交易提出了建议。近一半(49%)的受访者表示,他们目睹了由于未披露的数据泄露而导致的并购协议失败。1 在Gartner研究论文“网络安全对并购尽职调查过程至关重要”中,分析师SamOlyaei指出,“今天,安全是一个董事会问题,与之相关的影响可能会严重 降低未来组织的价值,特别是在敏感数据和知识产权方面。“2 不良行为者可以在合并过程中利用组织,依靠整合活动中缺乏纪律以及可能暴露安全漏洞的政策差距。而且考虑到并购交易可以提高收购方的风险敞口和形象 ,它们可以导致其风险敞口的急剧变化。私募股权客户已经注意到,对新增加的投资组合公司的攻击持续增加是不可思议的。在尽职调查过程中,收购方需要深入研究应用程序安全性的许多方面,但特别需要特别注意三个方面。 安全控制和流程 对现有安全控制和流程的评估将有助于收购公司了解目标公司当前的安全成熟度。这项评估检查了诸如密码存储、身份和访问管理以及密码学方面的潜在弱点是否存在控制措施等问题。这可能是一个很好的第一步,为收购者提供一个高层次的研究,了解目标公司如何与他们自己的内部实践相抗衡,并帮助确定在整合过程中可能需要进行什么级别的培训和流程开发。它也可以显示任何。 |synopys.com|5 配置错误、薄弱、误用或缺少安全控制,这些安全控制可能会使公司面临更大的风险,或者至少可以识别在集成过程中需要计划的流程更改。 除了解决任何发现的问题的路线图外,评估还可以使收购公司对目标公司的纪律和成熟度有一个很好的了解。这可以是领导和人员的其他优势或劣势以及整体软件质量和安全性的关键指标。 专有代码的漏洞评估 正如开放源代码需要评估已知的安全漏洞一样,专有代码也必须评估以确定其中存在哪些漏洞。对源代码的静态分析将暴露关键的软件安全漏洞,例如 SQL注入,跨站点脚本以及OWASPTop10的其余部分。如果代码中存在这些漏洞,则会遭到破坏,需要制定补救计划。 对专有代码的审计需要访问源代码才能最准确地了解风险。目标公司不太可能在收盘前向潜在收购方提供这种级别的知识产权访问权,因此值得信赖的第三方应该进行这种分析。这种分析的好处包括完全了解修复漏洞所需的资源,并更好地了解目标公司的成熟度、纪律和安全检查与平衡。 渗透测试 分析目标公司的源代码,控件和流程仍然只是过程的一部分。收购方还应该在软件处于运行状态时从外部验证软件安全性的稳健性。渗透测试-也称为道德黑客-使收购方能够在不良行为者利用它们之前找到任何安全漏洞。 收购者可以利用专业的道德黑客来执行此测试或要求目标公司制作自己的最新渗透测试报告。这将使收购者了解如果黑客尝试利用该软件,该软件将有多安全 ,并提供在集成过程中可能需要修复的问题的见解。 精明的卖家可能会提供先前渗透测试的结果。这应该提供一些保证,但买家应该验证它是最新的,并且它是由信誉良好的第三方执行的。最好是在测试系统而不是生产环境中执行测试。第三方倾向于在生产系统上“放松”,因为担心会使它们崩溃并损害业务。在测试系统上,测试人员在识别漏洞方面可以更加积极。 评估软件质量 在完成交易之前,了解目标软件的整体质量非常重要。对于设计不当的软件,修复和维护的成本可能会很高,并严重降低投资回报率。了解软件系统的设计和整体健康状况使收购者能够: •确认支持交易的假设 •收集信息以计划公司软件堆栈之间的集成 •确定所获得软件可能伴随的风险 设计或架构不当的软件可能会导致收购方承