如何轻松地逆向工程软件?

时间:2016-04-07 13:59:45

标签: reverse-engineering

我是软件逆向工程的新手, 其实我想从免费开源学习软件逆向工程,我的问题可以让有经验的人推荐我一些网站或youtube渠道来做到这一点吗? 请推荐....

1 个答案:

答案 0 :(得分:0)

您想要撤销哪种可执行文件?

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上也有很多视频,但主要是游戏黑客等。 反向工程可能起初很难,但它非常酷且有趣,但请不要使用你的技能做愚蠢的事情,比如注射病毒或盗版东西:让逆向工程变得更好:)