BinSight的开源项目是一个功能强大且专注于Android APK分析的先进工具
📌 项目核心作用
BinSight 旨在自动化分析Android APK中的原生库(.so文件)。它通过结合静态反汇编与大语言模型(LLM)的推理能力,并辅以实时网络搜索,来快速判断每个 .so 文件的主要意图、可能的开发者以及潜在的安全影响。这极大地简化了逆向工程流程,使二进制分析更快、更准、更易用。
🧩 主要功能列表
核心功能模块:
1.APK自动提取:能自动从目标APK文件中提取出所有的 .so 原生库。
2.实时网络搜索:会为每个提取出的库文件执行网络搜索,以收集关于其开发者和用途的实时公开信息。
3.多架构反汇编:利用 pyelftools 和 Capstone 框架,支持对 ARM、ARM64、x86 和 x86-64 多种CPU架构的代码进行反汇编。
4.富数据提取:不仅能获取汇编代码,还能提取函数名和嵌入的字符串,为后续分析提供更丰富的上下文。
5.灵活的LLM集成:基于 litellm 库,可以无缝集成超过100种来自不同提供商(如OpenAI、Google、Anthropic等)的大语言模型。
6.可配置的命令行界面:提供简单的命令行接口,允许用户指定目标APK、选择LLM模型、配置自定义API端点和密钥。
7.清晰的分析报告:最终会为每个分析的库生成一份总结报告,说明其可能的意图、置信度和证据。
⚙️ 工作原理简述
工作流程是一个自动化的管道:
1.提取:解压APK,提取所有 .so 文件。
2.搜索:对每个 .so 文件进行网络搜索,获取背景信息。
3.反汇编:识别库的架构,反汇编代码,并提取函数名和字符串。
4.分析:将搜索结果、汇编代码、函数名和字符串打包成一个详细的提示,发送给用户配置的LLM进行分析。
5.报告:收集LLM的结论,打印出最终的汇总报告。
6.清理:删除所有临时文件。
✨ 主要优势
1.高度自动化:将手动逆向的多个繁琐步骤整合为一个自动化流程。
2.上下文丰富:结合了网络情报(搜索结果)和二进制内部证据(汇编、字符串),分析结果更可靠。
3.模型无关性:通过 litellm 支持海量LLM,用户可以根据需求、成本和性能自由选择。
4.易于扩展:清晰的模块化设计,便于未来添加对新文件格式或分析模块的支持。
这个工具特别适合安全研究员、逆向工程师和移动开发者,用于快速了解APK中第三方库的构成、识别已知SDK、发现潜在恶意行为或进行合规性分析。
https://github.com/argus-sight/BinSight推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……




发表评论