◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
专用工具:burpsuite,xposed,frida,儿童智能手表
可是在我们根据手机验证码登陆的时候会一直卡住登陆不上,当关掉代理后取得成功登陆,猜测这儿毫无疑问有什么问题。
这儿彼此之间点开过记步,能够见到表明数据连接出现异常,猜测这儿开展代理的安全防护等维护。大家应用xposed的JustTrustMe控制模块取得成功提升SSL Pinning!
这时候能够见到大家早已取得成功爬取到总流量!
根据上边的剖析大家早已能够取得成功爬取数据文件了,可是根据剖析request和response,我们可以看得出报文格式及逆向行驶了数据加密
这儿大家猜测应用了AES对报文格式开展了数据加密,能够应用hook的方法得到AES加解密应用的key和iv。大家这儿应用frida hook架构进行对java中aes加解密的涵数的hook,得到加解密应用的key和iv。frida的hook编码以下:
else:
else:
var secret_key_spec = Java.use("javax.crypto.spec.SecretKeySpec");
secret_key_spec.$init.overload("[B", "java.lang.String").implementation = function (x, y){
}
var iv_parameter_spec = Java.use("javax.crypto.spec.IvParameterSpec");
iv_parameter_spec.$init.overload("[B").implementation = function (x){
}
});
"""
giao= frida.get_usb_device().attach('com.qihoo360.antilostwatch') # 这儿attach要开展hook的运用
这时候大家运作运用就可以hook出当今插口的aes的iv和key
能够见到大家每一次要求都能得到相匹配的key和iv
下面大家应用aes有关解密脚本制作开展解密,解密脚本制作以下:
AES_SECRET_KEY = '408584e272555742c389c757adf88c83' #这里16|24|32字符
pad = lambda s: s (BS - len(s) % BS) * chr(BS - len(s) % BS)
cryptor = AES.new(self.key.encode("utf8"), self.mode, IV.encode("utf8"))
self.ciphertext = cryptor.encrypt(bytes(pad(text), encoding="utf8"))
cryptor = AES.new(self.key.encode("utf8"), self.mode, IV.encode("utf8"))
e = "cvlbCumK/20nwRugGDDRaNI5TbdViSbx7ap47BdfeYAAYxsIMcPNAYF8FkJvsHG04a7DlWaqar6Y2wV5enxlFOonM5JHRZMRAFSMkD7K 4FAIRK7VO7RRSCOa b3cPG2izB/5AS2jqEuZht1Zcbh0I5FR0U8WuOHCYxps3eg8米EUTRN72bbJqys26mg5zFroVyBYPeZjKUmgvSx9I4tZqKiBywnsY/canmlyuYw8A5k="
decrypt data: ts=1608172163734&m2=4f557a3814d4d5b709b2e6786dc5596d&operation=install&device_id=1c6be70cfe6d089b&seed=2073b5a480e26ab18be355a7a371fffc&package=cn.kuwo.wearkwbook
0431试验室建立于2019年,是吉林信睿互联网网络信息安全有限责任公司的关键安全性科学研究精英团队,致力于物联网技术和互联网技术的最前沿安全性防御技术性科学研究,有着丰富多彩系统漏洞发掘工作经验,曾向小米手机、百度搜索等中国大型企业数次递交网络安全问题计划方案,有着业内出色的安全性剖析精英团队,核心人物均有很多年从业安全性科学研究的工作经验。自始至终以“技术革新发展趋势”为关键,以“维护保养网络信息安全”为总体目标,持续提升专业技术人员功底,讲解最前沿安全生产技术,抵挡大量的不明网络信息安全威协。
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。