
华为英国安全问题表明需要安全编码
最初发表于 信息时代。这是一个更新版本,它纠正了Wind River Systems对其实时操作系统产品VxWorks的持续安全支持周围的定位。
英国华为网络安全评估中心最近的一份报告确定了华为软件工程流程中的主要安全问题。尽管有关这份重要报告的大部分新闻都集中在去年未解决的问题上,但更危险和被忽视的问题是华为显然缺乏采用的安全编码准则和实践。但这是一个可以解决的问题。
对于中国电信巨头华为来说,这个消息越来越糟。尽管美国断然禁止该公司参与未来的政府工作,但英国更加接受这样一个事实,即华为设备和代码中的许多潜在缺陷是可以修复的。英国于2010年成立了华为网络安全评估中心(HCSEC),以评估和解决华为产品的安全问题,并生产 年度报告 关于他们。但是,今年的报告尤其令人发指。
新闻中对2019年HCSEC报告的关注在很大程度上与去年几乎没有解决任何安全漏洞这一事实有关。这包括使用来自Wind River的旧版本的VxWorks实时操作系统,该操作系统的生命周期即将结束。华为已承诺解决这个问题(他们将获得Wind River Systems的持续支持),但它仍然是英国大部分电信基础设施的核心组成部分。
大多数主流媒体似乎忽视了一个关键因素,即公司开发和部署新软件和硬件过程中可能存在的根本性中断的过程。该报告指出,华为处理其内部工程方法的方式存在 “重大技术问题”。
让我们来看一下报告中概述的技术问题的一些例子。必须说,华为所做的最好的事情之一就是制定安全编码指南,以帮助他们的工程师和程序员部署新代码。这些指南涵盖了广泛的最佳实践,例如使用来自可信库的已知安全版本的系统功能和流程,当然也不是具有任何已知漏洞的变体。从理论上讲,这是一件好事,但对英国华为生产系统的真实评估发现,这些指导方针要么从未传达给程序员,要么被他们忽视,要么根本没有得到执行。
该报告研究了面向公众的应用程序中特定的内存处理功能,在本例中是一组留言板,邀请用户根据程序添加输入。鉴于用户输入区域不应被视为 “可信”,根据华为内部准则,预计这些区域将仅包含安全代码。具体而言,测试人员研究了在这些生产系统中直接调用内存处理函数 memcpy ()、strcpy () 和 sprintf () 的情况,已知这些函数可能会导致严重的安全问题,例如缓冲区溢出 1988 。
令人震惊的是,有5,000次直接调用了17个已知的安全memcpy()函数,但也有600次使用了12种不安全的变体。它与其他功能的比例大致相同。有 1,400 次安全的 strcpy () 调用,但也有 400 次存在已知漏洞的错误调用。并发现了 sprintf () 有 2,000 种安全用途,相比之下,有 200 种不安全的用途。虽然这些功能的大部分用途是安全的,但仍有大约 20% 的代码容易受到已知攻击。这是一个巨大的威胁面攻击区域,它也只考虑了对三个内存处理函数的直接调用,没有考虑通过函数指针间接使用它们的任何实例。尽管审计师只研究了这些特定的函数,但所选的三个内存处理函数不太可能是唯一有问题的函数。
尽管华为为程序员制定最佳实践指南是件好事,但显然还有更多工作要做。这是概述安全期望的一个步骤,但只有积极遵循这些指导方针并让开发人员熟悉这些期望,这些期望才有效。华为可以通过承诺有效培训程序员,而不仅仅是略读如何遵循华为内部指导方针的基础知识,在提高安全性方面取得重大进展。他们必须付出额外的飞跃,演示如何更安全地进行编码。程序员需要接受关于好(安全)和不好(不安全)编码模式的充分培训,并有责任每次都实践公司所宣扬的内容。
HCSEC报告中概述的许多特定编码问题都已作为其中的一部分得到解决和执行 安全代码勇士 平台,它培训程序员和网络安全团队始终部署和维护安全代码。平台内不断演示诸如从不信任用户输入、始终从已建立的库中提取函数、在将所有输入传递给服务器之前对其进行消毒以及许多其他安全编码实践等概念。我们还会研究高度特定的漏洞,并逐步说明如何避免和缓解这些漏洞。
除了熟练的培训外,像华为这样的公司还可以使用DevSecOps解决方案。它直接在 IDE 中添加实时指导,利用根据公司安全准则定制的安全编码配方,在编码 “厨房” 中充当开发人员编写代码的副厨师。这种方法可以帮助各种技能水平的华为程序员编写更好的代码并识别潜在的漏洞,同时也允许华为的安全专家创建一本符合其政策并帮助执行命令的 “食谱”。
从华为的麻烦中吸取的核心教训应该是,如果程序员不了解安全编码指南,或者干脆不知道如何遵循良好的编码规范,那么制定安全编码指南就毫无意义。在这种情况下,内部最佳实践指南竟然是华为自己的zhilaohu;西方称之为”一只纸老虎'。这是一份风格多样,但没有实质内容的文件。要赋予它真正的实力,就需要正确的实用工具和实际的培训计划,该计划采用动手实践的方法,不断积累知识和技能。
首席执行官、主席和联合创始人

Secure Code Warrior可帮助您的组织在整个软件开发生命周期中保护代码,并营造一种将网络安全置于首位的文化。无论您是应用安全经理、开发人员、首席信息安全官还是任何与安全相关的人员,我们都能帮助您的组织降低与不安全代码相关的风险。
预约演示首席执行官、主席和联合创始人
Pieter Danhieux是全球公认的安全专家,拥有超过12年的安全顾问经验,并在SANS担任首席讲师8年,教授如何针对和评估组织、系统和个人的安全弱点的攻击性技术。2016年,他被评为澳大利亚最酷的科技人士之一(Business Insider),被授予年度网络安全专业人士(AISA - 澳大利亚信息安全协会),并持有GSE、CISSP、GCIH、GCFA、GSEC、GPEN、GWAPT、GCIA认证。


最初发表于 信息时代。这是一个更新版本,它纠正了Wind River Systems对其实时操作系统产品VxWorks的持续安全支持周围的定位。
英国华为网络安全评估中心最近的一份报告确定了华为软件工程流程中的主要安全问题。尽管有关这份重要报告的大部分新闻都集中在去年未解决的问题上,但更危险和被忽视的问题是华为显然缺乏采用的安全编码准则和实践。但这是一个可以解决的问题。
对于中国电信巨头华为来说,这个消息越来越糟。尽管美国断然禁止该公司参与未来的政府工作,但英国更加接受这样一个事实,即华为设备和代码中的许多潜在缺陷是可以修复的。英国于2010年成立了华为网络安全评估中心(HCSEC),以评估和解决华为产品的安全问题,并生产 年度报告 关于他们。但是,今年的报告尤其令人发指。
新闻中对2019年HCSEC报告的关注在很大程度上与去年几乎没有解决任何安全漏洞这一事实有关。这包括使用来自Wind River的旧版本的VxWorks实时操作系统,该操作系统的生命周期即将结束。华为已承诺解决这个问题(他们将获得Wind River Systems的持续支持),但它仍然是英国大部分电信基础设施的核心组成部分。
大多数主流媒体似乎忽视了一个关键因素,即公司开发和部署新软件和硬件过程中可能存在的根本性中断的过程。该报告指出,华为处理其内部工程方法的方式存在 “重大技术问题”。
让我们来看一下报告中概述的技术问题的一些例子。必须说,华为所做的最好的事情之一就是制定安全编码指南,以帮助他们的工程师和程序员部署新代码。这些指南涵盖了广泛的最佳实践,例如使用来自可信库的已知安全版本的系统功能和流程,当然也不是具有任何已知漏洞的变体。从理论上讲,这是一件好事,但对英国华为生产系统的真实评估发现,这些指导方针要么从未传达给程序员,要么被他们忽视,要么根本没有得到执行。
该报告研究了面向公众的应用程序中特定的内存处理功能,在本例中是一组留言板,邀请用户根据程序添加输入。鉴于用户输入区域不应被视为 “可信”,根据华为内部准则,预计这些区域将仅包含安全代码。具体而言,测试人员研究了在这些生产系统中直接调用内存处理函数 memcpy ()、strcpy () 和 sprintf () 的情况,已知这些函数可能会导致严重的安全问题,例如缓冲区溢出 1988 。
令人震惊的是,有5,000次直接调用了17个已知的安全memcpy()函数,但也有600次使用了12种不安全的变体。它与其他功能的比例大致相同。有 1,400 次安全的 strcpy () 调用,但也有 400 次存在已知漏洞的错误调用。并发现了 sprintf () 有 2,000 种安全用途,相比之下,有 200 种不安全的用途。虽然这些功能的大部分用途是安全的,但仍有大约 20% 的代码容易受到已知攻击。这是一个巨大的威胁面攻击区域,它也只考虑了对三个内存处理函数的直接调用,没有考虑通过函数指针间接使用它们的任何实例。尽管审计师只研究了这些特定的函数,但所选的三个内存处理函数不太可能是唯一有问题的函数。
尽管华为为程序员制定最佳实践指南是件好事,但显然还有更多工作要做。这是概述安全期望的一个步骤,但只有积极遵循这些指导方针并让开发人员熟悉这些期望,这些期望才有效。华为可以通过承诺有效培训程序员,而不仅仅是略读如何遵循华为内部指导方针的基础知识,在提高安全性方面取得重大进展。他们必须付出额外的飞跃,演示如何更安全地进行编码。程序员需要接受关于好(安全)和不好(不安全)编码模式的充分培训,并有责任每次都实践公司所宣扬的内容。
HCSEC报告中概述的许多特定编码问题都已作为其中的一部分得到解决和执行 安全代码勇士 平台,它培训程序员和网络安全团队始终部署和维护安全代码。平台内不断演示诸如从不信任用户输入、始终从已建立的库中提取函数、在将所有输入传递给服务器之前对其进行消毒以及许多其他安全编码实践等概念。我们还会研究高度特定的漏洞,并逐步说明如何避免和缓解这些漏洞。
除了熟练的培训外,像华为这样的公司还可以使用DevSecOps解决方案。它直接在 IDE 中添加实时指导,利用根据公司安全准则定制的安全编码配方,在编码 “厨房” 中充当开发人员编写代码的副厨师。这种方法可以帮助各种技能水平的华为程序员编写更好的代码并识别潜在的漏洞,同时也允许华为的安全专家创建一本符合其政策并帮助执行命令的 “食谱”。
从华为的麻烦中吸取的核心教训应该是,如果程序员不了解安全编码指南,或者干脆不知道如何遵循良好的编码规范,那么制定安全编码指南就毫无意义。在这种情况下,内部最佳实践指南竟然是华为自己的zhilaohu;西方称之为”一只纸老虎'。这是一份风格多样,但没有实质内容的文件。要赋予它真正的实力,就需要正确的实用工具和实际的培训计划,该计划采用动手实践的方法,不断积累知识和技能。

最初发表于 信息时代。这是一个更新版本,它纠正了Wind River Systems对其实时操作系统产品VxWorks的持续安全支持周围的定位。
英国华为网络安全评估中心最近的一份报告确定了华为软件工程流程中的主要安全问题。尽管有关这份重要报告的大部分新闻都集中在去年未解决的问题上,但更危险和被忽视的问题是华为显然缺乏采用的安全编码准则和实践。但这是一个可以解决的问题。
对于中国电信巨头华为来说,这个消息越来越糟。尽管美国断然禁止该公司参与未来的政府工作,但英国更加接受这样一个事实,即华为设备和代码中的许多潜在缺陷是可以修复的。英国于2010年成立了华为网络安全评估中心(HCSEC),以评估和解决华为产品的安全问题,并生产 年度报告 关于他们。但是,今年的报告尤其令人发指。
新闻中对2019年HCSEC报告的关注在很大程度上与去年几乎没有解决任何安全漏洞这一事实有关。这包括使用来自Wind River的旧版本的VxWorks实时操作系统,该操作系统的生命周期即将结束。华为已承诺解决这个问题(他们将获得Wind River Systems的持续支持),但它仍然是英国大部分电信基础设施的核心组成部分。
大多数主流媒体似乎忽视了一个关键因素,即公司开发和部署新软件和硬件过程中可能存在的根本性中断的过程。该报告指出,华为处理其内部工程方法的方式存在 “重大技术问题”。
让我们来看一下报告中概述的技术问题的一些例子。必须说,华为所做的最好的事情之一就是制定安全编码指南,以帮助他们的工程师和程序员部署新代码。这些指南涵盖了广泛的最佳实践,例如使用来自可信库的已知安全版本的系统功能和流程,当然也不是具有任何已知漏洞的变体。从理论上讲,这是一件好事,但对英国华为生产系统的真实评估发现,这些指导方针要么从未传达给程序员,要么被他们忽视,要么根本没有得到执行。
该报告研究了面向公众的应用程序中特定的内存处理功能,在本例中是一组留言板,邀请用户根据程序添加输入。鉴于用户输入区域不应被视为 “可信”,根据华为内部准则,预计这些区域将仅包含安全代码。具体而言,测试人员研究了在这些生产系统中直接调用内存处理函数 memcpy ()、strcpy () 和 sprintf () 的情况,已知这些函数可能会导致严重的安全问题,例如缓冲区溢出 1988 。
令人震惊的是,有5,000次直接调用了17个已知的安全memcpy()函数,但也有600次使用了12种不安全的变体。它与其他功能的比例大致相同。有 1,400 次安全的 strcpy () 调用,但也有 400 次存在已知漏洞的错误调用。并发现了 sprintf () 有 2,000 种安全用途,相比之下,有 200 种不安全的用途。虽然这些功能的大部分用途是安全的,但仍有大约 20% 的代码容易受到已知攻击。这是一个巨大的威胁面攻击区域,它也只考虑了对三个内存处理函数的直接调用,没有考虑通过函数指针间接使用它们的任何实例。尽管审计师只研究了这些特定的函数,但所选的三个内存处理函数不太可能是唯一有问题的函数。
尽管华为为程序员制定最佳实践指南是件好事,但显然还有更多工作要做。这是概述安全期望的一个步骤,但只有积极遵循这些指导方针并让开发人员熟悉这些期望,这些期望才有效。华为可以通过承诺有效培训程序员,而不仅仅是略读如何遵循华为内部指导方针的基础知识,在提高安全性方面取得重大进展。他们必须付出额外的飞跃,演示如何更安全地进行编码。程序员需要接受关于好(安全)和不好(不安全)编码模式的充分培训,并有责任每次都实践公司所宣扬的内容。
HCSEC报告中概述的许多特定编码问题都已作为其中的一部分得到解决和执行 安全代码勇士 平台,它培训程序员和网络安全团队始终部署和维护安全代码。平台内不断演示诸如从不信任用户输入、始终从已建立的库中提取函数、在将所有输入传递给服务器之前对其进行消毒以及许多其他安全编码实践等概念。我们还会研究高度特定的漏洞,并逐步说明如何避免和缓解这些漏洞。
除了熟练的培训外,像华为这样的公司还可以使用DevSecOps解决方案。它直接在 IDE 中添加实时指导,利用根据公司安全准则定制的安全编码配方,在编码 “厨房” 中充当开发人员编写代码的副厨师。这种方法可以帮助各种技能水平的华为程序员编写更好的代码并识别潜在的漏洞,同时也允许华为的安全专家创建一本符合其政策并帮助执行命令的 “食谱”。
从华为的麻烦中吸取的核心教训应该是,如果程序员不了解安全编码指南,或者干脆不知道如何遵循良好的编码规范,那么制定安全编码指南就毫无意义。在这种情况下,内部最佳实践指南竟然是华为自己的zhilaohu;西方称之为”一只纸老虎'。这是一份风格多样,但没有实质内容的文件。要赋予它真正的实力,就需要正确的实用工具和实际的培训计划,该计划采用动手实践的方法,不断积累知识和技能。

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




%20(1).avif)
.avif)
