吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 12032|回复: 52
收起左侧

[Android 原创] 合富APP加密算法分析

  [复制链接]
亡羊 发表于 2017-3-15 23:30
才来论坛不久,也没啥贡献,就把以前分析的合富app的加密算法整理一下,希望对新手有点帮助,望各位大神勿喷。

合富app登录的数据包是加密的,通过fiddler抓包如下:
[HTML] 纯文本查看 复制代码
GET https://www.hfmoney.com/app/services?OPT=1&_t=2017-03-15+21%3A55%3A24&body=&channelId=&deviceType=1&name=15228092368&pwd=5351A9FF600213484726DD26015C2CA0&userId=&_s=dada859999a0aa578db4b7e504889319 HTTP/1.1


5351A9FF600213484726DD26015C2CA0的原始参数是s11223344

发现pwd和_s是加密的,我们先来分析_s的加密


把合富APP拖入AndroidKiller反编译,打开java源码然后搜索_s
搜索的结果有两处,类FileProvider和类GeneralRestGateway
打开类FileProvider看了下,发现不是
打开类GeneralRestGateway粗略的浏览边代码,里面有_s的赋值处,很快就定位到加密处,代码如下:
_s加密处.png
在这处for循环里,通过一些条件判断,最后调用Encrypt.MD5()来对_s进行加密,
根据以前的经验来看,_s是对参数校验,继续跟进Encrypt.MD5()
_s跟进Md5加密.png
发现就是一个MD5加密,_s的静态分析到这就完了,我们利用ddms调试输出下,
smali的com.shove.security.Encrypt的MD5方法下添加如下代码:
smali中输出_s加密前传递的参数值.png
保存编译,拖入模拟器,登录账号,在ddms输出MD5加密前的参数
_s加密前数据.png
对输出的值进行MD5加密,发现跟抓包的完全符合,至此,_s的参数MD5校验加密分析完毕。

接下来分析pwd密码的加密
打开java源码然后搜索pwd,发现有一个LoginActivity类
我们直接跟进去
pwd加密处.png
localMap.put("pwd", DataHandler.encrypt3DES(str));这句代码的意思是把DataHandler.encrypt3DES(str)的值赋值给pwd


粗略估计DataHandler.encrypt3DES类方法就是对pwd的原始参数进行DES加密,继续跟进DataHandler.encrypt3DES类方法
pwd加密引用自DataHandler.encrypt3DES.png
发现又调用了Encrypt.encrypt3DES()方法,且传递了两个参数,粗略估计是传递密码跟key进行DES加密
搜索KEY_DATA发现在这个类中有赋值,但java源码查看失败,我们直接看smali代码
smali中找到KEY_DATA的值.png
发现KEY_DATA的值为GDgLwwdK270Qj1w4
继续跟进Encrypt.encrypt3DES()方法
调用DES加密处.png
到这发现加密是通过调用Des.encrypt()方法,然后通过Byte.byte2hex()字节集到16进制的转换返回
分析到这静态分析基本完了,我们利用ddms调试输出下
smali的com.shove.security.Encrypt的encrypt3DES方法下添加如下代码:
smali中输出DES加密处传递的参数值.png
保存编译,拖入模拟器,登录账号,在ddms输出值如下:
Des加密参数.png

然后我们直接把它带入des算法中计算,计算如下:
DES加密计算.png
发现跟抓包的结果一样,所以分析的没问题。

帖子中用到的des算法:
链接:http://pan.baidu.com/s/1dEEzhmD 密码:1m5h

免费评分

参与人数 24威望 +1 吾爱币 +31 热心值 +21 收起 理由
无名侠 + 6 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
a3362613 + 1 + 1 谢谢@Thanks!
yaly + 1 谢谢@Thanks!
黑脑 + 1 + 1 热心回复!
K2061707326 + 1 + 1 谢谢@Thanks!
青白Pallor + 1 + 1 用心讨论,共获提升!
文可う润心 + 1 + 1 谢谢@Thanks!
aixnhc + 1 + 1 我很赞同!
wlaren + 1 + 1 谢谢@Thanks!
zhangjianfei + 1 + 1 我很赞同!
qmopl + 1 我很赞同!
ugvnui -1 + 1 用心讨论,共获提升!
caddy + 1 + 1 我很赞同!
baoxia + 1 + 1 已答复!
守护神艾丽莎 + 1 + 1 我很赞同!
hundred + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
Three_fish + 1 + 1 谢谢@Thanks!
阿萨德22 + 1 + 1 我很赞同!
qtfreet00 + 1 + 9 + 1 欢迎新人发技术贴
ZHEyang + 1 + 1 手机号暴露了15228092368
houyuan425 + 1 我很赞同!
yjh_b + 1 我很赞同!
不一样的烽火 + 1 热心回复!
Ayers + 1 + 1 用心讨论,共获提升!

查看全部评分

本帖被以下淘专辑推荐:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| 亡羊 发表于 2017-3-16 11:58

链接:http://pan.baidu.com/s/1gfsqEgr 密码:l48p
 楼主| 亡羊 发表于 2017-3-16 12:00
梦辰 发表于 2017-3-15 23:41
厚道 发表于 2017-3-15 23:44
des算法 是什么?  我是小白...
aa315324324 发表于 2017-3-15 23:56
支持支持!
不一样的烽火 发表于 2017-3-15 23:59
赞一个!
yjh_b 发表于 2017-3-16 00:00
梦辰 发表于 2017-3-15 23:41
刷个活跃度 嘿嘿

好深奥!
setping 发表于 2017-3-16 00:03 来自手机
如此高大的 学习起来
晓安安 发表于 2017-3-16 00:04
活跃一下、 今天跟楼主学了一个
chenjingyes 发表于 2017-3-16 00:11
楼主幸苦了! 支持一下
执手相看泪眼 发表于 2017-3-16 01:33 来自手机
这可以直接弄人免流的后台,我喜欢,顶一个!
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 17:05

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表