【移动安全】移动应用加密协议逆向分析成功
1、相关工具:
apktoolkitv2.1,Jeb破解版本 Apk上上签 vstart软件管理工具
2、分析过程:
确认数据传输流程:利用工具反编译apk文件,之后通过jeb软件找到疑似算法位置通过日志打印方式查看确认是否为用户名和密码的处理流程,确认完毕后,生成新的dex文件后放到apk中,之后利用签名工具签名进行验证。
找到加密算法:通过上述确认后找到数据的传输发送流程,最后确认加密算法所在位置,最终分析输出解密算法,还原加密数据流量。
3、遇到问题:
a、jeb与当前环境变量中的java版本1.7不符,修改如下脚本中的jdk版本,目前计算机中既有jdk7也有jdk8
if defined JAVA_HOME (set base="C:\Program Files\Java\jdk1.8.0_40\bin") else (set base="%SystemRoot%\System32")
set JAVA=%base%\java.exe
b、反编译重建时有时使用apk会失败,可以使用对dex文件进行处理后再打包签名。
命令:向手机中安装apk文件
c、安装文件提示已经存在使用-r选项覆盖
adb install -r D:\software\android\apktoolkit\GroupPurchase_bak\
GroupPurchase_bak_Signed.apk
4、分析结果:
加密数据包如下:
98d7f633be8053e47b72539fe80bfeb9d4e29d4cb0bae7aa92452a616e9de41484cb2cceacd1a2392570823b6acd3aa1706e0d23b5973fcf8e37041c1e676d8aa3db092a3db821e58cb24524781604d76a16055c12d190f19aed3fa32b4c281507fe6b82bbf6d25a68185eba02384b5501a8dd73ca69d34948d265cfcf63af05c3d6c415b01dea1c9df8729ffd9b7a7a10d0e955f0e1454713b1a7818f0b3b4984c2a3d0afd88bab3ffe59ba725050e41b276b9230b8c6f7d71dc9d0631ad5ab6e6c569bcbce9545b0b4e6b2ba9d4a0d67d1145abaefce9b09cf7343a4c300ebb8aca127ecc018e4445bde58a55a1fcb5591a39798f26a54b72d6d09892963d8ebd5ed1ad8c3bab6182c27c0d5da4323
解密后数据如下:
{"sign":"aa7f6499aece7222247401889ed44c87","time":"1427187051","params":{"expire":1,"username":"saaaaaaaa","pwd":"adbc91a43e988a3b5b745b8529a90b61","baidu_user_id":"606964924566252670","baidu_channel_id":"3982982813713319253","recommend":1,"check_code":"0","discount":1}}
5、详细分析过程:
未完待续
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。