华为安全英国问题表明需要安全编码
原文发表于 信息时代.这是一个更新的版本,纠正了围绕风河系统对其实时操作系统产品VxWorks的持续安全支持的定位。
英国华为网络安全评估中心最近的一份报告指出了华为软件工程流程中的重大安全问题。虽然关于这份重要报告的大部分新闻都集中在前一年未解决的问题上,但更危险和被忽视的问题是华为明显缺乏安全编码准则和采用的做法。但这是一个可以解决的问题。
对于中国电信巨头华为来说,消息越来越糟。虽然美国已经直接禁止该公司参与未来的政府工作,但英国一直比较接受这样一个事实:华为设备和代码中的许多潜在缺陷是可以修复的。英国在2010年成立了华为网络安全评估中心(HCSEC),以评估和解决华为产品的安全问题,并编写有关年度报告。然而,今年的报告尤其令人震惊。
新闻中对2019年HCSEC报告的大部分关注都与前一年的安全缺陷几乎没有得到解决有关。这包括使用风河公司的VxWorks实时操作系统的旧版本,该系统很快就会被淘汰。华为已经承诺修复这个问题(他们将得到风河系统的持续支持),但它仍然是英国大部分电信基础设施的核心组成部分。
大多数主流媒体似乎忽略了一个关键因素,即该公司开发和部署新软件和硬件的过程可能存在根本性的问题。报告指出,华为处理其内部工程方法的方式存在 "重大技术问题"。
让我们看看报告中概述的那些技术问题的一些例子。必须说,华为所做的最好的事情之一是创建安全编码指南,以帮助他们的工程师和程序员部署新代码。这些准则涵盖了广泛的最佳实践,例如使用来自可信库的已知安全版本的系统函数和进程,当然也不使用具有任何已知漏洞的变体。这在理论上是件好事,但对英国的一个华为生产系统的实际评估发现,这些准则要么从未传达给程序员,要么被他们忽视,要么根本没有执行。
该报告研究了面向公众的应用程序中的特定内存处理功能,在这种情况下,有一组留言板,作为程序的一项功能,用户被邀请添加输入。鉴于用户输入区不应被视为 "可信",根据华为的内部准则,预计这些区域将只包含安全代码。具体来说,测试人员查看了这些生产系统中直接调用内存处理函数memcpy()、strcpy()和sprintf()的情况,众所周知,自1988年以来,这些函数有可能导致缓冲区溢出等严重安全问题。
令人震惊的是,有5000次直接调用17个已知的安全memcpy()函数,但也有600次使用12个不安全的变体。其他函数的比例也差不多。有1400次安全的strcpy()调用,但也有400次有已知漏洞的坏调用。还有2000次安全使用sprintf(),而不安全的只有200次。虽然这些函数的大部分使用都是安全的,这很好,但仍有大约20%的整体代码容易受到已知攻击。这是一个巨大的威胁面攻击区域,而且它还只考虑到了这三个内存处理函数的直接调用,而不是通过函数指针间接使用的任何实例。虽然审计人员只看了这些特定的函数,但这三个被选中的内存处理函数不太可能是唯一有问题的。
虽然华为为他们的程序员创建了一个最佳实践指南是件好事,但显然还需要做更多。概述安全期望是一个步骤,但只有当这些准则被积极遵守并为开发团队所熟悉时,它们才会有效。华为可以通过承诺对他们的程序员进行有效的培训,而不仅仅是略过如何遵循华为内部准则的基础知识,从而在提高其安全性方面取得重大进展。他们必须采取额外的飞跃,展示如何在总体上更安全地编码。编译员需要在好的(安全的)和坏的(不安全的)编码模式方面得到充分的培训,并被赋予责任,每次都要实践他们公司所宣扬的。
HCSEC报告中概述的许多具体编码问题都作为平台的一部分得到了解决和执行。 Secure Code Warrior平台的一部分,该平台培训程序员和网络安全团队始终部署和维护安全代码。平台内不断展示一些概念,如永远不要相信用户输入,永远从已建立的库中提取功能,在将其传递给服务器之前对所有输入进行消毒,以及其他许多安全编码做法。我们还关注高度具体的漏洞,并逐步展示如何避免和缓解这些漏洞。
除了熟练的培训,像华为这样的公司可以利用DevSecOps解决方案。 它直接在集成开发环境中增加了实时辅导,利用根据公司的安全准则定制的安全编码食谱,在开发人员编写代码时,充当他们在编码 "厨房 "的副厨师。这种方法可以帮助华为所有技能水平的程序员编写更好的代码,并识别潜在的漏洞,同时也允许华为的安全专家创建一个 "食谱",坚持他们的政策并帮助执行命令。
从华为的麻烦中得到的一个核心教训是,如果程序员不知道安全编码准则,或者根本不知道如何遵循良好的编码实践,那么创建安全编码准则就毫无意义。在这种情况下,内部最佳实践指南变成了华为自己的zhilaohu;西方人称之为"纸老虎"。这是一份有很多风格的文件,但没有内容。要赋予它真正的力量,需要正确的实用工具和实际的培训项目,一个采取实践方法并建立持续知识和技能的项目。
首席执行官、主席和联合创始人
Secure Code Warrior 我们在这里为您的组织提供服务,帮助您在整个软件开发生命周期中确保代码安全,并创造一种将网络安全放在首位的文化。无论您是应用安全经理、开发人员、CISO或任何涉及安全的人,我们都可以帮助您的组织减少与不安全代码有关的风险。
预定一个演示首席执行官、主席和联合创始人
Pieter Danhieux是全球公认的安全专家,拥有超过12年的安全顾问经验,并在SANS担任首席讲师8年,教授如何针对和评估组织、系统和个人的安全弱点的攻击性技术。2016年,他被评为澳大利亚最酷的科技人士之一(Business Insider),被授予年度网络安全专业人士(AISA - 澳大利亚信息安全协会),并持有GSE、CISSP、GCIH、GCFA、GSEC、GPEN、GWAPT、GCIA认证。
原文发表于 信息时代.这是一个更新的版本,纠正了围绕风河系统对其实时操作系统产品VxWorks的持续安全支持的定位。
英国华为网络安全评估中心最近的一份报告指出了华为软件工程流程中的重大安全问题。虽然关于这份重要报告的大部分新闻都集中在前一年未解决的问题上,但更危险和被忽视的问题是华为明显缺乏安全编码准则和采用的做法。但这是一个可以解决的问题。
对于中国电信巨头华为来说,消息越来越糟。虽然美国已经直接禁止该公司参与未来的政府工作,但英国一直比较接受这样一个事实:华为设备和代码中的许多潜在缺陷是可以修复的。英国在2010年成立了华为网络安全评估中心(HCSEC),以评估和解决华为产品的安全问题,并编写有关年度报告。然而,今年的报告尤其令人震惊。
新闻中对2019年HCSEC报告的大部分关注都与前一年的安全缺陷几乎没有得到解决有关。这包括使用风河公司的VxWorks实时操作系统的旧版本,该系统很快就会被淘汰。华为已经承诺修复这个问题(他们将得到风河系统的持续支持),但它仍然是英国大部分电信基础设施的核心组成部分。
大多数主流媒体似乎忽略了一个关键因素,即该公司开发和部署新软件和硬件的过程可能存在根本性的问题。报告指出,华为处理其内部工程方法的方式存在 "重大技术问题"。
让我们看看报告中概述的那些技术问题的一些例子。必须说,华为所做的最好的事情之一是创建安全编码指南,以帮助他们的工程师和程序员部署新代码。这些准则涵盖了广泛的最佳实践,例如使用来自可信库的已知安全版本的系统函数和进程,当然也不使用具有任何已知漏洞的变体。这在理论上是件好事,但对英国的一个华为生产系统的实际评估发现,这些准则要么从未传达给程序员,要么被他们忽视,要么根本没有执行。
该报告研究了面向公众的应用程序中的特定内存处理功能,在这种情况下,有一组留言板,作为程序的一项功能,用户被邀请添加输入。鉴于用户输入区不应被视为 "可信",根据华为的内部准则,预计这些区域将只包含安全代码。具体来说,测试人员查看了这些生产系统中直接调用内存处理函数memcpy()、strcpy()和sprintf()的情况,众所周知,自1988年以来,这些函数有可能导致缓冲区溢出等严重安全问题。
令人震惊的是,有5000次直接调用17个已知的安全memcpy()函数,但也有600次使用12个不安全的变体。其他函数的比例也差不多。有1400次安全的strcpy()调用,但也有400次有已知漏洞的坏调用。还有2000次安全使用sprintf(),而不安全的只有200次。虽然这些函数的大部分使用都是安全的,这很好,但仍有大约20%的整体代码容易受到已知攻击。这是一个巨大的威胁面攻击区域,而且它还只考虑到了这三个内存处理函数的直接调用,而不是通过函数指针间接使用的任何实例。虽然审计人员只看了这些特定的函数,但这三个被选中的内存处理函数不太可能是唯一有问题的。
虽然华为为他们的程序员创建了一个最佳实践指南是件好事,但显然还需要做更多。概述安全期望是一个步骤,但只有当这些准则被积极遵守并为开发团队所熟悉时,它们才会有效。华为可以通过承诺对他们的程序员进行有效的培训,而不仅仅是略过如何遵循华为内部准则的基础知识,从而在提高其安全性方面取得重大进展。他们必须采取额外的飞跃,展示如何在总体上更安全地编码。编译员需要在好的(安全的)和坏的(不安全的)编码模式方面得到充分的培训,并被赋予责任,每次都要实践他们公司所宣扬的。
HCSEC报告中概述的许多具体编码问题都作为平台的一部分得到了解决和执行。 Secure Code Warrior平台的一部分,该平台培训程序员和网络安全团队始终部署和维护安全代码。平台内不断展示一些概念,如永远不要相信用户输入,永远从已建立的库中提取功能,在将其传递给服务器之前对所有输入进行消毒,以及其他许多安全编码做法。我们还关注高度具体的漏洞,并逐步展示如何避免和缓解这些漏洞。
除了熟练的培训,像华为这样的公司可以利用DevSecOps解决方案。 它直接在集成开发环境中增加了实时辅导,利用根据公司的安全准则定制的安全编码食谱,在开发人员编写代码时,充当他们在编码 "厨房 "的副厨师。这种方法可以帮助华为所有技能水平的程序员编写更好的代码,并识别潜在的漏洞,同时也允许华为的安全专家创建一个 "食谱",坚持他们的政策并帮助执行命令。
从华为的麻烦中得到的一个核心教训是,如果程序员不知道安全编码准则,或者根本不知道如何遵循良好的编码实践,那么创建安全编码准则就毫无意义。在这种情况下,内部最佳实践指南变成了华为自己的zhilaohu;西方人称之为"纸老虎"。这是一份有很多风格的文件,但没有内容。要赋予它真正的力量,需要正确的实用工具和实际的培训项目,一个采取实践方法并建立持续知识和技能的项目。
原文发表于 信息时代.这是一个更新的版本,纠正了围绕风河系统对其实时操作系统产品VxWorks的持续安全支持的定位。
英国华为网络安全评估中心最近的一份报告指出了华为软件工程流程中的重大安全问题。虽然关于这份重要报告的大部分新闻都集中在前一年未解决的问题上,但更危险和被忽视的问题是华为明显缺乏安全编码准则和采用的做法。但这是一个可以解决的问题。
对于中国电信巨头华为来说,消息越来越糟。虽然美国已经直接禁止该公司参与未来的政府工作,但英国一直比较接受这样一个事实:华为设备和代码中的许多潜在缺陷是可以修复的。英国在2010年成立了华为网络安全评估中心(HCSEC),以评估和解决华为产品的安全问题,并编写有关年度报告。然而,今年的报告尤其令人震惊。
新闻中对2019年HCSEC报告的大部分关注都与前一年的安全缺陷几乎没有得到解决有关。这包括使用风河公司的VxWorks实时操作系统的旧版本,该系统很快就会被淘汰。华为已经承诺修复这个问题(他们将得到风河系统的持续支持),但它仍然是英国大部分电信基础设施的核心组成部分。
大多数主流媒体似乎忽略了一个关键因素,即该公司开发和部署新软件和硬件的过程可能存在根本性的问题。报告指出,华为处理其内部工程方法的方式存在 "重大技术问题"。
让我们看看报告中概述的那些技术问题的一些例子。必须说,华为所做的最好的事情之一是创建安全编码指南,以帮助他们的工程师和程序员部署新代码。这些准则涵盖了广泛的最佳实践,例如使用来自可信库的已知安全版本的系统函数和进程,当然也不使用具有任何已知漏洞的变体。这在理论上是件好事,但对英国的一个华为生产系统的实际评估发现,这些准则要么从未传达给程序员,要么被他们忽视,要么根本没有执行。
该报告研究了面向公众的应用程序中的特定内存处理功能,在这种情况下,有一组留言板,作为程序的一项功能,用户被邀请添加输入。鉴于用户输入区不应被视为 "可信",根据华为的内部准则,预计这些区域将只包含安全代码。具体来说,测试人员查看了这些生产系统中直接调用内存处理函数memcpy()、strcpy()和sprintf()的情况,众所周知,自1988年以来,这些函数有可能导致缓冲区溢出等严重安全问题。
令人震惊的是,有5000次直接调用17个已知的安全memcpy()函数,但也有600次使用12个不安全的变体。其他函数的比例也差不多。有1400次安全的strcpy()调用,但也有400次有已知漏洞的坏调用。还有2000次安全使用sprintf(),而不安全的只有200次。虽然这些函数的大部分使用都是安全的,这很好,但仍有大约20%的整体代码容易受到已知攻击。这是一个巨大的威胁面攻击区域,而且它还只考虑到了这三个内存处理函数的直接调用,而不是通过函数指针间接使用的任何实例。虽然审计人员只看了这些特定的函数,但这三个被选中的内存处理函数不太可能是唯一有问题的。
虽然华为为他们的程序员创建了一个最佳实践指南是件好事,但显然还需要做更多。概述安全期望是一个步骤,但只有当这些准则被积极遵守并为开发团队所熟悉时,它们才会有效。华为可以通过承诺对他们的程序员进行有效的培训,而不仅仅是略过如何遵循华为内部准则的基础知识,从而在提高其安全性方面取得重大进展。他们必须采取额外的飞跃,展示如何在总体上更安全地编码。编译员需要在好的(安全的)和坏的(不安全的)编码模式方面得到充分的培训,并被赋予责任,每次都要实践他们公司所宣扬的。
HCSEC报告中概述的许多具体编码问题都作为平台的一部分得到了解决和执行。 Secure Code Warrior平台的一部分,该平台培训程序员和网络安全团队始终部署和维护安全代码。平台内不断展示一些概念,如永远不要相信用户输入,永远从已建立的库中提取功能,在将其传递给服务器之前对所有输入进行消毒,以及其他许多安全编码做法。我们还关注高度具体的漏洞,并逐步展示如何避免和缓解这些漏洞。
除了熟练的培训,像华为这样的公司可以利用DevSecOps解决方案。 它直接在集成开发环境中增加了实时辅导,利用根据公司的安全准则定制的安全编码食谱,在开发人员编写代码时,充当他们在编码 "厨房 "的副厨师。这种方法可以帮助华为所有技能水平的程序员编写更好的代码,并识别潜在的漏洞,同时也允许华为的安全专家创建一个 "食谱",坚持他们的政策并帮助执行命令。
从华为的麻烦中得到的一个核心教训是,如果程序员不知道安全编码准则,或者根本不知道如何遵循良好的编码实践,那么创建安全编码准则就毫无意义。在这种情况下,内部最佳实践指南变成了华为自己的zhilaohu;西方人称之为"纸老虎"。这是一份有很多风格的文件,但没有内容。要赋予它真正的力量,需要正确的实用工具和实际的培训项目,一个采取实践方法并建立持续知识和技能的项目。
点击下面的链接,下载本资料的 PDF 文件。
Secure Code Warrior 我们在这里为您的组织提供服务,帮助您在整个软件开发生命周期中确保代码安全,并创造一种将网络安全放在首位的文化。无论您是应用安全经理、开发人员、CISO或任何涉及安全的人,我们都可以帮助您的组织减少与不安全代码有关的风险。
查看报告预定一个演示首席执行官、主席和联合创始人
Pieter Danhieux是全球公认的安全专家,拥有超过12年的安全顾问经验,并在SANS担任首席讲师8年,教授如何针对和评估组织、系统和个人的安全弱点的攻击性技术。2016年,他被评为澳大利亚最酷的科技人士之一(Business Insider),被授予年度网络安全专业人士(AISA - 澳大利亚信息安全协会),并持有GSE、CISSP、GCIH、GCFA、GSEC、GPEN、GWAPT、GCIA认证。
原文发表于 信息时代.这是一个更新的版本,纠正了围绕风河系统对其实时操作系统产品VxWorks的持续安全支持的定位。
英国华为网络安全评估中心最近的一份报告指出了华为软件工程流程中的重大安全问题。虽然关于这份重要报告的大部分新闻都集中在前一年未解决的问题上,但更危险和被忽视的问题是华为明显缺乏安全编码准则和采用的做法。但这是一个可以解决的问题。
对于中国电信巨头华为来说,消息越来越糟。虽然美国已经直接禁止该公司参与未来的政府工作,但英国一直比较接受这样一个事实:华为设备和代码中的许多潜在缺陷是可以修复的。英国在2010年成立了华为网络安全评估中心(HCSEC),以评估和解决华为产品的安全问题,并编写有关年度报告。然而,今年的报告尤其令人震惊。
新闻中对2019年HCSEC报告的大部分关注都与前一年的安全缺陷几乎没有得到解决有关。这包括使用风河公司的VxWorks实时操作系统的旧版本,该系统很快就会被淘汰。华为已经承诺修复这个问题(他们将得到风河系统的持续支持),但它仍然是英国大部分电信基础设施的核心组成部分。
大多数主流媒体似乎忽略了一个关键因素,即该公司开发和部署新软件和硬件的过程可能存在根本性的问题。报告指出,华为处理其内部工程方法的方式存在 "重大技术问题"。
让我们看看报告中概述的那些技术问题的一些例子。必须说,华为所做的最好的事情之一是创建安全编码指南,以帮助他们的工程师和程序员部署新代码。这些准则涵盖了广泛的最佳实践,例如使用来自可信库的已知安全版本的系统函数和进程,当然也不使用具有任何已知漏洞的变体。这在理论上是件好事,但对英国的一个华为生产系统的实际评估发现,这些准则要么从未传达给程序员,要么被他们忽视,要么根本没有执行。
该报告研究了面向公众的应用程序中的特定内存处理功能,在这种情况下,有一组留言板,作为程序的一项功能,用户被邀请添加输入。鉴于用户输入区不应被视为 "可信",根据华为的内部准则,预计这些区域将只包含安全代码。具体来说,测试人员查看了这些生产系统中直接调用内存处理函数memcpy()、strcpy()和sprintf()的情况,众所周知,自1988年以来,这些函数有可能导致缓冲区溢出等严重安全问题。
令人震惊的是,有5000次直接调用17个已知的安全memcpy()函数,但也有600次使用12个不安全的变体。其他函数的比例也差不多。有1400次安全的strcpy()调用,但也有400次有已知漏洞的坏调用。还有2000次安全使用sprintf(),而不安全的只有200次。虽然这些函数的大部分使用都是安全的,这很好,但仍有大约20%的整体代码容易受到已知攻击。这是一个巨大的威胁面攻击区域,而且它还只考虑到了这三个内存处理函数的直接调用,而不是通过函数指针间接使用的任何实例。虽然审计人员只看了这些特定的函数,但这三个被选中的内存处理函数不太可能是唯一有问题的。
虽然华为为他们的程序员创建了一个最佳实践指南是件好事,但显然还需要做更多。概述安全期望是一个步骤,但只有当这些准则被积极遵守并为开发团队所熟悉时,它们才会有效。华为可以通过承诺对他们的程序员进行有效的培训,而不仅仅是略过如何遵循华为内部准则的基础知识,从而在提高其安全性方面取得重大进展。他们必须采取额外的飞跃,展示如何在总体上更安全地编码。编译员需要在好的(安全的)和坏的(不安全的)编码模式方面得到充分的培训,并被赋予责任,每次都要实践他们公司所宣扬的。
HCSEC报告中概述的许多具体编码问题都作为平台的一部分得到了解决和执行。 Secure Code Warrior平台的一部分,该平台培训程序员和网络安全团队始终部署和维护安全代码。平台内不断展示一些概念,如永远不要相信用户输入,永远从已建立的库中提取功能,在将其传递给服务器之前对所有输入进行消毒,以及其他许多安全编码做法。我们还关注高度具体的漏洞,并逐步展示如何避免和缓解这些漏洞。
除了熟练的培训,像华为这样的公司可以利用DevSecOps解决方案。 它直接在集成开发环境中增加了实时辅导,利用根据公司的安全准则定制的安全编码食谱,在开发人员编写代码时,充当他们在编码 "厨房 "的副厨师。这种方法可以帮助华为所有技能水平的程序员编写更好的代码,并识别潜在的漏洞,同时也允许华为的安全专家创建一个 "食谱",坚持他们的政策并帮助执行命令。
从华为的麻烦中得到的一个核心教训是,如果程序员不知道安全编码准则,或者根本不知道如何遵循良好的编码实践,那么创建安全编码准则就毫无意义。在这种情况下,内部最佳实践指南变成了华为自己的zhilaohu;西方人称之为"纸老虎"。这是一份有很多风格的文件,但没有内容。要赋予它真正的力量,需要正确的实用工具和实际的培训项目,一个采取实践方法并建立持续知识和技能的项目。