为什么要逆向软件

什么是软件逆向?

软件逆向也叫逆向工程,英文名是reverse engineering,大意是根据已有的东西和结果,通过分析来推导出具体实现方法。


为什么要逆向软件

比如你看到别人写的某个程序能够做出某种漂亮的动画效果,通过反汇编、反编译和动态跟踪等方法分析出其动画效果的实现过程这种行为就是逆向工程。


逆向工程的应用

辅助软件开发,安全研究,病毒分析,漏洞挖掘


逆向的准备工作

逆向环境搭建

安卓逆向的环境部署:Java  sdk,android sdk, Android虚拟机

常用的工具有:apktool, Android killer,APKIDE, IDA

逆向基础知识:Android应用程序的开发方法,Smali语法,Arm指令。


逆向分析步骤

1.反编译如果失败,寻找其他途径,

2.如果成功,分析目录结构,有lib,分析so,包括静态分析与动态调试

无lib的情况,分析smali代码,包括有混淆和无混淆两种情况。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容