文章总结: 本文详细分析了Android平台上一款使用AutoJS开发的卡密软件的启动脚本。作者通过逆向工程发现该应用未加固,主要逻辑位于assets/project/main.js文件中,但该文件已加密。幸运的是,作者找到了未加密的备份文件main.js.bak,通过分析其卡密验证逻辑,成功修改验证函数返回值为true,绕过了卡密验证机制。最后重新打包应用,实现了无需卡密即可启动脚本的功能。
综合评分: null
文章分类: 逆向分析,移动安全,漏洞分析,二进制安全,渗透测试
【Android逆向】autojs卡密软件启动脚本分析
原创
挖个洞先
挖个洞先
2025年11月23日 11:49
“ 如果再看你一眼是否还会有感觉。——《素颜》 ”
01
—
操作步骤
1、初始页面,启动脚本按钮不可用
2、点击试用,启动脚本按钮可用
3、点击启动脚本按钮效果,看起来像autojs
4、adb自动连接夜神模拟器
$adb = "adb"$ports = Get-NetTCPConnection -LocalAddress 127.0.0.1 -State Listen | Where-Object { $_.LocalPort -ge 62000 -and $_.LocalPort -le 63000 } | Select-Object -ExpandProperty LocalPort -Uniqueforeach ($p in $ports) { & $adb connect "127.0.0.1:$p" }& $adb devices
5、adb dump当前app页面,查看按钮id
adb shell uiautomator dump /sdcard/view.xmladb pull /sdcard/view.xml .
6、格式化view.xml 后查看没有发现Button,TextView等Android原生控件
7、mt管理器查看未加固
8、前面判断为autojs,主要逻辑一般在assets/project/main.js
9、查看main.js加密了
10、发现main.js.bak没有加密
11、分析main.js.bak,第一个参数如果是true就判断为已经激活卡密登录成功
12、搜索updateLoginStatus全局改成true
13、直接重命名main.js.bak为main.js,重新打包自动签名
14、点击启动脚本按钮,启动成功
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:挖个洞先 挖个洞先《【Android逆向】autojs卡密软件启动脚本分析》