逆向神器Frida

简介: 逆向神器Frida

随着编程技术不断发展, 逆向分析也要与时俱进. 自从核弹级的调试框架frida面世后, 就迅速走红成为圈内当之无愧的顶流. 无论是能还原vmp的顶级大佬还是刚入坑汇编都看不懂的萌新, 对frida全都欲罢不能. frida的出现直接对软件保护进行了降维打击, 大大降低了逆向的入门门槛. 国内互联网巨头的攻城狮们苦心设计的加密算法统统被逆向大神用frida还原, 各类CTF中全部都有frida的身影. 本文将初步尝试学习使用神器frida, 以追赶时代的脚步.

frida的主要用途是动态的二进制插桩, 也就是通过hook函数分析程序执行流程, 通过监控函数入参与返回值分析函数功能, 进而修改程序来实现特定功能. 类似的工具最为著名的就是安卓的Xposed框架, 但frida和同类工具相比有着巨大优势:

跨平台: android/ios/windows/macos/linux 几乎支持常见的所有平台.分析三端都支持的软件或者游戏时不需要换工具.

支持多种语言: 支持对 安卓java/苹果OC/PC汇编 的hook. 常见的软件无论是java层还是jni层, 无论是il2cpp还是纯C++编译的客户端程序, 或者运行在centos里的服务器, 全部都可以使用frida编写插件分析.

使用js语言编写脚本: 高级动态语言大大降低了入门门槛, 极大提升开发效率.

支持热加载脚本: 对于分析环境复杂的软件, 省去了重新编译重启调试环境的时间, 使调试分析思路更连贯.

官网有详尽的api文档: 因为使用者众多, 生态较好, 教程讨论以及"轮子"插件也多.

代码开源: frida作者github代码更新频繁, issue互动较多, 工具本身的bug会被及时修复, 性能也在不断优化.

逆向最重要的是实现三个功能: 读写任意内存, hook任意函数, 执行任意函数. 只要实现了这三个功能就算是图灵完备了, 拥有了对程序的完全控制力, 可以实现原开发者能够实现的任何功能. 在frida中, 实现这三个功能的代码极其简单, 不需要任何IDE, 不需要写一行汇编代码, 打开记事本, 几十行代码就能实现想要功能.

本文将以台服为例, 简单介绍如何使用frida编写服务器插件以及客户端插件. 通过离线奖励/装备回收/时装镶嵌/nut扩展/无限难度地下城/转生系统等几个小功能, 来介绍如何用frida编写插件在台服实现任何想要的功能.

相关文章
|
安全 Python Windows
[笔记]逆向工具IDA Pro之简单使用
[笔记]逆向工具IDA Pro之简单使用
1186 0
|
数据安全/隐私保护 iOS开发 开发者
iOS 逆向编程(十八)Reveal 详细安装(以及安装问题解决)(上)
iOS 逆向编程(十八)Reveal 详细安装(以及安装问题解决)
619 0
|
2月前
|
JSON 算法 数据安全/隐私保护
brida和frida练习hook逆向技术【中】
本文介绍了如何在未加壳、未混淆的 APK 中定位并破解加密算法,并使用 Burp 插件 autoDecoder 进行自动化加解密及口令爆破。文中详细描述了从反编译到配置插件的全过程,并提供了关键要素如 AES 算法、SECRET_KEY 和 Base64 编码的具体应用。此外,还展示了如何调整并发数以提高爆破成功率。
40 0
brida和frida练习hook逆向技术【中】
|
2月前
|
Java Android开发 数据安全/隐私保护
brida和frida练习hook逆向技术【上】
使用zangcc测试包.apk,练习 Brida 和 Frida 的 Hook 逆向技术。
21 0
brida和frida练习hook逆向技术【上】
|
监控 iOS开发
iOS 逆向编程(十八)Reveal 详细安装(以及安装问题解决)(下)
iOS 逆向编程(十八)Reveal 详细安装(以及安装问题解决)(下)
310 0
|
Android开发 iOS开发
iOS 逆向编程(四)实操 Jailbreak 进阶必备软件
iOS 逆向编程(四)实操 Jailbreak 进阶必备软件
102 0
|
6月前
|
网络协议 Shell Linux
安卓逆向 -- IDA动态调试
安卓逆向 -- IDA动态调试
90 0
|
6月前
|
人工智能 JavaScript Python
基于Airtest抖音养号源代码
基于Airtest抖音养号源代码
107 0
|
安全 Android开发
[笔记]安卓逆向之动态调试
[笔记]安卓逆向之动态调试
106 0
|
JavaScript 前端开发 Linux
Hook神器—Frida安装
Hook神器—Frida安装