应用程序安全管理器。 开发人员还是安全性?

通过软件中的漏洞和书签可以实施组织最成功的攻击。 幸运的是,公司尚未将软件漏洞扫描程序视为一种奇特的东西,而是保护基础架构的必要元素。 如果开发量较小,则可以按原样使用扫描仪,那么,如果开发量较大,则必须使过程自动化。 但是谁来管理呢? 确定多长时间检查一次发布? 漏洞验证? 确定是否否决该版本并发送代码以修复漏洞? 并回答许多其他问题。 这就是安全软件开发经理Application Security Manager进入最前沿的地方。

图片

但是在哪里可以找到这样的稀有鸟类或如何自己种呢? Raiffeisenbank JSC的应用安全经理Artem Bychkov和Solar appScreener的Rostelecom Solar主管Daniil Chernov描述了俄罗斯公司开发实践对应用安全经理的要求。

谁是应用程序安全经理


组织迟早意识到有必要在团队中雇用这样的人。 特别是因为公司中没有可用的专家直接适合此职位。 开发人员? 他们的工作经验与软件开发特别相关-他们很难将发现的漏洞转换为IS风险,甚至将其转换为业务风险。 保安员? 沉浸在复杂的开发中对他们来说是个问题:要验证漏洞,必须能够理解不同语言的软件代码,这需要认真的开发经验。

让我们看一下在安全开发过程的实施过程中出现的任务,这些任务将由应用程序安全管理器(AFM)处理。

读者可能会认为,AFM的工作仅与验证软件开发是否符合安全要求有关。 但是安全问题出现在系统生命周期的各个阶段,从设计到部署再到生产。 有多种模型可用于建立安全的开发周期(软件安全性接触点,SDLC等),以及用于将这些实践嵌入过程中的多种方法(取决于所使用的方法-瀑布式,敏捷式)。 但是他们都在关键点上达成共识:您需要考虑系统生命周期各个阶段的安全性。

显然,在一个或多或少大型项目的框架中,一个人不太可能在所有阶段都能完成工作。 很少有人能够独自开发应用程序安全性要求,对其体系结构进行审查并验证分析人员的工作结果,执行代码安全性审核,确保在测试过程中进行了必要的应用程序安全性测试,并安全地部署和正确配置了系统。 此外,这些活动通常由不同团队和单位的代表进行。 为了使整个机制正常运行,该过程的驱动力应该是原子力显微镜。 AFM的任务是确保安全开发实践的实施,无论是单独执行还是将某些任务委托给专业专家来完成。 但是,根据我们的实践,原子力管理委员会不可能简单地将任务交给负责者,并为他们的桂冠而休息。

原子力显微镜有哪些要求


首先,要求他了解他所伴随的项目。 这对于敏捷开发尤为重要,因为与瀑布模型不同,在发布前您没有两个月的时间进行审查。 这取决于AFM,例如,团队将如何解释在设计阶段形成的需求,它们将如何落在体系结构上,这些需求通常是否可以实现以及将来是否会造成严重的技术问题。 最常见的是,AFM是自动工具报告和第三方审核的主要消费者,解释者和评估者。 正是AFM过滤掉无关紧要的结果,评估风险并参与异常管理和制定补偿措施的过程。

图片

这是一个真实的例子:审计或源代码扫描程序显示项目中使用了不安全的哈希函数(MD5)。 该公司的政策正式坚持不可以使用,并且供应商同意在3个月内以更安全的数量和大量的功能替换该功能。 细微的差别是,在这种情况下,哈希函数针对冲突的不稳定性不会影响系统的安全性,因为该函数未用于保护完整性。 在这种情况下,正式的方法和另一功能的替代导致了不合理的时间延迟,导致项目的产出富有成效且成本高昂,安全收益为零。

其次,除了第一点之外,AFM还应具有来自各个领域的知识:您需要了解开发过程和信息安全性原则。 “硬技能”也很重要,因为很难批判性地评估专业专家和自动化工具的工作结果,如果您看不懂代码,就不了解利用漏洞的可能方法。 当然,许多人都面临着这样的情况,即代码分析或渗透测试报告中出现了严重漏洞,但是开发人员不同意这一点(通常,他们也希望创建一个安全的系统),并指出审计师无法操作此漏洞。漏洞。 在类似情况下如何评估谁是对的? 没有技术技能,很难客观地解决争端。 如果开发安全软件的过程是由外部组织和/或根据服务模型构建的,那么谁和如何评估“技术”实践的绩效?

另一个生活示例:引入了新的开发工具,在参考项目中检查了其性能,然后将其转移到商业运营中。 项目逐渐与之连接,绘制了一个漂亮的绿色仪表板……在这里发生了信息安全事件。 事实证明,应该在动态分析阶段检测到使用过的“孔”。 但这没有发生,因为……没有人看过,但是这种通常会产生出色结果的高端漏洞扫描程序如何与使用新JavaScript框架的SPA应用程序一起使用。 事实证明,他无法“看到”动态生成的身份验证表单并进行必要的检查。 没人关注它,因为一切正常。 开发人员无需深入研究扫描仪的功能细节即可吸引注意,安全团队也没有看到不同的Web开发方法之间的关键差异。

在哪里可以找到这样的专家


图片

那些研究市场的人一定面临着应用程序安全专家的严重短缺。 通常,方案如下:内部客户为候选人制定需求并将其转移给员工。 如果要求很严格,那么根据免费搜索的结果,该公司将收到零候选人,因为现成的专家很少在公共领域张贴简历。 如果他们换了工作,那么这最容易通过现有联系人自然而然地发生。 如何成为

您可以尝试从其他公司吸引专业人士,但是由于种种原因,这种方法并不总是可以接受的。 市场上出现了越来越多的AFM竞争,这很成功地使您可以从服务提供商处租用专家来解决问题。

但是还有另一种选择。 您可以尝试发展自己的专业。 两个领域的代表可能是此职位的合适人选:

  1. 来自发展领域的人士,他们喜欢或想要在安全领域发展;
  2. 熟悉软件开发和安全性并希望深入研究该主题的技术后卫。

这些候选人和其他候选人都将需要掌握缺失的知识包。 同时,希望“重塑”的开发人员将对他们认识的团队中的现有文化和流程有更好的了解。 他们可能需要花费大量时间来掌握与信息安全相关的知识领域。 但是,经验表明,在开发人员,测试人员,分析师和架构师中,您会发现对安全性感兴趣的人,他们已经在应用程序安全性领域拥有一定的知识。 他们可以成为AFM工作的理想人选。

专业的安全卫士必须适应环境,改变现有的熟悉方法来组织工作并在开发团队中采用文化。 但是,如果安全专家编写代码并熟悉开发过程,那么他将迅速而简单地加入团队。

合计


开发安全控制主要是一个业务流程,要使其成功运行,所有团队成员之间的协调互动是必要的。 这个过程的“心脏”是合格的AFM-它既是激励者,也是定向引擎,是许多任务的执行者,控制经理等。 通常,读者,收割者和花花公子都在管道上。 寻找或培养这样的专家并不容易,但是如果您成功了,那么每个人都会很高兴。

Source: https://habr.com/ru/post/zh-CN458338/


All Articles