Use Frida to decrypt communication packets and interact with Burpsuite
使用Frida解密通信数据包并与Burpsuite交互
分析App时经常遇到网络通信数据包加密的情况,逆向分析后虽然可以写出解密前信息提示或者修改的插件,但是无法动态修改数据包中指定字段,对于其他自动化测试极为不方便。这里可以使用frida编写插件让其与burpsuite进行交互。
message消息
frida中有个消息机制,可以与目标进程中互相发送消息,在python中可注册message回调函数,处理接收与发送消息的方法
1 | import frida |
阻塞等待输入交互
在注入的插件脚本中,可使用recv.wait来阻塞进程,等待返回消息
1 | Interceptor.attach(....., { |
burpsuite交互
通过上面的方法,已经可以完成注入App的数据阻塞等待动态修改了,接着将数据修改来源绑定到burpsuite上
这里可以将python端on_message中收发的消息数据使用http方式发送到burpsuite中,再等待burpsuite中修改后返回的结果。所以python端创建一个简单的http服务器,负责与burpsuite通信即可。
我在这里使用了HTTPServer创建了个本地服务器,监听28080端口,接着负责处理frida的on_message中使用requests模块与burpsuite 28081端口进行http通信,burpsuite proxy模块中设置监听127.0.0.1:28080地址,数据发送到127.0.0.1:28081地址。
运行截图
Like
Issue Page
No Comment Yet
Login with GitHub