QQ安全中心多开记
前言
因为有N多QQ小号需要绑定QQ安全中心, 然而一个APP只能登录三个账号, 需要多开APP绑定多个账号。
百度搜了N多个版本,不是崩溃就是登录校验失败(甚至还有盗号风险),此篇文章讲解一下如何自己制作多开APP以及如何绕过QQ安全中心的登录校验。
准备工具
AndroidKiller, apktool,
AndroidStudio, smalidea
反编译
- 由于AndroidKiller内部的apktool版本过低, 需要手动替换为高版本
- 将下载的新版本apktool解压到
AndroidKiller\bin\apktool\apktool\apktool.jar
- 修改AndroidKiller\bin\apktool\apktool.ini
[apktool]
count=1
name0=Android Killer Default APKTOOL
path0=apktool.jar
param0=
- 修改AndroidKiller\bin\apktool\apktool.bat
@echo off
if "%PATH_BASE%" == "" set PATH_BASE=%PATH%
set PATH=%CD%;%PATH_BASE%;
java -jar "%~dp0\apktool\apktool.jar" %*
替换完成后, 使用AndroidKiller打开QQ安全中心
替换APP包名, 方法两个
a) 修改AndroidMainifest.xml, 然后修改全部资源引用中的包名, 修改文件路径...
b) apktool支持aapt的"--rename-manifest-package"选项, 只需要修改apktool.yml里面的"renameManifestPackage", 这里将包名改成 com.tencent.token1
到了这一步就可以打包编译app了, 但是打包后的App并不能绑定QQ,不管如何尝试登录,总会弹出“登录失败,请重新登录(178)”
定位登录源码
打开登录页面, 通过字符串搜索定位源码位置
具体流程为:
string.xml -> choose_way_add_account.xml -> WtLoginAccountInput.smalistring.xml
choose_way_add_account.xml
WtLoginAccountInput.smali
追踪登录过程
在上一步的WtLoginAccountInput.smali中, 可以点击菜单栏中查看java源码, 进入java源码页面, 可以看到点击了登录按钮之后使用的是agw这个类去处理的, 进一步跟入
这个类的Onclick方法中调用了 t.a().a(), 由于类名经过了大量混淆, 这里可以使用Android远程调试判断具体步入了哪一个方法
过登录校验
ojbk