聚焦源代码安全,网罗国内外最新资讯!

编译:奇安信代码卫士团队

最近,Forrester 发布报告指出,到2023年,应用安全市场规模将超过70亿美元,其中安全扫描工具将成为领头羊。很明显,越来越多的组织机构意识到保护应用层安全的重要性,准备进行大力投入。

组织机构对AST工具的需求是什么?

随着组织机构使用的应用数量不断增长、复杂度不断提高、类型不断多样化,综合测试解决方案的需求呼之欲出。从传统的 web 应用向使用客户端软件微服务架构的现代应用转变要求具有创新型测试能力。

实现高度安全的软件开发生命周期 (SDLC) 和有效的 DevSecOps 实践已成为工程和安全团队至关重要的目标。应用安全测试 (AST) 市场充斥着各种各样的解决方案,而且它们都向软件开发组织机构承诺提供最好的测试工具解决应用安全威胁。然而,随着安全威胁局势的不断演进,选择最好的 AppSec 测试工具便是第一个挑战。组织机构还需要知道如何协同这些 AST 工具,发挥它们的最大价值,与时间赛跑。

CyberSecurity Insiders 在《2018年应用安全报告》中指出,当被问到选择应用安全工具或服务的最重要标准时,54%的网络安全专业人士将“易集成”列为最重要的标准,其次是定价/许可 (53%)、可扩展性 (44%)、准确性 (40%) 和易用性 (39%)。

当前 AST 工具的价值取舍

Gartner 提出了三种主要的应用安全测试风格:静态应用安全测试 (SAST)、动态应用安全测试 AST (DAST) 以及交互式应用安全测试 AST (IAST)。很遗憾,它们均无法满足专家在 Cybersecurity Insider 报告中所提到的所有标准,也就是说组织机构必须在某种价值取舍上做出妥协。

例如,静态应用安全测试解决方案能够提供完整的代码覆盖,承诺组织机构能够完全“看见”自己的代码库。遗憾的是,这些解决方案使得安全专家不得不面对大量的误报,从而必须花费宝贵的时间遍历长长的漏洞列表,区别出真正的漏洞和噪音。由于开发团队必须回头修复这些漏洞,因此它也拖慢了开发流程,而如果修复范围更大的话,那么竞争优势就会被削弱。

结束了耗时的误报解除工作后,安全专家需要对安全问题的优先级进行排序,严重漏洞需要首先解决。优先级需求由安全专家进行计算而且应建立于漏洞被利用的可能性基础之上,并应结合使用其它严重性评估方法。

另一方面,虽然动态应用安全测试和交互式应用安全测试工具检测出能够真正在运行时被利用从而威胁组织机构安全的漏洞,但它们并未提供完整的覆盖或完整的漏洞可见性。

组织机构发现必须解决的另外一个问题是开源漏洞问题。虽然静态安全测试、动态安全测试和交互式安全测试解决方案承诺在专有代码中检测漏洞,但它们并未涵盖开源组件,而当前60%到80%的软件产品均由开源组件构成。开源安全漏洞要求组织机构在 SDLC 中集成单独的工具和进程集。

组织机构通常将会使用多达五种不同的工具全方位覆盖应用安全测试。然而,虽然这有助于确保相对的覆盖范围,但工具协同结果也使测试流程变得笨重、缓慢且成本高昂,因此也需要安全专家的参与。

随着应用安全测试进程变得更加复杂,解决该问题的漏洞管理工具也在应用安全测试空间不断演进。漏洞管理工具在所有静态和动态测试工具之上提供了一种覆盖解决方案。这些解决方案整合不同来源的警报、关联并复现研究结果、并导出信息帮助用户梳理漏洞管理工作流。虽然漏洞管理工具能够为安全缺陷修复增值,但通常需要更多的集成工作。

总之,当前的应用安全测试工具(主要是静态安全测试工具)组合为开发团队提供了几近无穷的漏洞列表,以及有限的对修复方案进行优先级排序的能力,更不必说提供任何其它可指导行动的修复洞察力或建议。

缩小从漏洞检测到修复的差距

为了实现全面有效的应用安全测试战略,组织机构需要的工具要求具备除能够检测漏洞外的更多功能。这些工具应当能够帮助组织机构对最紧急的漏洞进行优先级排序并提供实时的修复支持。

其中的一个重要支持是,开发人员将代码建议作为这些解决方案的一部分给予信任。也就是说对建议的质量以及如何将建议集成到自己的工作 IDE 环境中有信心。另外,应当将漏洞防御增加到应用安全测试进程中,帮助开发人员避免项目中或将出现的漏洞问题。我们需要跳出思维的盒子,找到除了现有开发人员训练工具以外的方法防御这些漏洞。

如缺少对漏洞的优先级排序和修复方案,则在一周时间内开发人员不得不花费12到36个小时的时间修复漏洞。而从应用安全测试角度讲,多数工具似乎都缺少这一点。应用安全测试工具的目标应当是有效及时地修复而非检测漏洞。当前,使用应用安全测试工具组合使得开发团队不得不面对无穷尽的警报列表,因此仍然无法实现其终极目标即修复漏洞。

DevSecOps 应当集成所有这些高级的应用安全测试功能:除了漏洞检测之外的漏洞防御、优先级排序和修复。应用安全测试工具应当尽早将自动化测试集成到开发生命周期的更多阶段。

应用安全测试的未来:全资产覆盖

当今,组织机构需要确保所用的应用安全测试工具能够让他们在整个开发生命周期中完全“看见”并控制专有和开源漏洞覆盖。

但不止如此。应用安全测试工具需要超越漏洞警报的功能,需要能够快速解决安全漏洞,在不拖慢开发团队的同时修复它们。

随着应用安全测试空间的演进,组织机构将能够在应用安全领域实现 DevSecOps 方法,在整个 SDLC 过程中实现漏洞防御、检测、优先级排序和自动修复。

推荐阅读

奇安信开源卫士免费提供开源组件安全检测服务

FBI 连续第三次发布关于国家黑客利用 Kwampirs 发动全球供应链攻击的警告

Linux开源系统OpenWrt被曝RCE 漏洞已存在3年,数百万网络设备受影响

WhiteSource 发布《2019年开源组件安全漏洞现状报告》:哪种语言最安全?

Linux 基金会发布《开源软件供应链安全报告》

原文链接

https://resources.whitesourcesoftware.com/blog-whitesource/application-security-testing-trends

题图:Pixabay License

本文由奇安信代码卫士编译,不代表奇安信观点。转载请注明“转自奇安信代码卫士 www.codesafe.cn”。

奇安信代码卫士 (codesafe)

国内首个专注于软件开发安全的产品线。

 点个“在看”,一起玩耍

应用安全测试的发展趋势相关推荐

  1. 指定端口传输_高速数字传输链路测试 - 高速数字电路仿真设计与测试技术发展趋势综述(二)...

    对传输链路的关注程度越来越高 随着信号速率跃升到 Gbps 级别乃至今天的几十 Gbps 和全面的差分串行化,从最初关心的趋肤效应(Skin Effect)问题,开始更多关心介质损耗(Dielectr ...

  2. 高速信号传输约翰逊 pdf_高速数字电路仿真设计与测试技术发展趋势综述 (一)...

    近十多年来,数字集成电路和各种接口总线标准的发展令人眼花缭乱,目不暇接.各个总线标准通常由不同团队制订,其纷繁芜杂的测试和测量技术给从业人员带来许多困扰.本文将就当下的一些主要接口总线标准的仿真设计与 ...

  3. 保存时自动加分号_作为测试行业发展趋势,自动化一点也不难啊!

    出品 | 51Testing软件测试网 在进行自动化过程中,往往需要校验数据的正确性,此时可以通过查阅数据库存储数据的方式来校验:例如,我们使用接口自动化创建了一个用户或者订单,接口返回成功了,此时我 ...

  4. 聊聊汽车OTA测试:从OTA测试浅谈汽车电子测试发展趋势

    往期回顾:聊聊汽车OTA测试:概述篇 近几年以来,整个汽车行业发生着巨大变革,油电之争尚未落幕,各种新技术新架构已经层出不穷:传统巨头积极转型,新兴势力亦如雨后春笋般涌现.而随着整车功能复杂度不断提升 ...

  5. 测带宽的工具_发送端测试的主力设备 - 实时示波器朝向高带宽高位数发展

    高速数字电路仿真设计与测试技术发展趋势综述(三) 示波器作为时域或数字电路信号测量与分析最重要的仪器设备,本质上是作为相对被测信号或系统的接收机在工作,因此其最主要的根本价值在于真实还原或复现被测信号 ...

  6. 2018年测试状况调查

    \ 看新闻很累?看技术新闻更累?试试下载InfoQ手机客户端,每天上下班路上听新闻,有趣还有料! \ \\ 2018年测试状况调查旨在为测试职业如何发展提供洞察力,发现测试的发展趋势.到2018年,这 ...

  7. 市场调研—全球及中国活化部分凝血活酶时间测试(APTT测试)行业研究及十四五规划分析报告

    [报告篇幅]:122 [报告图表数]:161 [报告出版时间]:2021年1月 [报告出版机构]:恒州博智(QYR)更多(医药)研究中心 报告摘要 2019年,全球活化部分凝血活酶时间测试(APTT测 ...

  8. 一篇文章带你走进测试工程师的世界

    一. 测试工程师: 1. 国内定位和发展前景: 测试工程师,软件质量的把关者,工作起点高,发展空间大.我国的软件测试职业还处于一个发展的阶段,所以测试工程师具有较大发展前景. 目前传统的软件行业还是以 ...

  9. 采样频率和带宽的关系_发送端测试的主力设备 - 实时示波器朝向高带宽高位数发展...

    高速数字电路仿真设计与测试技术发展趋势综述(三) 示波器作为时域或数字电路信号测量与分析最重要的仪器设备,本质上是作为相对被测信号或系统的接收机在工作,因此其最主要的根本价值在于真实还原或复现被测信号 ...

最新文章

  1. eclipse系列: Cannot change version of project facet Dynamic web的解决方法
  2. can总线rollingcounter_一文看懂CAN总线
  3. kafka消费中的partition与消费者的关系
  4. 对大量转载贴识别算法的研究
  5. C#-数组定义及使用数组的好处 046
  6. 【转】ABP源码分析三:ABP Module
  7. 执行计划 分析一条sql语句的效率 mysql_MySQL中一条SQL语句的执行过程
  8. java用户角色权限管理 只显示姓_快递物流管理系统SSM,JQUERYEASYUI,MYSQL
  9. 应用程序级别之外使用注册为 allowDefinition='MachineToApplication' 的节是错误的(转载)...
  10. 静态文件之static+url控制系统(萌新笔记)
  11. Wordpress如何正确书写Robots.txt
  12. html5 加入收藏夹,设为首页、添加到收藏夹代码
  13. 2016计算机考研经验,2016届浙大计算机考研复习经验整理
  14. java正则表达式大全(常用)
  15. Android 腾讯信鸽集成
  16. B,KB,MB,GB之间换算
  17. 帝国cms html广告,帝国cms加入JS广告代码不显示的解决办法
  18. 《Evolutionary Computation for Expensive Optimization:A Survey》笔记
  19. android方法apply,SharedPreferences的apply和Commit方法的那些坑
  20. 互联网协议学习笔记-----IP协议与传输协议

热门文章

  1. CF915E Physical Education Lessons(珂朵莉树)
  2. Linux之FineBI集群部署 1
  3. php网站用框架与不用的区别,做前端网页是不是必须要用网页框架
  4. java递归生成树结构_突破CRUD | 万能树Java工具类封装(源码)
  5. ImageFun 使JPG的缩略图跟原图不一样 (刷微博必备)
  6. androidpn的学习研究(四)androidpn-client客户端几个类说明
  7. Android 4.3 新特性
  8. SSH整合之四(页面逻辑的实现)
  9. 谈java的导入(import)
  10. AgileJava开源项目正式开始