使用Probely DAST扫描仪保护API和Web应用程序
鉴于大约三分之一的已知侵入是成功的Web应用攻击的直接结果,测试您的Web应用和API的安全性至关重要。
您不仅需要确保您的Web应用程序符合监管要求,而且(应该)关心您客户的数据以及您的公司的风险暴露。
在保护Web应用程序方面,您肯定有很多选择,每种选择都有其优点和缺点。有些解决方案依赖于识别应用程序源代码中的安全问题。其他解决方案保护您的应用程序免受攻击。还有一些解决方案依赖于动态测试您的Web应用程序在运行时的安全性,就像黑客一样。
本文的重点是后一种情况,即Probely。与其他解决方案相比,Probely的有趣之处在于它解决了Web漏洞扫描工具的两个主要问题:现代Web应用程序的扫描范围和结果的质量。
Probely有两个不同的版本:一个是自助服务版,面向中小型企业,另一个是面向企业或拥有多个Web应用程序和API的公司。
Probely专注于在现代开发环境中提供卓越的覆盖率,并通过基于证据的扫描结果消除误报,同时允许您将DAST扫描集成到开发生命周期中。
听起来太好以至于难以置信吗?
请继续阅读以了解我对Probely的分析。
Probely到底是做什么的?
考虑到开发人员和各种规模的企业,Probely测试您的应用程序和API,对它们进行扫描以查找安全问题和漏洞。测试完成后,它会提供有关如何修复发现的问题的指导。
您的开发人员和安全工程师可以通过直观的用户界面与Probely一起工作。但是,如果您需要更强大和灵活的功能,可以依靠他们全功能的API,因为他们采用了面向API的开发方法。他们的API提供了用户界面上看到的所有功能,使您能够将Probely集成到CI/CD pipeline、漏洞管理工具、编排器或问题跟踪器中。如果您使用的是流行工具,则可能已经有现成的集成。这适用于诸如JIRA、Jenkins、Azure DevOps、DefectDojo、CircleCI和Slack之类的工具。但是,如果您开发了自己的问题跟踪器或编排器,则应使用API。
覆盖范围、爬行和准确性
Probely使用下一代爬虫以与普通浏览器相同的方式浏览丰富的Javascript应用程序,从而获得对站点的全面覆盖,这对许多其他DAST工具来说是个问题。这个爬虫非常适合单页应用程序,例如基于React or Angular的应用程序。
请记住,扫描程序只能识别找到的页面中的漏洞。因此,一个好的爬虫至关重要。
Probely还提供不同的扫描配置文件,具体取决于您要测试的环境。如果您想扫描生产环境,可以设置一个更少侵入性的扫描配置文件。如果您正在测试QA环境,则可以设置更详细的配置文件进行更完整的扫描。通过测试预生产环境,您可以在部署应用程序到生产环境之前识别和修复漏洞。
报告
尽管Probely可以检测出大量的漏洞,但它专注于报告相关且没有误报的问题。对于某些漏洞类别,它提供了漏洞是真实的证据,节省了团队验证漏洞的真实性和相关性的时间。
Probely提供了丰富的报告界面,但它也可以将漏洞信息与问题跟踪器或漏洞管理工具同步,让您能够将Probely融入到现有的安全和开发工作流程中。
Probely可以测试您的软件,以检测OWASP TOP 10中列出的漏洞以及其他更多漏洞。它还可以通过检查PCI-DSS、GDPR、HIPAA和ISO270-01的特定要求来帮助您实现合规性。
从OWASP TOP 10报告中了解到,您将一目了然地知道关于此合规性的问题。
界面
界面简单易用,让您能够快速上手。企业版允许您控制用户、角色并设置自定义角色。您还可以使用标签来组织用户、资产和漏洞,以更好地管理它们。由于所有功能都可以通过API使用,您可以轻松地将Probely集成到其他企业安全应用程序和流程中。
如果您使用Jira或Azure Boards,您可以配置Probely自动将所有漏洞发送到问题跟踪器。当开发人员在问题跟踪器上修复并关闭问题时,它将自动触发Probely的重新测试,以检查漏洞是否已正确修复。如果没有修复,问题将在问题跟踪器上重新打开。这使得您的开发团队可以像处理其他错误一样在问题跟踪器上处理漏洞报告,甚至不需要使用Probely的界面。很棒,对吧?🙂
开始使用🚀
为了测试目的,我使用的是Probely的企业版。
他们还提供标准版和不同的计划供您选择,包括免费计划。在免费计划中,扫描只检测三类漏洞:cookie标志、security headers和SSL/TLS问题。Pro计划提供了大多数功能,专注于中小型企业和拥有五个或更少目标的组织。
企业版专注于拥有大量目标的组织,并包括一些常见的企业软件功能:用户、组、角色和权限。它还允许您通过安装提供的代理在内部目标(您的私有网络上)进行扫描。
添加目标
添加目标很简单。登录您的帐户后,您需要导航到目标页面,然后点击“添加”。然后,您需要提供一个名称、一个URL和一个或多个标签,例如测试、生产、开发等,来为新目标添加标签。如果要让Probely将此目标作为独立的API进行扫描而不是支持的Web应用程序,则应检查相应的选项以将其标识为API目标。
如果您的目标未在Internet上开放,并且您在私有网络上安装了Probely代理,您可以在添加目标时选择要使用的代理。
添加目标后,您需要验证其所有权,因为Probely需要证据表明您具有运行扫描的必要权限。有两种替代方法可以验证目标:加载具有提供的内容的文件到目标的根目录或在DNS记录中添加一个TXT条目,其中包含域名和一些特定的记录内容。一旦目标验证通过,您就可以通过点击“扫描”按钮来扫描它。
通过导航到Probely的仪表板上的“扫描”选项卡,您可以检查扫描的进度和状态。此页面将显示扫描开始的时间以及迄今为止发现的内容。发现结果按严重程度进行着色,因此您可以一目了然地看到是否存在需要立即解决的严重问题。
如果您的网站有登录页面,并且您希望Probely在其后执行扫描,您必须提供允许其作为认证用户对站点进行爬行的凭据。Probely支持大多数登录页面的身份验证方法。
扫描API
要扫描API目标,Probely需要您提供其模式。当您添加API目标时,可以通过提供OpenAPI模式URL或上传模式(如果您之前将其保存为本地文件)来完成此操作。URL选项可让Probely在每次扫描之前获取模式,确保始终与您的模式的最新版本一起使用。
在API访问的身份验证方法方面,还有不同的选项。Probely不仅支持静态令牌,还允许在扫描API时进行动态身份验证配置。您可以配置一个登录终端,Probely可以在其中获取身份验证令牌,或者您可以设置一个带有固定API密钥的自定义标头。您还可以提供Probely将用于在模式中找到的参数的自定义参数值。
完成配置API身份验证和参数后,可以按“立即扫描”按钮开始扫描。几秒钟后,您将能够在同一扫描页上跟踪扫描进度。扫描结束后,您可以下载覆盖范围报告,其中显示了找到的所有端点和每个响应代码。该报告还会告诉您是否出现了失败的端点。
检查您的发现
发现页面会在发现结果后立即显示扫描结果,即使扫描仍在进行中。每个发现都显示了严重程度(高、中或低)、相应的目标和URL、发现描述、发现时间和日期、其状态(已修复或未修复)和受影响的PCI-DSS或OWASP合规性。
除了向您提供有关已检测到的漏洞的信息外,发现页面还可以用于将漏洞分配给您的团队进行修复。要这样做,您可以在左侧勾选复选框,并从下拉菜单中选择被指派人。
Probely还提供了如何修复已发现的漏洞的信息。除了这些说明,您还可以查看完整的请求和响应以及证据。
在仪表盘页面上,您可以看到摘要图表,总结了已扫描目标的安全风险。这些图表显示了不同有趣指标的趋势,例如风险评分、修复问题的平均时间和严重程度级别。您还可以一眼看到需要最多关注的站点以及具有最高发生率的漏洞的前5名排名。
最后,在集成页面上,您可以配置Probely与许多不同的工具集成,以管理项目、团队沟通、问题跟踪等等。可用的集成包括Azure Boards、DefectDojo、Slack、Jira、Jenkins和CircleCI。
开发人员和安全团队的工具
对于敏捷开发团队来说,市场交付时间是最重要的。为了在不影响质量的情况下尽量缩短软件投产时间,您可以采取的任何措施都是非常受欢迎的。Probely正是提供了这样一个成本效益的方式,以提高您的网站和API的安全性,帮助您遵守进度相关的承诺并交付高质量的软件产品。
对于安全团队来说,Probely为您提供了一个平台,用于保护您的Web应用程序和管理需要修复的漏洞。它还允许您将一些安全测试直接分配给开发团队,同时担任监督角色。
Probely提供免费试用、企业评估许可证和产品演示。请联系Probely以开始使用。