

高层摘要 放眼全球,不断增长的 络犯罪、 络间谍活动和 络恐怖主义令各公司企业苦不堪言。除了公司声誉严重受损外,安全系统被破坏,还给客户的隐私、安全和生活带来巨大威胁。上 的案件仅占每天发生攻击的一小部分。仅 2016 年,美国在线信任联盟就记录了 82,000 起 络 “安全事件”(在线信任联盟, 2017 年)。然而,由于人们通常不会 告 络攻击,他们估计实际事件数量超过 250,000 起(在线信任联盟,2017 年)。随着 络犯罪的发生率逐年上升, 攻击的范围和损害也在不断增加。 络犯罪:目标与影响

图 1:F-35 战斗机信息通过一款惯用的 络安全漏洞工具被盗。 各种商业组织(尤其是拥有政府合同的商业组织)以及政府机构是最常见的 络攻击目标,因为他们手中握有宝贵的信息。最富戏剧性的是,F-35 联合打击战斗机、P-8 波塞冬巡逻机、C-130 大力神运输机、联合制导攻击武器(JDAM) 炸弹以及澳大利亚海军未来舰船的信息于 2016 年11 月从澳大利亚国防公司泄漏( 图 1,Ars Technica, 2017 年)。 络犯罪分子攻击企业的动机多种多样。有时是为了获取敏感信息,比如意图窃取知识产权。有时是为了破坏或延迟新产品或新项目的设计流程。攻击的重点还可能是通过篡改设计的关键部分来损害产品本身的功能。例如,通过更改设计过程中某些导线外的绝缘材料,第三方便能更容易地通过电磁辐射监视最终产品的活动。设计数据也可能完全遭到破坏,使数月乃至数年的设计工作毁于一旦。 络安全漏洞的频发和严重后果震惊了全球各大公司,迫使他们采取更完善的措施来保护整个供应链中的信息。本白 皮 书 将 探 讨 Siemens Digital Industries Software 等供应商如何奋力应对各种新的严苛安全要求。 保护企业软件解决方案的安全


图 3:Siemens Capital 软件套件为电气系统和线束的整个生命周期提供支持。 自 2011 年以来,西门子一直在安全性方面与客户开展合作。Siemens Digital Industries Software 的安全增强功能与其 IT 部门的努力密不可分。西门子 IT 部门引领了在安全性方面与各公司的整体互动,推动了企业在安全培训与安全扫描工具方面的供应商选择和预算,同时协调了西门子各部门之间的安全合作。作为互动的一部分,西门子选择了 Capital 电气系统设计和集成软件套件来参与高级安全计划。 Siemens Capital 软件套件为电气系统和线束的整个生命周期提供支持,从早期的电气和电子产品构架探索到生产设计,再到现场的生产准备和维护(图 3),可谓无所不包。Capital 解决方案可以部署在本地或云中,采用多层结构, 以数据为中心,并具有基于 Web 的胖客户端。Capital 套件涵盖了广泛的常用软件技术和设计方法,堪称保护软件解决方案安全领域的典范。 在开启安全性之旅的初期,Capital 团队明确了各必要流程的目标,并获得了西门子内部高管层的支持。要确保Capital 电气系统设计和集成套件的安全,靠一个部门的单打独斗是不可能完成的。因此,他们向西门子高管层提议 让 IT 与销售部门协同合作。获得批准后,Capital 软件开发部门组建了一支安全项目团队,以期实现以下三个目标, 从而确保 Capital 套件安全: 1. 解决现有安全缺陷 2. 防止引入新的安全缺陷 3. 通过培训和共享最佳实践来形成安全文化。 为了解决现有的安全缺陷,Capital 软件团队使用了基于云的解决方案来执行静态应用程序安全测试 (SAST)。选择SAST 技术的原因是,它们提供了更大的代码覆盖范围,可以补充 Capital 软件团队已在 S-SDLC 流程中使用的动态应用程序安全测试 (DAST)。基于云的 SAST 解决方案扫描了

图 4:短反馈环有利于更敏捷地识别和修复缺陷。 Capital 套件的代码,并列出了现有安全缺陷的列表。他们使用此列表估算解决每个缺陷所需的工作,然后对缺陷分组并按优先顺序进行有效修复。首先解决的是具有最高潜在影响的缺陷,并一同解决了相关缺陷。这一流程直接纠正了 Capital 套件所含数百万行代码中的所有缺陷。 接下来,该团队确定了各种常规模式,并根据 Capital 套件的代码库、工具和流程制定了最佳实践。最成功的一点是SAST 评估 告了大量误 ,即在没有安全缺陷的地方识别出安全缺陷。基于云的解决方案消除了许多此类误 ,但仍有大量问题需要由 Siemens Digital Industries Software 工程师解决。他们为此创建了一套用于识别误 并判断其是否需要屏蔽的方法,其中包括用于确定所识别误 之真实性的审查和批准流程。这些最佳实践首先在部门工程博客上发布,然后在定期的工程 区会议上讨论。 这些基于云的解决方案非常实用,因为它们会定期更新, 从而让工具识别新型安全缺陷。这样,Capital 团队就能重新扫描先前确定为干净的代码,发现并解决新的安全缺陷。当然,要充分利用这些周期性更新,就需要可靠的扫描过程并不断投资于发现和解决安全缺陷,即便是对于已经扫描的代码也是如此。 缺陷补救情况的跟踪通过持续提交代码更改并重新运行SAST 扫描来完成。Capital 软件团队开发了自动脚本来执行各种任务,其中包括打包用于 SAST 扫描的代码,以及将扫描结果加载到统一的代码度量平台中。为了弘扬西门子安全计划,Siemens Digital Industries Software 致力于通过不断改进代码的体系结构和设计,使安全软件的开发更加轻松顺利。这是通过定期缩小和保护应用程序的攻击面并主动管理安全风险来实现的。 SAST 技术的复杂性和 Capital 解决方案代码库的规模意味着每次扫描都需要大量时间,导致面向软件工程师的反馈环相对较长。为了缓解这种情况,Capital 软件团队采用了一套互补的工具,这些工具以 SAST 扫描覆盖范围为依托, 实现了更短的反馈环(图 4)。这种最短的反馈环由专注于安全性的静态代码分析提供,该分析会在软件工程师使用的集成式开发环境中连续运行。为此,Capital 团队选择了JetBrains ? IntelliJ 代码检查静态代码分析引擎与开源 Find Security Bugs SAST 解决方案配对使用。

图 5:使用基于计算机的培训来增加安全知识。 除了提供更快的反馈环外,这些工具还通过检查单元测试 的完成情况、单元测试的覆盖范围和代码重复情况,将安 全性集成到用于控制代码和测试交付项的自动质量门控中。在工程师与团队之间以及团队与发布之间的代码传递均受 到门控。这样便可将安全性根植于软件开发过程中并提高 保护强度,同时无需软件工程师完成额外工作,从而达成 第二个安全性目标。 对于第三个目标 “形成安全文化”,Capital 团队与 IT 和HR 合作,为软件和质量保证工程师开展了基于计算机的安全培训并进行了相应管理。他们选择了 Security Innovations ? 作为培训提供商。培训课程针对 Capital 解决方案中的技术堆叠和各个团队的特定需求进行了量身定制。为确保及时参加培训,各部门制定了推动计划,根据截止日期对培训完成指标进行跟踪,并将安全培训整合到新员工的入职流程中。 Capital 团队采用了三种主要的安全培训方法。第一种是由讲师指导的针对安全测试的质量保证培训。这些课程的重点是 Capital 开发团队自 2011 年开始与具有安全意识的客户合作以来应用的增强和改进技术。例如,Siemens Digital Industries Software 曾使用 DAST 来评估应用程序, 方法是像黑客那样发动攻击并观察结果。其次,Capital 团队通过第三方提供商 Security Innovations 进行了基于计算机的安全软件开发方面的培训。他们分别为开发人员、 络工程师和安全工程师制定了课程集。每一课程集都重点 针对每种工作的安全问题(图 5)。例如,开发人员课程集中包含 “创建安全 Java 代码基础知识”,“创建安全 Java 代码” 和 “Open Web Application Security Project 的十大威胁和缓解措施” 之类的主题。最后一种方法是成立了一支安全项目团队,负责制定一系列供整个 Siemens Software 共享的最佳实践。这些最佳实践已通过 Siemens Digital Industries Software 中央 IT 组织进行共享。 解决开源安全问题 设计工具供应商的另一大顾虑是第三方开发商提供的开源 软件 (OSS)。许多功能强大的软件解决方案(包括 Capital 套件)都包含相当一部分的 OSS。OSS 对于企业而言确实 是一种宝贵的工具,可节省数天乃至数月的开发时间。但是, OSS 可能会将缺陷引入原本安全的软件解决方案中。供应商需要确保其软件解决方案中所使用的 OSS 安全无虞。 必须使用 SAST 扫描在开源软件所在的代码上下文中单独分析这些软件,然后才能将其加入供应商的产品中。发现问题后应加以解决或者说服 OSS 开发人员自行解决,这一点非常重要。公开可用的安全漏洞数据库也是此流程可以利用的重要资源。这些数据库可跟踪软件中的已知漏洞, 并以可搜索的格式发布它们。其中一个典型示例便是美国国家漏洞数据库 (NVD)(美国国家标准与技术研究院, 2018 年)。 然而,只关注 OSS 的安全性是不够的,必须认真考虑降低对它的依赖。每个开发团队都应检查 OSS 的使用情况,以 确定是否有可能升级、删除或替换其功能。减轻 OSS 中安 全缺陷风险的方法有,在供应商代码中进行变通以替换或 取代 OSS 执行的功能、说服 OSS 开发人员解决检测到的问题或者改用安全性更高的其他解决方案。此外,还应制定 并共享一系列 OSS 最佳安全使用实践,以帮助传播解决方案。在最终批准使用 OSS 前,必须审查其对安全性的影响。 主要经验教训和成就
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!