随着公司竞相进行数字化转型以保持竞争力,将工业物联网(IIoT)连接集成到其业务运营中已成为每家公司都会做的事情。面对有关IIoT平台和解决方案“构建还是购买”的选择,一些组织选择了前者,想当然地认为这样做会比后者省钱。自行完成(DIY)IIoT项目带来的经济问题已经显而易见,但许多组织没有考虑到的一个日益重要的方面:
那就是网络安全。
企业业务很容易遭受到网络攻击。信息技术运营公司SolarWinds就是个很好的案例,该公司在2020年无意间成了破坏其客户软件供应链的媒介。据该公司估计,处理此次事件的直接成本至少为1800万美元,更不用说随之而来的品牌损失了。更加令人震惊的案例是被称为TRITON的恶意软件。2017年,一个疑似民族主义者部署了这个恶意数字工具,几乎成功地摧毁了一家石化厂。
面对这些威胁,企业需要为迎战网络安全风险做好准备,同时又可以有效地分配资源来促进日常运营。即使对于以数字解决方案为主要业务线的公司而言,这样做也是具有挑战性的,尤其是对于那些只靠开发和销售软件赚钱的公司尤其如此。
DIY IIoT平台的安全注意事项
首先,安全地开发内部IIoT平台需要有适合的安全专家。确保开发人员、测试人员、架构师、产品经理和执行人员理解设计决策和权衡对网络安全的影响通常说起来容易做起来难。
您需要条理清晰地明确如何衡量和管理网络风险:
您的风险承受能力有多大?您如何权衡降低风险与业务目标之间的关系?谁来决定要解决哪些缺陷,要接受哪些缺陷(如果出现问题需要承担负责)的艰难决定?
在技术层面上,每个工程师需要学习如何将安全性原则纳入其对等代码审查中(假设您的组织已经在进行这些工作),同时质保人员需要确保他们需要审查应用程序中出现的安全性错误,而不仅仅是功能性的错误。您的组织将需要定期进行安全开发培训,以使这些技能保持最新状态。
假设必要的人员已经到位,或经过了充分的交叉培训,下一步将是选择和应用安全的开发框架。无论选择Microsoft安全开发生命周期(SDL),开源软件保障成熟度模型(SAMM)还是其他范例,构建程序管理组件以在整个组织中强制合规都是至关重要的。
如果您已经做到了这一点,并且希望继续DIY的道路,那么下一步,
您需要将适当的自动扫描工具整合到您的开发系统中:
除了使用静态分析来识别编程错误之外,您还应该定期进行软件组成分析,以检查专有代码调用的第三方库。在编译应用程序并准备将其投入生产时,建议您在运行时对其进行动态分析,以确保没有以前无法识别的漏洞。
尽管所有这些功能都有开源选项,但是可以支持现代连续集成/连续部署过程和主要合规性要求的企业级产品通常价格不菲。
不过,一旦将其投入生产,您就需要一直为安全负责。定期进行渗透测试(由员工和聘请的外部专家进行),对于模拟现实世界的攻击并尽早先于坏人发现漏洞至关重要。
此外,如果安全研究人员发现您的新DIY解决方案有问题,该怎么办?这时您就需要事件响应功能来协商和执行协调的漏洞披露。否则,研究人员可能会因进度缓慢而进行不协调漏洞披露。
即使您已成功实现上述所有条件,
您仍将需要无限期地维护自己的自制平台,将工程资源专用于修复安全漏洞、更新库并与行业标准协议保持一致:
除了预先产生的固定开发成本外,您还需要在DIY项目的整个生命周期中始终为这些经常性运营支出作出预算。行业趋势表明,有30%的开发时间用于代码维护,而根据我的经验,其中大约三分之一专门用于确保安全性。
最后,建立自己的IIoT平台时您将不得不放弃的令人垂涎的“规模化效益”。作为一个主营业务不是编写软件的组织,您可能会发现与私营和公共部门的其他安全专家进行有效的工作和沟通并不容易。
同样,缺乏安全构建应用程序的跟踪记录可能会影响您的网络保险费。
总结
面对这些需求以及保护和维护自己的IIoT平台的复杂性,尝试这样做会是一项艰巨的任务。考虑到这种努力所固有的费用和风险,不只一位独立的安全专家建议不要这样做。更好的选择是使用具有预先构建的解决方案、市场领先的平台,该平台应该整合了这些安全卓越实践。这样做将帮助您以经济高效的方式管理信息安全风险,同时专注于对您而言更重要的事情:您的业务。