很棒的Android反向工程

精心策划的Android反向工程培训,资源和工具的清单。
如何使用
令人敬畏的Android逆向工程是一个惊人的清单,对于那些从事拆开Android应用,系统或组件的人来说。只需按ctrl + F即可搜索关键字,浏览我们的内容菜单,或查找“☆”,以表示一些很棒的最新资源。
内容
训练
课程和材料
- ☆Maddie Stone的Android反向工程培训 - Maddie Stone的Android反向工程的全面在线培训课程。
- 来自阿塞利亚实验室的集会简介 - 涵盖数据类型,寄存器,ARM指令集,内存指令等的所有内容
- #TODO的Android渗透测试 - 本课程将使您对移动渗透测试涉及的内容以及拆开和分析Android应用程序所涉及的特定工具,技术和框架开发基线知识。
视频
- Kristina Balaam Android反向工程 - 逆向工程基础知识和逆向工程Android恶意软件的视频系列。
- 月球式逆向工程视频 - YouTube频道,专注于Android反向工程。
- 使用Frida修改Android游戏|移动动态仪器 - 专注于逆向工程Android应用程序,并使用Frida动态修改Android游戏。
图书
- ☆Android内部质量:糖果食谱 - 对Android内部工作的深入探索:在第一卷中,当我们深入研究Android,Filesystitions,Protitions,Boot Process,boot Process,boot Process,boot Process,boot Process,boot Process,native daemons和daemons和服务时,我们会采用Power用户的角度。
- Blue Fox:手臂组件内部和反向工程 - 为读者提供了武器组件内部构架和反向工程基础知识的坚实基础,以此作为分析和保护数十亿个ARM设备的基础。
- Android软件内部快速参考 - 本书重点介绍Java和Android系统中易于消化,有用且有趣的技术。包括:加密和混淆,调试和APK提取。
- ☆移动进攻安全袋指南 - 专注于Android和iOS操作系统,该书包含一系列简洁的章节,这些章节突出了移动渗透测试人员和进攻性安全从业者使用的关键信息,方法和工具。
- Android Security Interals-描述了自下而上的Android安全体系结构,并深入研究了与安全相关的组件和子系统的实现,例如Binder IPC,权限,加密提供商和设备管理。
- 使用机器学习的Android恶意软件检测 - 检查用于检测恶意应用程序的机器学习技术,防御者可以使用的分类模型的类型以及可能成为这些模型输入的恶意软件标本的各种功能。
工具
静态分析工具
- Qark- LinkedIn开发的一种开源工具针对自动Android应用程序漏洞扫描,包括识别潜在的安全问题,例如SQL注入,不安全的数据存储等。
- Quark Engine- Quark脚本的目标旨在为移动安全研究人员提供一种创新的方式来分析或实现目标。基于夸克,我们将体面的工具集成为夸克脚本API,并使它们彼此交换有价值的智能。
- MOBSF-一个开源移动应用程序安全测试框架,支持对Android应用程序的静态和动态分析,以解决漏洞和隐私问题。
- Androbugs框架 - 用于分析和扫描Android应用程序的安全问题的开源框架,包括静态和动态分析功能。
- ☆iMjtool-适用于最广泛的供应商和格式的固件解开工具。
- Android Studio-如果您没有JEB许可证,并且想将(通过JADX)应用于适当的IDE,则很有用。
- ☆apk依赖图 - APK类依赖性可视化器。用于攻击表面映射。
- 解除武装 - 一个简单的命令行实用程序,将其作为参数为32位十六进制的数字,并将其作为ARM-64指令解析,提供拆卸。
- COVA -COVA是一种基于用户定义的API计算路径约束的静态分析工具。
- dis {Integrity} - 一种用于分析Android APK并提取根,完整性和篡改检测检查的工具。
脱杀
- ☆obfu [de] scate -obfu [de]分数是使用模糊比较逻辑来识别函数之间的相似性的Android APK的脱束工具,即使它们已被重命名为肥胖的一部分。它比较了两个版本的APK,并生成映射文本文件和一个交互式HTML文件作为输出!
- TinySmaliemulator-一种极简主义的Smali模拟器,可用于“解密”混淆的字符串。
- 简化 - Android虚拟机和DEOBFUSCATOR。
- DEOPTFUSCATOR -DEOPTFUSCATOR是使用控制流相混淆机制进行转换的Deobfuscustrcting Android应用的工具。
动态分析工具
- Drozer-一个用于Android安全测试的开源框架,为动态分析提供了全面的工具,包括拦截,修改和分析应用程序流量。
- JTRACE-用于Android的街道 - 用于跟踪系统级呼叫,包括粘合剂。
- sesearch-命令行工具查询SELINUX策略。
- Autodroid-用于从设备中收集APK的工具,分解,在字符串上进行过滤,等等。
联网
- ☆BURP Suite-一种流行的商业网络安全测试工具,可用于分析Android应用程序的网络流量,以实现潜在的安全漏洞。
- Wireshark-一种广泛使用的开源网络协议分析仪,可以捕获,分析和解剖由Android应用程序生成的网络流量进行安全分析。
- SSLSPLIT-用于拦截和操纵SSL/TLS加密流量的开源工具,可用于分析Android应用中的SSL/TLS通信。
- MITMProxy-一个开放源代码的中型代理,允许拦截和分析由Android应用程序生成的网络流量进行安全测试和分析。
- APK -MITM-一个自动准备Android APK文件进行HTTPS检查的CLI应用程序。
动态仪器
- ☆FRIDA-一种用于Android应用程序的动态仪器工具包,允许对应用程序行为进行运行时操纵和分析。
- XPOUDS框架 - 在运行时挂钩和修改Android应用程序的强大框架,通常用于反向工程和分析。
- ☆反对 - 一种用于Android的运行时移动勘探工具,可提供各种功能,用于分析,操纵和绕过应用程序安全控制。
- RMS运行时移动安全性-FRIDA Web界面。
- ☆Fridump-一个利用Frida丢弃运行小工具的内存,例如App Active。
- Jnitrace-基于FRIDA的工具,可追踪Android应用中JNI API的使用。
- ☆粘合剂跟踪 - 粘合剂跟踪是拦截和解析Android粘合剂消息的工具。将其视为“粘合剂的Wireshark”。
分解器
- ☆JADX-一种开源工具,用于将Android APK文件分解和分析到Java源代码中,以进行反向工程和分析。
- Procyon -Procyon是Java元编程工具的套件,包括丰富的反射API,用于运行时代码生成的LINQ启发的表达树API和Java分解器。
- CFR-一种开源Java分解器,将Android APK文件的分解为Java源代码,包括支持新的Java语言功能。
- Fernflower -Fernflower是Java的第一个实际工作分析分解器,并且可能是高级编程语言。
- ☆apktool-一种流行的开源工具,用于分解和重新编译Android APK文件。
- DEX2JAR-用于将Android DEX文件转换为JAR文件的工具,可以使用Java分解器进一步分析该文件。
- JDGUI -JD -GUI是一个独立的图形实用程序,显示“ .class”文件的Java源代码。
- IDA Pro-强大的商业拆卸器和用于分析Android本机代码的调试器。
- ☆GHIDRA-支持Android分析的国家安全局(NSA)开发的免费开源软件逆向工程(SRE)框架。
- JEB Decompiler-一种用于Android应用程序的商业分解器,可以将APK文件分解为Java源代码进行分析。
- RADARE2-一个免费的开源逆向工程框架,支持Android分析,包括拆卸,调试和二进制分析。
- Androguard-一种用于分析和逆向工程Android应用程序的开源工具,包括分解APK文件,分析Dalvik bytecode等。
- APK2Gold-将Android应用程序分解为Java的CLI工具。同时进行资源和Java(此存储库已有9年的历史,因此可能无法与较新的Android版本一起使用)。
- AndroidProjectCreator-使用多个开源代码分解器将APK转换为Android Studio项目。
- APK Studio-基于跨平台的开源QT IDE,用于反向工程Android应用程序包。
- Show -Java- APK(Android应用程序),Android的JAR和DEX分解器。
- ☆apklab- apklab无缝集成夸克引擎,apktool,jadx,uber-apk-signer,apk-mitm等。
恶意软件分析
- DroidDetactive -Android应用程序的机器学习恶意软件分析框架。
- 杜鹃DROID-杜鹃 - 杜鹃花箱自动化的Android恶意软件分析。
- Androwarn-恶意应用应用程序的静态代码分析仪。
资源
文档
- Android安全文档 - Google的官方文档有关Android安全性,包括与逆向工程有关的主题。
- Android反向工程挑战 - 策划的Android反向工程挑战和CTF(捕获标志)的练习清单。
- Androidxref-打开代码搜索Android源。
- APKMIRROR-来自Play商店和用户上传的Android APK的存储库。
- APKPURE-来自Play Store和用户上传的Android APK的存储库。
案例研究
- Houseparty视频聊天应用程序的逆向工程师的验尸
- Sharkbot:在Google Play商店分发的“新” Android Banking Trojan
- 野外系列:Android漏洞
CTF和裂纹
- ☆无法裂缝的移动应用程序 - 一组OWASP Android App CrackMe。这些挑战被用作整个OWASP MASTG的例子。当然,您也可以解决它们的乐趣。
- Cybertruckchallenge19-在2019年塞伯克挑战赛(美国底特律)中教授的Android安全研讨会材料。
- KGB Messenger -KGB Messenger是开源CTF实践挑战,旨在帮助人们学习如何逆转Android应用程序。
杂项
- LADB-当地的ADB外壳用于Android!
- 破碎的机器人工厂-BDF是一种Python工具,旨在在脆弱性研究,道德黑客和Android应用程序上进行培训的伪随机脆弱的Android应用程序。
- Uber-apk-Signer-一种CLI工具,可帮助签名和划线与调试或提供的发行证书对齐单个或多个Android应用程序软件包(APK)。它支持V1,V2和V3 Android签名方案具有嵌入式调试密钥库,并在签名后自动验证。
- 符文篡改检测演示 - 旨在成为理解更复杂的Android篡改检测和完整性系统(例如Google Play Safetynet和Huawei安全检测)的相似之处。
贡献
您的贡献始终欢迎!请先阅读贡献指南。我们遵循贡献者盟约行为准则。贡献时,请确保审查并遵守本行为守则。
执照
此项目已获得MIT许可证的许可 - 有关详细信息,请参见许可证文件。