Brida介绍

Brida是基于Frida开发的Burp插件。

Brida使用了Frida的核心库,并在此基础上开发了一些高级功能,包括动态调试、数据拦截和修改等。Brida通过Frida实现了与目标应用程序的交互,并将其与Burp Suite进行了集成,从而扩展了Burp的功能,使得渗透测试人员能够更加方便地进行应用程序的渗透测试。

因此,可以说Brida是Frida的一个扩展,它为Frida提供了一个友好的用户界面和更加高级的功能,使得渗透测试人员能够更加方便地使用Frida进行应用程序的分析和修改。

官方文档:https://github.com/federicodotta/Brida/wiki

环境配置

安装文档:https://github.com/federicodotta/Brida/wiki/Installation

需要的环境配置

# 实现跨进程通信
pip3 install Pyro4
# 安装frida-compile
npm install frida-compile -g

burp安装插件

install plugin

Brida面板中,填写相应的信息,然后运行即可,如下图都是running就说明OK了。

config

使用

编写brida.js

brida.js

然后重新编译,编译后在Debug export中,测试函数是否正常即可。

Debug export

实战

核心就是找到加密算法,然后编写frida的js脚本,通过 rpc.exports 函数将需要远程调用的函数暴露出去

编写脚本

这里我找到了加密算法,编写了js脚本如下,编写完成后一定要记得保存文件。

image-20230318173039142

调用算法前,记得重新编译一次,然后在debug界面测试一下是否正常。

image-20230318173117803

自动替换数据包

Custom plugins子面板中编辑,如下,插件类型是IHttpListener,根据情况看需要正则表达式还是全部替换。

image-20230318174302633

curl测试,可见uid已经被自动替换成加密后的。

image-20230318174224030

加入右键菜单

插件类型是IContextMenu

image-20230318173521880

然后在右键的extensions菜单中,就可以直接调用来修改了。

image-20230318173612629

异常问题

问题1

Error: entrypoint must be inside the project root

image-20230318153354275

解决方案:

查了好久找不到资料,瞎搞发现第一种解决办法如下,进入到js文件的目录编译就可以了(新问题就是以后每次修改brida.js文件后,都需要到js文件目录手动编译)。

cd /Users/d4m1ts/Downloads/
"/Users/d4m1ts/.nvm/versions/node/v14.19.3/bin/frida-compile" -o "/Users/d4m1ts/Downloads/bridaGeneratedCompiledOutput.js" "/Users/d4m1ts/Downloads/brida.js"

又研究了一下,这个问题产生的原因,就是要求执行frida-compile命令的时候必须在存放brida.js文件的目录中。

所以第二种一劳永逸的办法,就是将brida.js文件放到burp的运行目录中去,这样可以保证每次编译都在存放brida.js的目录下进行。

/Applications/Burp Suite Professional.app/Contents/Resources/app/

解决方案2

问题2

env: node: No such file or directory

解决方案:

sudo launchctl config user path $PATH
Copyright © d4m1ts 2023 all right reserved,powered by Gitbook该文章修订时间: 2023-03-19 08:28:25

results matching ""

    No results matching ""