第一天
1.环境初步搭建
SmartSniff
fiddler
ddms
AntiDroid
Android Killer
百度方法
http://jingyan.baidu.com/article/f96699bb8b38e0894e3c1bef.html
3个环境变量
CLASSPATH----%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
JAVA_HOME----C:\Program Files\Java\jdk1.7.0_71
Path----%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin
javac不是内部或外部命令”时怎么办?
用户变量新建path,添加C:\Program Files\Java\jdk1.7.0_71\bin
2.模拟器介绍
海马玩:1个引擎
靠谱助手:4个引擎,一般只用内部引擎与极速引擎
内部引擎:没有wifi不能设置代理
极速引擎:可以设置代理
第2天
1.工具介绍
简单的app:先用Antidroid对APP反编译、转换成jar,然后通过jd-gui搜索关键字
HTTPS协议 模拟器需要安装证书,如果fiddler抓不到,可以用SmartSniff
查找加密方法:先用Antidroid对APP反编译,转换成jar,然后用Android Killer查找反编译的包文件,最后根据包文件用jd-gui搜索jar关键字
关于Apktool版本问题
群文件上传两个Apktool 一个是RC3版本的 一个是RC4版本的!有些反编译失败是由于APKTOOL版本太低导致的!大家可以替换下!
替换原来Android KIler工具目录下的BIn\apktool\apktool_2.0.0rc4.jar
注入方法
invoke-static {vx}, Lcrack;->log(Ljava/lang/String;)V
vx 改成对应的变量!
最新版crack.smali文件
文件新增加一个字节集转到文本的函数 convertByteArrayToString
调用方法
invoke-static {vx}, Lcrack;->convertByteArrayToString([B)Ljava/lang/String;
需注意的问题,转换之后的结果是类似:0x1A
0x是无用的 后面是16进制文本
需要转换成文本型!
20150606最新版crack.smali
增加:invoke-static {VX}, Lcrack;->bytesToHexString([B)Ljava/lang/String;
传入字节集数组
比如:tianyikefu1@lx100$#365#$
输出的文本是:7469616e79696b65667531406c7831303024233336352324
//字符串排序算法JS版 function getString(str){ var array; array = str.split("&"); array.sort(); return array.join(""); }
//JS版字符串反转 function fanzhuan(str){ var str2=""; for(var i=0;i<str.length;i++){ str2+=str.charAt(str.length-i-1); } return str2; } //调用方法 使用JS调试工具 //fanzhuan("15874791024") //结果:42019747851