Brupsuite安装使用大总结
一、小白的开始
对于软件我比较喜欢用新的,于是一开始直接就从较新的burpsuite_pro_v2021.7.1安装,如果有需要安装的可以参考以下的内容:
1.1、安装JAVA
1.2、添加环境变量
大部分情况下,我们都可以通过以下两个环境变量来确定当前应用程序使用的是哪个Java版本:
JAVA_HOME - 多数脚本使用该环境变量来确定Java版本的位置。
Path - 当从控制台运行Java二进制文件(如iava和javac)时,使用的是该环境变量。
JAVA默认安装位置C:\Program Files\Java\jdk-11.0.11
添加环境变量JAVA_HOME:C:\Program Files\Java\jdk-11.0.11
添加到Path: %JAVA_HOME%\bin
(新版本jdk目录下没有jre了)
一定要全部点完确定之后进行验证cmd java --version
1.3、破解
先点击run,然后将license复制到license key中
选择手动激活
复制请求到激活请求中生成响应再复制到粘贴响应的文本框中
最后就激活了,完成后界面全英文。当然我们可以使用汉化包来汉化
汉化burp其实可以理解为用java来调动补丁,首先要在burp根目录下运行终端,命令:
java -Dfile.encoding=utf-8 -javaagent:BurpSuiteCn.jar -Xbootclasspath/p:burploader_kengen.jar -jar burpsuite_pro_v2.1.jar
说明: java -Dfile.encoding=utf-8(定义编码) -javaagent:BurpSuiteCn.jar(汉化补丁的名字) -Xbootclasspath/p:burploader.jar -jar(p:之后是加载器名) burpsuite_pro_v2.1.jar(burp详细版本及文件名)
命令模板是我的,请根据自身实际情况修改即可。
二、完成后的问题
2.1、模块问题
新版本安装好之后,由于汉化包不完善,有界面翻译不严谨和不全翻译的问题,当然这些影响不算大,但是在使用过程中并不是先发现了新版本的优点,而是发现了一些老版本可以解决但是新版本解决不了的问题。
比如:在使用基于时间竞争的文件上传,我们需要使用到线程数,但是新版本中找不到,只是多了一个一个资源池的选项,尝试过使用调大资源池最大请求数的方法依然没能成功,然后网上找了很多基于时间竞争的文件上传方法,依然没有找到适合新版本的方法,找新版本线程数选项的方法也是没能找到,所以这让我认识到有时候并不是新软件就好,因为关于新软件使用问题老版本的问题回答明细占大多数,当遇到问题,使用老版本也能更快找到答案。当然这只是对于还不熟悉软件的我的主观看法,或许以后熟悉了应该就能发现不同版本之间的优缺点了。
2.2、证书问题
https证书相关问题
2.2.1、安装证书
开启brup代理127.0.0.1:8080和浏览器开启代理127.0.0.1:8080
网址输入127.0.0.1:8080才会出现CA证书下载选项
2.2.2、证书安装好依然不能抓取https的数据
检查安装证书的时候编辑信任设置是否勾选
2.2.3、设置模拟器代理
1、 打开设置中的wlan菜单,鼠标左键常按弹出菜单,点击修改网络,准备添加代理
2、勾选高级选项,选择手动代理,填写cmd中ipconfig的本机ip,未被占用的端口。
3、 来到burp中设置好代理,ip和端口要和模拟器中设置的一样。别忘记勾选上running
4、打开模拟器自带浏览器,输入http://burp 下载证书为cacert.der。
5、 打开系统应用中文件管理器,此时无法安装刚下载好的证书,因为模拟器识别不了此文件类型。需要鼠标左键常按,修改后缀名为cer(有的模拟器是pem、crt等后缀)。
6、 但是此时单击证书,我们依然无法直接安装。
7、 此时需要去设置中的安全菜单,找到从SD卡安装。打开文件中浏览内部存储空间,download文件夹下,可以看到刚才修改过后缀名的证书文件。证书名称随便,用途选VPN,至此安装完成。
8、 之后我们可以在设置中的安全菜单下,选择信任的凭证,用户下可看到刚刚安装的证书,PortSwigger CA。
9、如果无法使用安全菜单下的凭证存储,可能是需要先设置锁屏pin码或密码。
10、 安装完成。
11、抓包一直提示安全证书有问题,点击右上角设置按钮(如图所示,三个小点)
进入隐私和安全
12、在跳出的界面,我们下拉选择显示安全警告选项,把红框位置点击鼠标左键,打勾后,返回,这一步确保了之后点击任何网站都不会跳出此种安全警告了。
2.3、BurpSuite乱码问题
User Options --> Display --> Character Sets,在第四个选项中选择 UTF-8,中文乱码的问题就可以得到解决。这个时候不管我字体选择的是哪一个,中文都是显示正常的。
三、安装旧版本Brupsuite
在使用一段时间新版本brupsuite后暂时还是没有发现特别好用的地方,遇到更多的都是问题。同时之前在学习apk软件编译的过程中,遇到了无法编译成功的情况,查了一下原因大概率可能和java版本不匹配有关系,但是对于java不了解,担心安装其他版本的java后影响了brupsuite的使用,就一种没有解决,现在决定更换旧版本brupsuite安装,一方面可以方便之后的学习,另一方面还能学到怎么让不同java版本共存的知识,还有可能解决之前一种没解决编译的问题
3.1、多个java版本共存问题
在这里简单说明一下为什么要多个java共存,因为旧版本brupsuite使用的是低版本java,但是之前安装了高版本的java,而且之后自己的学习可能会用到多个java版本。安装brupsuite除了所需的java环境不一样,其他的大同小异。
1、安装多个不同版本的Java
在Windows中同时安装多个Java版本非常容易,你只需要下载并运行每个版本的安装程序,它们会自动安装到不同的目录中
下载不同版本的Java
Java SE 1.1 - 该版本不能运行在64位Windows上
Java SE 1.2 - 默认安装到目录C:\jdk1.2.2\和C:\Program Files (x86)\JavaSoft\JRE\1.2\ - 推荐安装到目录C:\Program Files (x86)\Java\jdk1.2.2\和目录C:\Program Files (x86)\Java\jre.1.2.2\。
Java SE 1.3 - 默认安装到目录C:\jdk1.3.1_28\ - 推荐安装到目录C:\Program Files (x86)\Java\jdk1.3.1_28\。
Java SE 1.4 - 默认安装到目录C:\j2sdk1.4.2_19\ - 推荐安装到目录C:\Program Files (x86)\Java\jdk1.4.2_19\。
下面这些版本不用修改安装目录,直接默认安装:
Java SE 5
Java SE 6
Java SE 7
Java SE 8
Java SE 9 / OpenJDK 9
Java SE 10 / OpenJDK 10
注意:以下Oracle发行版只能用于个人开发,不能应用于商业软件开发:
Java SE 11 / OpenJDK 11
Java SE 12 / OpenJDK 12
Java SE 13 / OpenJDK 13
Java SE 14 / OpenJDK 14
Java SE 15 / OpenJDK 15
Java SE 16 / OpenJDK 16
2、设置切换java版本的脚本和环境变量
path路径里新增C:\Program Files\Java\scripts,文件夹scripts需要自己创建,用来放切换java的脚本文件。这些脚本文件被命名为java16.bat、java15.bat、java11.bat、java1.8.bat等等,在每一个脚本文件中,我们会修改当前“JAVA_HOME”环境变量的值为对应Java版本的位置。例如下面是java11.bat脚本文件的内容:
@echo off
set JAVA_HOME=C:\Program Files\Java\jdk-16
set Path=%JAVA_HOME%\bin;%Path%
echo Java 11activated.
这个脚本很简单,我们在“Path”变量值的开头部分插入了当前要切换的Java版本所对应目录的位置,该位置是Java版本目录中Java.exe可执行文件的位置,因此,每一次Java版本的切换都会导致“Path”变量的值增加,不过这个只会影响当前打开的控制台,当控制台被关闭后该操作也就失效了。
3、控制台输入验证
注意:java8系列是不支持--version的,但是java9却支持--version。所以,在未来的日子里面,大家还是可以以相同的习惯,继续使用--version的。
3.2、embedded browser initialisation failed报错
BurpSuite可谓是渗透测试过程经常使用的神器之一,但使用中经常会碰到奇奇怪怪的问题,比如有时抓http包,发送到Repeater(中继器,也叫重发器)模块后,在右边Render模块下,却无法看到预览画面,提示
embedded browser initialisation failed(嵌入式浏览器初始化失败),如下图,重新安装后,问题依旧
embedded browser initialisation failed(嵌入式浏览器初始化失败)的解决方法:
burp内置的浏览器是chrome,运行后, 默认会在C:\Users\当时用户\AppData\Local\Temp目录下,解压出一个chrome浏览器的文件夹,我使用的是burp2.011,内置是chromium-64.0.3282.24版本,可能是我使用汉化的原因,burp的汉化简单来说就是使用java来调用汉化补丁,而问题可能就出在这里,在上一次内置浏览器初始化失败后,该文件夹并没有被删除下次还是会初始化失败。经多次尝试,临时解决方法如下:
1.手动进入当前用户下,C:\Users\当时用户\AppData\Local\Temp目录下,删除chromium开头的那个文件夹,推荐同时删除该目录下所有burp开头的临时文件夹,如果有文件提示被占用,任务管理器结束Java开头的相关进程
2.重启burp.发现Render下的页面预览已恢复。
3.3、注册机生成的license没作用
这是帮助别人安装过程中发现的问题,可能是由于对方win10系统是家庭版的原因吧。注册机里的run按钮点击没有效果
在“打开方式”设置窗口中点击选中选项“始终使用选择的程序打开这种文件”前的复选框,再点击旁边的“浏览”按钮。
在java的安装路径下找到bin文件夹里的javaw.exe选定
这时已经设置了使用javaw.exe应用程序来打开jar文件,可是实际上这时双击jar文件还是没有反应,这是因为没有设置打开文件参数导致的。
在Windows开始菜单的搜索框中输入“regedit”,在上方搜索出的文件regedit上点击鼠标右键,在弹出的菜单中选择“以管理员身份运行”。
在注册表编辑器中,找到“HKEY_CLASSES_ROOT\Applications\javaw.exe\shell\open\command”,在其中文件打开命令中加入参数“-jar”(无引号),修改后的数值类似:““C:\Program Files\Java\jre7\bin\javaw.exe” -jar “%1””(只需要添加-jar参数,无需修改其他信息),保存并退出注册表编辑器。
四、总结
在安装使用brupsuite过程中遇到了很多问题,花费了很多时间总算一一解决了,在解决问题的过程中还学到了一些新的知识,这让我深刻的认识到遇到问题的时候千万不能一根筋,首先应该保持冷静的心态,把问题想清楚,然后设想出可行的解决方案,不断尝试,这个过程中接触到新的知识,也许还能触类旁通,解决之前解决不了的一些问题。