根据国家标准和技术研究院(NIST)的计算机科学家介绍,我们可以创建比我们今天的漏洞更少100倍。要到达那里,他们建议编码器采用他们在新出版物中编制的方法。
60页文档,NIST Intergency Report(Nistir)8151:大大减少软件漏洞(链接是外部的),是从业和其他来源收集的最新策略的集合,用于减少软件中的错误。While the report is officially a response to a request for methods from the White House’s Office of Science and Technology Policy, NIST computer scientist Paul E. Black says its contents will help any organization that seeks to author high-quality, low-defect computer code.
“我们想让程序员知道它,”该出版物的合著者之一布莱克说。“我们专注于包括他们可能还没有听说过的新颖想法。”
黑色和他的国内同事编制了这些想法,同时使用计算机行业的许多私营公司以及几个政府机构的软件保障专家以及产生大量代码,包括国防部和美国宇航局。由此产生的文件反映了他们的累积投入和经验。
漏洞在软件中很常见。即使是小型应用程序也有数百个错误(链接是外部的)。降低这些数字会带来许多优点,如减少计算机崩溃的数量并重新启动用户需要处理,更不用说减少他们需要下载的补丁更新数量。
Black说,该文件的核心是五套可以提供帮助的方法、工具和概念,所有这些都可以在该文件的第二部分找到。这些方法被组织在五个副标题下,尽管它们的标题都是术语,但每个副标题都有一个常识性的想法作为一个总体原则(参见可下载的信息图表)。
这些方法包括:使用基于数学工具来验证代码是否正常工作;将计算机的程序分解为模块化部分,以便如果一部分发生故障,整个程序不会崩溃;连接当前以隔离运行的代码的分析工具;使用适当的编程语言进行代码尝试执行的任务;并制定用于保护代码的不断变化和改变策略,这是网络攻击目标的保护。
除了技术本身之外,该出版物还提供了对编程社区如何教育的建议,这些建议在哪里以及如何使用它们。它还表明客户应该要求在开发中使用的技术。“你作为消费者应该能够将其撰写到一个您希望卖方根据这些原则开发软件的合同,使其尽可能安全,”黑人说。
当然,安全是当今几乎每个使用技术的人都关心的一个主要问题,布莱克说,白宫最初要求这些方法是其2016年联邦网络安全研发战略行动计划的一部分,计划在未来三到七年实施。但是,尽管安全的概念渗透到文件中,布莱克说这些战略有更广泛的意图。
“安全问题往往会浮出水面,因为我们的对手想要利用我们的弱点,”他说,“但即使没有这种威胁,我们仍然希望避免出现漏洞。”阻碍他们的努力引出了一般原则。你会注意到标题中没有‘安全’这个词。”
提交:行业监管那网络安全




