首页
社区
课程
招聘
[原创]关于某某精灵 AutoJs 图色类脚本如何分析+Dump源码
2022-11-10 01:46 22567

[原创]关于某某精灵 AutoJs 图色类脚本如何分析+Dump源码

2022-11-10 01:46
22567

前言
在学习的过程中,遇到的问题在论坛没有找到相关的解决方案,目前已解决,发帖的目的是为了分享给想要从事黑白鉴定工作且没有分析过图色类脚本软件的网友,羊毛党经常会使用这种工具来作案,由于本人刚刚入门在写贴的过程中可能会存在不正确的地方,希望各位网友多多包涵

 

使用到的工具
GDA免费版
Notepad++
Auto.js脚本提取器

 

正文
如何去分析图色类的脚本,拿到一个图色类软件的样本,拖到查壳工具一看没壳开心的一批,于是拖到反编译工具里面看发现全是跟脚本无关的代码

为什么会是这样呢,有基础都知道APK其实就是个压缩包,真正的Java代码会被编译后打包为Dex文件,Dex文件是由Dalvik或者ART虚拟机解释执行,我们都知道图色类脚本语言一般都是使用的lua或者JavaScript是不能通过Dalvik或者ART虚拟机解释执行的,它们分别是通过JavaScript目前使用两个JavaScript引擎解释执行 分别是:Rhino和Chrome,那么lua自然就是Lua解释器解释执行的,想要让安卓应用程序去执行lua代码或者JavaScript就得需要解释器去解释执行,那么我们看到的反编译后的代码可能就是解释器的代码,真正的脚本代码一般是会被保存在资源里面的,我们去翻一下APK目录

翻了一下APK包里面的目录猜测assets/project/main.js就是真正的脚本代码很明显是被加密的 接下来的问题就是如何去解密

 

解密思路
既然是使用的lua或JavaScript语言作为脚本语言那么就得需要相关的解释器去解释执行,解释器只认识它自己规定的语法肯定不认识加密的代码啊,也就是说它想要解释器执行就得把被加密的代码先还原为真正的代码再执行,一般解释器加载代码的函数都是loadluaFile(string ScriptPath),loadjsFile(string ScriptPath)
既然是ScriptPath,会不会可能存在运行时真正代码文件暴露的问题,就算不存在这个问题那么我们可以尝试去找到Load相关函数Hook把源码dump出来

 

加密的强度就相当于一代壳和二代壳的强度,知道一代壳二代壳的网友应该也都知道这种壳是很容易写出通用的脱壳工具的,我这里找到了一个Autojs的通用解密工具随后会传到附件,需要Xposed来运行

 

 

像lua ScriptPath由于没有中间层的代码dump出来的直接就是源代码注释还在,图中这是Autojs的,按键精灵代码语言是mq其实就是简化版的vb,但是在编译阶段会被转换为lua代码,也就是按键精灵dump出来的是lua不是源代码mq,其实有lua代码也就相当于源码了嘛

 

如果在工作当中经常遇到图色脚本的样本要分析可以去看一下虚拟机的代码,或者去看一下安卓应用程序如何加载执行像lua这一类的脚本的例子源码,万一没有工具可用就得自己去研究如何Dump


[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

最后于 2022-11-12 16:53 被旺仔_小可爱编辑 ,原因:
上传的附件:
收藏
点赞6
打赏
分享
最新回复 (11)
雪    币: 500
活跃值: (865)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
sky灬饮冰 2022-11-10 03:14
2
0
雪    币: 8887
活跃值: (3334)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
chengdrgon 2022-11-10 10:56
3
0
感谢分享
雪    币: 690
活跃值: (187)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
Azhan_ 2022-11-10 15:21
4
0
感谢分享
雪    币: 0
活跃值: (482)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wx_沉默的逗比 2022-11-11 17:00
5
0
雪    币: 1723
活跃值: (2437)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
NPC2000 2022-11-12 10:53
6
0
大佬,不好意思,想问一下,我用工具dump出脚本后,打开是乱码,是中间还有其他步骤吗?样本是文件中的打招呼样本
雪    币: 27
活跃值: (801)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
amwpecel 2022-11-12 13:03
7
0
按键精灵dump点在哪呀 大佬 autojs很好dump 但是很多都有js加密了
雪    币: 1470
活跃值: (2463)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
旺仔_小可爱 2022-11-12 14:21
8
0

dump出来后在代码里面找一个.txt结尾的url 然后去浏览器打开就是源码

最后于 2022-11-12 14:29 被旺仔_小可爱编辑 ,原因:
雪    币: 1470
活跃值: (2463)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
旺仔_小可爱 2022-11-12 14:21
9
1
NPC2000 大佬,不好意思,想问一下,我用工具dump出脚本后,打开是乱码,是中间还有其他步骤吗?样本是文件中的打招呼样本
dump出来后在代码里面找一个.txt结尾的url 然后去百度打开就是源码
雪    币: 1723
活跃值: (2437)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
NPC2000 2022-11-13 08:29
10
0
旺仔_小可爱 dump出来后在代码里面找一个.txt结尾的url 然后去百度打开就是源码
谢谢大佬
雪    币: 47
活跃值: (37)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
chinakafei 2024-2-21 19:54
11
0
这个只能解密当前app,其他app不通用吧,这是最新的快照加密!
雪    币: 62
活跃值: (545)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
万里星河 2024-2-27 22:28
12
0
支持一下
游客
登录 | 注册 方可回帖
返回