Brida入门

Brida入门

Posted by hmoytx on April 26, 2022

Brida入门

前言

Brida是Burp中的一个插件,它可以把Burp和Frida结合起来使用,简化测试流程,通过Brida能在Burp中直接调用目标app中的加/解密函数,进行参数修改测试更多的输入点。

Brida及其依赖安装

Brida在Burp的插件商店中有下载。
1
因为Brida目前仅支持python2.7,你需要配置python2.7。
然后是需要配置Frida,我这里用的12的,手机上注意对应版本,并启动Frida server。
2
然后电脑还要安装两个依赖。
Pyro4安装:

pip install Pyro4

frida-compile安装,这里需要指定版本为9.x,大于9也行,但是会麻烦点。

npm install frida-compile@9

安装好以后,页面如下:
3
简单看下他的配置:
4

简单实操

现在找个简单的app来测试(手头没有适合讲的app,挑了个有加密的,最后是有点问题的)。
在手机启动app,先attach上对应的app。不知道进程名可以用frida-ps查看。
5
hook成功不会报错,它有bug有时候(经常)报错,,kill server再启动,然后spawn attach几个多点,多试。
然后在JS Editor中测试下js脚本能不能执行,模板用前面指定的Frida JS files folder目录下的Brida.js。
这里写了个简单的输出脚本。
6
然后去Debug export中进行调用,能正常输出就是好事。
7

加解密

简单的会用了,来继续看这个app。
数据包如下:发现都是加密的。
8
先jadx打开,定位算法,他没有加壳(我之前测过,定位加密算法过程简化了)。
直接通过encrypt之类的关键字定位到。
9
不放心,再用HttpDecrypt hook下看看,是否正确:
发现请求时,存在调用,不过他输入是bytes数组,后面写的时候要进行String转bytes的操作。
10
将String转bytes:
11
这里多次测试发现密钥固定,a为加密,c为解密。
12
13
这样就可以开始写hook了。
时间问题写了个加密的,解密的差不多,就不重复写了。
14
在Debug export中输入明文,执行如下,能实现基本功能:
15
解密的hook调用也是大同小异,不重复了。

总结

这里只是简单尝试了下Brida的基础功能,比Frida直接操作只是多了图形化,Brida更强大的地方在于能和Burp的各模块进行联动。
关于插件这块,下回分解。