MacOS通过IDA反编译GO并简单修改二进制文件
所需工具:IDA PRO 7.0、IDA7.0_SP、
公司有一个GO语言开发的系统丢失了源码,只剩下一个可执行的二进制文件,现在需要简单修改其中的逻辑,通过一些搜索和尝试终于实现了,本文将介绍其中的操作过程。
操作步骤
下载安装IDA PRO
通过IDA打开二进制文件
通过IDAGolangHelper显示方法名称
参考IDA 7.0 如何使用 IDAGolangHelper插件
找到汇编语言位置
这个就比较麻烦了,我暂时也没有好办法,就是看方法,找到可能的方法之后看汇编语言的逻辑,这里推崇一下IDA的Lagout模式,看汇编逻辑简单多了,找到需要修改的汇编语言的位置之后可以参考 IDA修改汇编指令进行修改,但是我电脑不行,一直报错。我最后是通过Edit-Patch program-Change byte修改成功的。
检查
因为第一次尝试,不太放心,这里通过Beyong Compare软件比较修改前后的二进制文件,确认差异仅限自己修改的问题。
这下终于大功告成了!
参考
IDA Pro 7.0 macOS 安装
IDA 7.0 如何使用 IDAGolangHelper插件
IDA修改汇编指令