本帖最后由 McuPlayer 于 2018-4-17 09:09 编辑
二进制代码逆向 逆向成c stm32 cortex-m3 cortex-m0 杂谈
有时开发资料意外丢失,关键C代码不在,只有可运行的嵌入式系统,这种情况能否可以再逆向得到功能上一模一样的能方便阅读、理解的C语言代码?答案是肯定的,因为单片机里的程序是可以复制的,目前基本上所有的单片机程序都可以被硬解密出来(即所谓的IC解密或**)。但硬**得到的是二进制烧录文件。
二进制烧录文件,是单片机运行的机器码,必须反汇编成汇编语言程序才能被懂汇编的工程师看懂,甚至进行功能修改或创新升级。但目前精通汇编的工程师凤毛麟角,就算有这类精通汇编的工程师,但是如果修改或新添加的功能比较多,工程师也是无能为力。这类情况,唯有一条途径可以解决,那就是逆向翻译成C语言代码。
逆向成C的过程,是一个系统的工程,对逆向工程师的要求非常高,丰富的逆向经验及严谨工作态度是项目成功的关键。 |
成功逆过几个比 较复杂大的项目,开发了相应的逆向工具19699100