转载

burpsuite 插件编译学习指南

简介:本文讲解如何编译github上相关burp插件作者开发的基于maven构建的java项目,让初学者也能自己动手编译自己需要的burp插件,以及更方便的阅读和学习开发者的代码。

一、为什么要自己搭建burp extender编译环境

1、Bapp Store中提供的插件 和 相应github 作者发布版本不对应,更新速度慢

2、从Bapp Store安装插件的方式 burp会把插件保存以下目录

C:/Users/administrator /AppData/Roaming/BurpSuite/bapps

我相信很多windows用户都不喜欢C盘空间被强奸的感觉

示例如图所示:

burpsuite 插件编译学习指南

burpsuite 插件编译学习指南

burpsuite 插件编译学习指南

3、有时需要修改插件的某些bug或者完善插件某些功能,异或学习插件开发。

二、环境准备    1、准备jdk1.8.0_231

https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html    2、准备jdk1.7.0_80

https://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase7-521261.html

Tips:

2.1、jdk1.7.0_80是jdk1.7系列最终版本,jdk1.8.0_231是jdk1.8系列迄今的最终版本

2.2、为什么要准备两个版本的jdk

为了兼容性,避免不必要的麻烦,有些coder喜欢jdk1.7,有些喜欢jdk1.8,以及maven tomcat等各种java生态圈的东西你用起来的时候也需要考虑兼容性。

3、设置java环境变量

burpsuite 插件编译学习指南

burpsuite 插件编译学习指南

burpsuite 插件编译学习指南

4、搭建eclipse开发环境
Eclipse版本:Eclipse IDE 2019-06

https://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/2019-06/R/eclipse-jee-2019-06-R-win32-x86_64.zip

建议使用压缩包版本,不用使用installer

eclipse各版本的区别

https://www.eclipse.org/downloads/packages/release

burpsuite 插件编译学习指南

每个版本的具体介绍本文不展开,想了解的同学可以根据上面的链接查看相应版本的名字,然后根据名字搜索就会有相应的介绍文章。
总得来说就是对jdk版本的支持程度以及自带的功能插件不同,插件都是可以后期从Eclipse Marketplace按需扩充的,不建议用最新版本,避免臃肿。

burpsuite 插件编译学习指南

burpsuite 插件编译学习指南

Tips:为什么要使用eclipse

1、用户习惯使然

2、eclipse很多东西可以自定义,C盘空间不会被强奸

3、免费,不用去破解

在eclipse中配置多版本jdk环境,如图所示:

burpsuite 插件编译学习指南

burpsuite 插件编译学习指南

burpsuite 插件编译学习指南

按照以上步骤将jdk1.7和jdk1.8配置都加入eclipse,当我们使用时就可以在jdk1.7和jdk1.8之间来回切换了。

burpsuite 插件编译学习指南

5、搭建maven环境

5.1 maven是什么

Maven是基于Java平台的自动化构建工具。其中包括:清理、编译、测试、报告、打包、安装、部署,对于我们而言主要用于管理jar包
5.2 为什么要使用maven

最主要的是因为很多burp插件开发者就是用maven来管理jar  包,而各种依赖的jar包如果我们要手动去下载并且导入进项目的话很麻烦。
5.3 下载maven

官网下载地址: https://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.zip
5.4 配置maven
5.4.1 配置如图所示环境变量

burpsuite 插件编译学习指南

burpsuite 插件编译学习指南

burpsuite 插件编译学习指南

如下图所示,maven环境搭建好了

burpsuite 插件编译学习指南

5.4.2 maven添加阿里云镜像仓库

Tips:为什么要添加阿里中央厂库

现在我们大多数java项目都使用maven来管理我们的依赖包,默认情况我们会从国外的maven中心仓库下载依赖,这样就造成下载速度较慢的问题。我们可以通过添加阿里云镜像提高maven下载依赖包的速度

修改conf目录下settings.xml文件,增加如下内容:

burpsuite 插件编译学习指南

5.4.3自定义maven的本地仓库位置

Tips:为什么要自定义本地仓库位置(为了C盘空间不被强奸)

修改conf目录下settings.xml文件,增加如下内容:

burpsuite 插件编译学习指南

5.5 在eclipse中配置maven

burpsuite 插件编译学习指南

三、编译基于maven构建的burpsuite插件项目源码

Tips:以昨晚更新的J2EEScan举例说明,下载地址:

https://codeload.github.com/ilmila/J2EEScan/zip/v2.0.0beta

burpsuite 插件编译学习指南

按照如图所示步骤操作:

burpsuite 插件编译学习指南

burpsuite 插件编译学习指南

burpsuite 插件编译学习指南

burpsuite 插件编译学习指南

导入成功后如图所示

burpsuite 插件编译学习指南

如果你windos上的jdk环境配置的是jdk1.8,那么需要修改J2EEScan项目jdk环境为1.8,这是为了保持编译环境和运行环境的一致性,避免坑。因为作者使用的开发环境是jdk1.7,如果你本机也是jdk1.7的运行环境就不用修改了。

burpsuite 插件编译学习指南

burpsuite 插件编译学习指南

burpsuite 插件编译学习指南

四、编译基于maven构建的java项目

按照如图所示步骤操作:

burpsuite 插件编译学习指南

burpsuite 插件编译学习指南

burpsuite 插件编译学习指南

最后:此文为科普文,如果大家喜欢我这种结构的文章,我将继续输出。也可以使用mvn自带的命令编译项目,或者使用intellij idea,看个人取舍而已。

个人愚见:什么是好的技术类文章,判断标准:它回答了以下7个问题。
7个问题
1、A 是什么
2、A 的发展史
3、A 解决了什么问题
4、A 的应用领域
5、怎么使用A
6、使用时应注意的点
7、使用A的思路及其发散

在学习没接触过的知识时,希望大家运用这种方法论,我写文章时也会遵循该模式。

编译jar包 下载地址:

https://pan.baidu.com/s/1e7Ef9FZg439h4nvDcCkyKA

点击“ 阅读原文 ”或复制下方链接做实验:

Burpsuite简介:

http://www.hetianlab.com/expc.do?ec=ECID9d6c0ca797abec2017042513331200001

一篇看不过瘾? 2019原创干货集锦 | 掌握学习主动权

大家有好的技术原创文章

欢迎投稿至邮箱:edu@heetian.com

合天会根据文章的时效、新颖、文笔、实用等多方面评判给予 200元-800元 不等的稿费哦

有才能的你快来投稿吧!

了解投稿详情点击—— 重金悬赏 | 合天原创投稿涨稿费啦!

burpsuite 插件编译学习指南

burpsuite 插件编译学习指南

原文  https://mp.weixin.qq.com/s/xWBkrcdfVWiXgpOyUHVfdg
正文到此结束
Loading...