首页
社区
课程
招聘
[原创]基于LLM的Android SO分析小工具
发表于: 2025-9-9 20:12 1739

[原创]基于LLM的Android SO分析小工具

2025-9-9 20:12
1739

在做Apk分析(竞品分析或者合规分析)的时候,相比Java层,Native的扫描和分析难度更大,往往是通过IDA去解析,通过分析字符串,函数名,导入/导出表等,基本上就能推断出这个so的作用以及开发者信息(供应商等)。面对一款陌生的App,如果有很多陌生的so的话,就需要逐一分析,非常繁琐。碰到一些不理解但又觉得有意义的字符串,还得上网搜一下。对于非逆向方向的同学,可能无法独立完成这样的工作。是否有一款工具,能够帮助大家轻松地对Apk中的so做一个粗略的分析呢?


上述这些专业、繁杂、重复的工作,是否可以通过大语言模型+搜索引擎来完成呢?


基于这个想法,可以将上述任务拆解成几个关键步骤:

  1. 从Apk中提取so文件,通过web搜索so文件的名字,从而确定起供应商和基本功能。比如:libBugly_Native.so,很显然就是腾讯的Bugly,也就是一款收集Crash信息的产品。

  2. 提取so中的字符串和函数名,通过LLM来分析这些字符串/函数名的意义,从而推断这个so的基本功能。(不考虑混淆的情况。换个角度,混淆的函数名也能说明这个so可能是某个安全模块)

  3. 提取so中的text section,选择一部分进行反汇编,然后把汇编代码/伪代码交给LLM进行分析。从中也可以提取一些特征,比如是否混淆或者hook的特征。

  4. 输出分析报告,说明这个Apk集成了哪些供应商的哪些产品。


```

$ python binsight.py /path/to/some.apk --model openai/Qwen/Qwen3-32B --api_base "f96K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6S2M7r3W2Q4x3X3g2K6K9h3I4A6j5$3!0F1k6X3I4G2N6#2)9J5k6h3y4F1i4K6u0r3N6U0q4Q4x3U0k6I4N6h3!0@1i4K6y4n7i4K6t1$3L8X3u0K6M7q4)9K6b7R3`.`. --api_key "sk-xxx"


==================================================

Starting analysis for: some.apk

==================================================


--- Comprehensive Analysis (Disassembly + LLM) ---


[*] Processing: libflutter.so (from lib/arm64-v8a/libflutter.so)

  -> Analyzing with litellm (model: openai/Qwen/Qwen3-32B, attempt: 1/3)...

  [+] LLM analysis result: Intent: Google Flutter UI Framework | Confidence: High | Evidence: Known library name confirmed by numerous 'flutter::' and 'dart::' function names and strings like 'Flutter Engine'.


------------------------------------

           Final Analysis Summary for some.apk

------------------------------------


Analysis complete! Found 1 SDKs or code intents:


- Intent Analysis - libflutter.so

  Intent: Google Flutter UI Framework | Confidence: High | Evidence: Known library name confirmed by numerous 'flutter::' and 'dart::' function names and strings like 'Flutter Engine'.

```


我开源了这个小项目,希望能对大家有帮助。e76K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6S2M7X3N6#2M7#2)9J5k6s2y4A6k6$3S2@1i4K6u0r3b7X3W2F1f1$3W2Y4K9s2b7`.



[培训]Windows内核深度攻防:从Hook技术到Rootkit实战!

最后于 2025-9-10 10:15 被Alioth编辑 ,原因:
收藏
免费 1
支持
分享
最新回复 (4)
雪    币: 1506
活跃值: (3878)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
2
可以的老铁
2025-9-10 09:37
0
雪    币: 130
活跃值: (382)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
谢谢,老铁!
2025-9-10 10:15
0
雪    币: 54
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
4
你这些用ida mcp即可
2025-9-10 23:52
0
雪    币: 2549
活跃值: (130)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
2025-9-22 02:27
0
游客
登录 | 注册 方可回帖
返回