深入解析burp-rest-api v2:新一代BurpSuite自动化扫描利器

本文详细介绍了burp-rest-api v2的重大更新,包括全新的启动机制、BAppStore扩展支持、多项API增强及错误修复,帮助安全团队实现更高效的Web安全自动化扫描与集成。

引入burp-rest-api v2

2018年11月5日 - 作者:Luca Carettoni

自2016年首次提交以来,burp-rest-api一直是基于BurpSuite的Web扫描自动化的默认工具。许多安全专业人士和组织依赖此扩展来协调Burp Spider和Scanner的工作。

今天,我们自豪地宣布该工具的新主要版本:burp-rest-api v2.0.1。

从2018年6月开始,Doyensec加入VMware,共同参与不断增长的burp-rest-api社区的开发和支持。经过多年在大型科技公司和初创企业的经验,我们理解安全自动化在软件安全活动中提高效能和效率的需求。不幸的是,内部安全工具很少开源,而且仍有太多公司在重复造轮子。我们相信,在基础组件(如burp-rest-api)上协作代表了安全自动化的未来,因为它使各种规模的公司能够构建定制化解决方案。

经过几周的工作,我们清理了所有未解决的问题,并将burp-rest-api带入下一个阶段。在这篇博客文章中,我们想总结一些改进。

发布版本

您现在可以从https://github.com/vmware/burp-rest-api/releases下载最新版本的burp-rest-api预编译发布版本。虽然这听起来可能不是什么大事,但它实际上是插件引导机制重大变更的结果。到目前为止,burp-rest-api严格依赖原始的Burp Suite JAR进行编译,因此由于许可问题,我们无法创建稳定的发布版本。通过重新设计burp-rest-api的启动方式,现在甚至可以在没有burpsuite_pro.jar的情况下构建扩展。

1
2
3
git clone git@github.com:vmware/burp-rest-api.git
cd burp-rest-api
./gradlew clean build

构建完成后,您现在可以使用以下命令执行带有burp-rest-api扩展的Burp:

1
java -jar burp-rest-api-2.0.0.jar --burp.jar=./lib/burpsuite_pro.jar

Burp扩展和BAppStore

许多用户要求在运行带有burp-rest-api的Burp时能够加载其他扩展。得益于新的引导机制,burp-rest-api作为第二代扩展加载,这使得可以加载使用任何支持编程语言编写的自定义和BAppStore扩展。

此外,该工具允许在应用程序启动期间使用标志--burp.ext=<filename.{jar,rb,py}>加载扩展。

为了实现这一点,我们采用了一种类加载技术,使用一个虚拟入口点(BurpExtender.java),在完整的Burp Suite加载并启动(BurpService.java)后加载传统Burp扩展(LegacyBurpExtension.java)。

错误修复和改进

在此版本中,我们还专注于大量问题的清理:

  • 更好的文档甚至FAQ页面
  • Burp Spider状态API
  • 带有configPath选择的Burp配置API
  • 启用SpringBoot压缩
  • 能够通过命令行参数自定义Burp代理和burp-rest-api API的绑定地址:端口
  • ……以及更多

帮助我们塑造burp-rest-api的未来

随着Burp Suite Professional 2.0(测试版)的发布,Burp包含了原生Rest API。

虽然当前功能非常有限,但这肯定会改变。

在初始版本中,REST API支持启动漏洞扫描并获取结果。随着时间的推移,将向REST API添加其他功能。

Burp用户最终将受益于原生Rest API,这很好,但这个新功能让我们思考这个项目的未来。

感谢您的支持,

Luca Carettoni & Andrea Brancaleoni

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计