提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
原创|使用教程|编辑:郑恭琳|2021-01-25 11:05:08.250|阅读 122 次
概述:
# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>
相关链接:
由于渗透测试非常昂贵并且需要很长时间才能运行,因此我们必须以可扩展且可持续的方式执行API安全测试。
讨论API安全性以及我们为什么要注意的问题有点像谈论吃蔬菜。我们都知道吃蔬菜对我们的健康有益,但实际上我们当中有多少人呢?应用程序安全性就是这样。这对于我们的应用程序和业务的健康至关重要,但努力做到这一点并不像构建出色的新应用程序功能那么有趣。但是,我们只需要查看最近的新闻头条即可了解它的重要性。
传统上,在开发过程的最后要完成针对安全性的应用程序或API的验证。但是,这本质上是有问题的。通常,为时已晚,无法解决发现的错误:可能太接近发布日期,无法解决问题,或者团队可能已经转移到其他项目,或者应用程序的体系结构固有地不安全。
此外,当今的服务和应用程序的发布比以往任何时候都更加频繁,一天最多可以发布多次。这种快速释放的节奏使传统方法难以为继。
为了解决这个问题,我们将寻求一个行业一直在使用的解决方案,该解决方案通过加快发布周期(持续集成)来解决软件质量问题。持续集成会在签入新代码时生成构建,并通过为每个构建运行静态分析和单元测试来验证新代码。如果团队精通,他们甚至可能会使用CI创建和运行自动化功能测试(可能不是针对每个构建版本,因为功能测试通常需要很长时间才能运行,但至少要按指定的间隔(例如每天一次)运行)。
通过将渗透测试引入CI工作流中,我们可以将相同的解决方案应用于API的自动化安全测试。这将确保我们更快地测试安全漏洞,并为我们提供安全回归测试,以便在引入新问题后立即对其进行捕获。但是我们将需要对此保持警惕,因为渗透测试非常昂贵,并且可能需要很长时间才能运行。我们必须以可扩展和可持续的方式来做到这一点。
我假设我们的团队已经在为我们的API编写和运行自动化功能测试。(如果我们不这样做,则需要从这里开始,并且不准备考虑进行安全性测试的自动化。)如果我们正在为API运行自动化功能测试,那么作为我们正常开发和质量检查流程的一部分,我们可以确定这些功能测试的一部分,用作安全性测试。我们将准备并运行此子集作为安全性测试。
让我描述一下如何使用Parasoft SOAtest及其与流行的渗透测试工具Burp Suite的集成。首先,假设我们有一个SOAtest场景,其中有1个设置测试可以清理数据库,而3个测试则可以进行3个不同的API调用。我们要针对场景中要调用的3个API分别执行渗透测试:
首先,我们将Burp Suite Analysis工具添加到方案中的每个测试中,以准备方案的安全性,如下所示:
然后,我们将使用SOAtest执行此方案。在执行每个测试时,SOAtest将进行测试中定义的API调用,并捕获请求和响应流量。每次测试中的Burp Suite分析工具都会将流量数据传递到Burp Suite应用程序的单独运行实例,该实例将根据自己在流量数据中观察到的API参数,使用自己的启发式方法对API进行渗透测试。然后,Burp Suite分析工具将获取Burp Suite发现的所有错误,并将其报告为SOAtest中与访问API的测试相关的错误。然后可以将SOAtest结果进一步报告到Parasoft的报告和分析仪表板DTP中,以获取其他报告功能。请参见以下内容,了解其工作原理:
重新使用功能测试以用作安全测试具有以下好处:
重新使用功能测试作为渗透测试时,需要考虑以下几点:
我们需要考虑是在同一测试环境中还是在另一测试环境中运行我们的功能和安全性测试。在功能和安全测试运行之间重置环境,或使用单独的环境重置环境,可以提高测试稳定性,但是通常没有必要。我们经常可以重用相同的环境,但是这样做时,我们应该首先运行功能测试,然后再运行安全测试,因为安全测试会破坏功能测试的环境。当我们使用不同的环境时,我们需要确保使用变量配置原始的功能测试方案,以便轻松将测试指向不同环境的不同端点。SOAtest使用环境变量支持此功能。
我们的API也可能依赖我们无法控制的其他API。我们可以考虑使用服务虚拟化来隔离我们的环境,因此我们不依赖那些外部系统。这将有助于稳定我们的测试,同时避免由于我们的渗透测试工作而给外部系统带来意想不到的后果。
作为自动化流程的一部分,我们可以将安全性测试转移到开发和质量保证中,从而确保API的质量更高。我们可以利用现有的API功能测试来创建自动化的安全测试,这将使我们能够在流程的早期发现并修复安全错误。希望这将有助于我们不要成为新闻的下一个负面头条......
Parasoft主持了一个网络研讨会,其中包括演示如何与Parasoft SOAtest和Burp Suite一起工作的方式。如果您想了解更多信息,可以从下面的网络研讨会录像中观看演示:
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn
本文探讨 SQL Server 中 NULL 和空值之间的区别,并讨论如何有效地处理它们。
Unity 是一款功能极其丰富的游戏引擎,允许开发人员将各种媒体集成到他们的项目中。但是,它缺少最令人兴奋的功能之一 - 将 Web 内容(例如 HTML、CSS 和 JavaScript)直接渲染到 3D 场景中的纹理上的能力。在本文中,我们将介绍如何使用 DotNetBrowser 在 Unity3D 中将 Web 内容渲染为纹理。
DevExpress v24.2帮助文档正式发布上线了,请按版本按需下载~
本教程将向您展示如何用MyEclipse构建一个Web项目,欢迎下载最新版IDE体验!
人工智能和机器学习赋能 API 和 Web 服务测试
Parasoft SOAtest with Load Test通过使用现有的功能测试来解锁早期的负载和性能测试
Parasoft DTP开发测试平台,通过在SDLC中持续应用软件质量最佳实践降低了商务风险
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@cahobeh.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢