您想要撤销哪种可执行文件?
Windows可执行文件(PE可执行文件A.K.A. .exe文件)
- OllyDBG(免费):一个非常好的可执行调试器(你可以用它来改变反汇编代码)
- IDA PRO(商业,昂贵):如果你想做二元分析,这就是你需要的程序。
- Hiew(商业,相当便宜):反汇编程序+十六进制编辑器。我在过去(10年前)使用过它,这个程序没有GUI
Linux可执行文件(ELF文件)
- GDB(Free / opensource):GNU Debugger。
- Hopper(商业,廉价):反汇编程序+伪C反编译器(这个工具很棒!)
- Evan的调试器(free / opensoure):这与OllyDBG非常相似,但对于linux
- 洞察力(免费/开源,有点过时的AFAIK):GDB的一个非常好的GUI。
- IDA PRO(商业,昂贵):如果你想做二元分析,这是你需要的程序(Linux版本)。
MacOS可执行文件(MACH-O文件):
- Hopper(商业,廉价):Hopper可以反汇编和反编译OSX可执行文件。
- IDA PRO(商业,昂贵):如果你想做二元分析,这是你需要的程序(OSX版本)。
- 很抱歉,但我对OSX上的逆向工程知之甚少。
Android可执行文件(APK包内的.DEX)
- APK TOOL(免费/开源):反汇编程序和汇编程序(SMALI)。如果您想要逆向设计Android应用程序,这可能是您需要的唯一工具。
- JEB(商业):Android反汇编程序(SMALI)和反编译程序(JAVA),这个程序可以在Java类中反编译DEX。官方网站上有一个演示。
- IDA PRO(商业,昂贵):IDA可以反汇编Android可执行文件
iOS可执行文件:
- IDA Pro(商业,昂贵):IDA可以反汇编iOS可执行文件
- Hopper(商业,廉价):Hopper可以反汇编和反编译iOS可执行文件。
书:
- 逆转:逆向工程的秘密 - Eldad Eilam
- IDA Pro Book:世界上最受欢迎的反汇编者的非官方指南 - Chris Eagle
- 实用逆向工程:x86,x64,ARM,Windows内核,逆向工具和混淆 - Bruce Dang,Alexandre Gazet,Elias Bachaalany,Sebastien Josse
- 学习Linux二进制分析 - Ryan O'neil
的网站:
- Opensecuritytraining.info:许多关于逆向工程和低级编程的视频。
- Reverseengineering.stackexchange.com:关于RE的问题。
youtube上也有很多视频,但主要是游戏黑客等。
反向工程可能起初很难,但它非常酷且有趣,但请不要使用你的技能做愚蠢的事情,比如注射病毒或盗版东西:让逆向工程变得更好:)