来自 安全 2021-12-14 00:18 的文章

云防护_网站云防护_打不死

云防护_网站云防护_打不死

DO-178C,机载系统和设备认证中的软件考虑因素,是RTCA,Inc.与欧洲民用航空设备组织EUROCAE联合开发的标准。除DO-178C外,还有D-326A(美国)和ED-202A(欧洲),标题为"适航安全流程规范",是FAA和EASA在航空网络安全适航性认证方面唯一可接受的合规性方法(AMC)。正式来说,DO-326A是一组文件(DO-326A/ED-202A、ED-205、DO-356A/ED-203A和DO-355/ED-204)的一部分"……飞机认证指南,以处理故意未经授权的电子交互对飞机安全的威胁。它增加了数据要求和合规目标,如飞机开发和认证的一般活动所组织的那样,以处理未经授权的相互作用对飞机安全的威胁。"简单地说,现代航空电子系统需要FAA或EASA认证,cc防御设置,必须同时满足DO-178C的安全考虑要求和DO-326A(set)的安全要求。DevSecOps公司DevOps是从软件开发和系统操作的结合中发展起来的,以确保软件开发不是在真空中完成的,而是与在现实世界中操作这些系统的团队相结合。软件开发方法改进的下一步是DevSecOps,其中安全性是开发过程中的一个关键部分。这里的认识是,安全性故障与质量故障是相同的,或者更糟。现场产品的缺陷不仅影响公司的声誉,云服务器ddos防御,而且影响到公司的利润。更糟糕的是,如果事后复查确定这些缺陷本可以轻易避免的话。所以DevSecOps是团队级的集成,包括构建软件、操作软件和保护软件。此外,在敏捷和连续过程中构建安全性的一个关键原因是建立在项目积累的知识之上。例如,在项目开始时,期望软件团队了解其完整的攻击面是不合理的。在日常运营中建立安全性可以积累专业知识。早起是关键。考虑到这一点,DevSecOps通常在DevOps流程图-周期的每个部分的安全性中进行如下说明: 图1:DevOps循环、连续代码、构建、测试和部署。DevSecOps正在将安全性集成到循环的所有部分。来源:"Tripwire-DevOps速度下的安全"安全关键软件中的DevOps和DevSecOps采用DevOps(和DevSecOps)的一个关键方面是自动化开发过程中繁琐的、可能容易出错的手动步骤。这其中的一部分是向持续集成(CI)和部署(CD)的转移。每种方法的目的都是通过在生命周期的早期发现和修复集成和部署问题,加快实现质量和安全性的时间。一个连续的过程提供了缺陷和漏洞方面的反馈(除了安全性、性能和其他质量属性),从而改进了后续的迭代。这种方法已经在IT软件中被证明是成功的,并且在嵌入式开发和安全关键软件方面正在取得进展。在安全关键软件中采用敏捷过程、Dev(Sec)Ops和CI/CD最大的挑战是需要满足审计、验证和认证要求。许多敏捷方法和DevOps过程和技术没有详细定义,让团队在他们认为合适的时候采用细节。然而,安全和安保标准需要一个严格、明确的过程。这是兼容的,但它确实需要软件团队定义和记录他们的DevOps工具、过程和技术。这方面的一个重要例子是可追溯性。验证要求得到满足,验证证据对于证明系统功能和适航性非常重要。任何DevSecOps过程都必须精确地管理可追溯性。敏捷开发模式中的协同操作与协同开发方法传统的软件开发方法(通常被归类为"瀑布式"方法)意味着软件开发生命周期的每个主要阶段在下一阶段开始之前从开始到结束都是完整的。在安全关键系统中,这通常以V型为特征,如下所示:图2:软件开发的"V模型"显示了软件开发项目的典型时间线。V型模型对于安全关键型软件很重要,因为它定义了每个阶段的依赖关系和各个阶段所需的可追溯性链接(例如,需求驱动系统架构(architecture),系统测试验证需求,这被视为敏捷的对立面,但是采用一种混合的方法,阿里云虚拟主机防御cc,利用诸如CI/CD和Dev(Sec)Ops这样的连续过程仍然是可能的。尽管时间线朝着更完整的实现、验证和验证方向发展,但仍然可以在开发的主要阶段迭代。V模型可能意味着瀑布式开发,ddos防御市场,但标准并不妨碍敏捷和迭代技术。定义和规划瀑布/V模型:在实践中,许多航空电子系统在供应商选择过程中,都预先定义了需求,作为征求建议书(RFP)过程的一部分。里程碑也有可能是作为大规模机身项目的一部分而建立的,在这个项目中,ddos怎么破防御,交付物得到了很好的定义。在这种情况下,有必要围绕这些需求和里程碑进行规划。这些需求提供了设计和植入阶段,这些阶段仍然可以是迭代的、敏捷的过程。软件开发和验证的敏捷方法:在代码的设计、实现和测试过程中选择的软件开发方法由制造商决定,只要它符合良好工程实践的基本标准,具有可追溯性、安全可靠的实践,以及结果的报告和文件证据(举几个例子)尽管整个生命周期不一定在敏捷框架内工作,但敏捷和迭代方法在这个阶段可以很好地工作。事实上,这种方法通过提前转移开发的许多重要部分(如测试)来获得更好的结果。减少集成问题的CI/CD和DevOps:大多数开发人员都同意瀑布式开发的最大问题是集成过程中出现的问题。通常被称为"大爆炸集成",许多未被发现的问题在这一阶段会抬头,结果导致返工和"紧缩"时间来修复错误。CI/CD的一个主要好处是通过比瀑布过程中典型的更早(并且持续地)集成软件来减少这些大爆炸问题。在下一个开发过程中,开发人员需要通过一个迭代的方法来开发出一个完整的开发过程,换句话说,在软件开发时间线上"左移"。虽然CI/CD和DevOps在嵌入式安全关键系统中的应用更具挑战性,但许多团队已经在使用这种方法。越来越多的航空项目以及国防部的大型项目越来越接近完整的CI/CD和DevOps,包括交付给最终客户,以便尽早确认需求子集,以及进行网络安全测试。现在,这些交付物很少包括一个完整的可飞行的空气框架,但确实包括可以在试验台上测试的集成子系统。左移安全、安全和质量:随着CI/CD和开发(Sec)操作的采用,可以更早、更频繁地测试、验证和重新评估安全和安保(以及其他重要的质量因素)。与其在系统验证期间发现严重的安全问题,不如在风险和成本较低的情况下更早地解决这些问题。DevSecOps和DO-326A/DO-356DO-326A定义了一个适航安全流程(AWSP),该流程在顶层定义了认证、安全风险评估和安全开发活动。评估活动期间评估的安全风险需要安全开发活动来减轻飞机的风险。这些活动旨在集成到软件所需的安全过程中。DO-356"适航安全方法和注意事项"中定义了该安全过程的方法和工具的详细信息。这些标准涵盖的范围很广,远远超出了这里的讨论范围。然而,当它应用于新的或现有的代码开发和维护时,在这些应用程序中采用DevSecOps有很好的理由。代码中的安全性良好的工程实践要求采用编码指南或标准,如MISRA或SEI CERT指南。这种方法确保新开发的代码遵循行业最佳实践。然而,编码标准本身并不能防止所有复杂的安全漏洞(在现有代码上实施编码标准也不现实)。例如,考虑由缓冲区溢出写入引起的漏洞,其根本原因是,通过系统外部的输入,变量受到污染(包含要利用的数据)。为了在代码中发现这些问题,需要更复杂的静态分析工具,包括数据流分析和抽象执行。安全代码DevSecOps实践中出现的一个有趣的方法是将安全需求与安全和功能需求一样对待的概念。(这当然是现代航空电子软件所要求的。)以详细的威胁分析结果和安全控制的实施为指导,然后通过测试进行验证,当然还有文档。这是将安全性集成到DevOps中的关键方法,也是将安全性构建到开发文化中并拥有softwa的好方法