吾爱破解 - LCG - LSG |安卓破解|病毒分析|破解软件|www.40881110.com

 找回密码
 注册[Register]

QQ登录

只需一步£¬快速开始

查看: 12041|回复: 115
上一主题 下一主题

[iOS 原创] ios版抖音协议加密算法及源码

    [复制链接]
跳转到指定楼层
楼主
usualwyy 发表于 2019-4-7 18:37 回帖奖励
本帖最后由 usualwyy 于 2019-4-7 21:50 编辑

前两年的工作中涉及到抖音协议的分析部分£¬分析了两个跟加密有关的接口£¬项目结束了£¬现拿出来与大家分享
因为项目结束£¬最新版本是否有改动不清楚了£¬当时测试可用的抖音版本£ºIOS 1.7.8-3.8.0


写的慢£¬先把标题写好£¬一个章节一个章节更新£¬细节慢慢完善£¬最后会把所有源码传到github£¬分析过程不知道有没有人想看£¬如果想看的话再另开一文写

1.设备信息生成方?#31119;?/font>
设备信息中有几个重点:
(1) carrier¡¢display_name字段£º这个字段不是utf-8编码£¬是GBK编码£¬要做编码转换
(2) Idfa¡¢VendorID字段£º标准UUID算法生成即可
(3) Openudid£º这个地方有点头疼£¬根据所有公开资料£¬包括抖音自己的代码逆向£¬都可以看出来?#23548;?#19978;是随机生成的£¬但是随机的没法通过服务器校验£¬最后使用了真Openudid替换掉中间16?#32440;?#30340;方法£¬服务器通过率在60%左右


2./service/2/device_register/接口加密算法£º
device_register接口中post包体是加密的£¬算法?#23548;?#19978;是AES£¬但是不知道为何标准AES实现跑出来的结果不对£¬不过没关系£¬直接从IDA伪代码里扒出来即可£¬中间有5处要修复xray的寄存器解析错误£¬我写的代码中已经修复过¡£


3.MAS¡¢AS¡¢TS算法£º
这部分最头疼£¬花了很多时间一直想脱机跑£¬首先伪代码难以修复£¬因为有两个问题没法解决£¬1.ios的native API调用£¨例如线程锁£© 2.类的上下?#25343;?#27861;初始化£¬然后Unicorn模拟汇编代码?#24425;?#19968;样的问题£¬没法解决native API调用£¬最后采用了Hook抖音app的encryptDataWithTimeStamp:parameters函数£¬然后在Hook代码中阻塞线程£¬跑个webserver£¬让抖音app自己初始化类并且准备上下文£¬然后webserver负责处理加解密£¬并且返回MAS AS TS


源码项目地?#32602;?br /> https://github.com/usualwyy/aweme-algorithm
源码结构简单说明£º
1.API是所有加解密的接口£¬负责给其他需要抖音加解密的?#28404;?#25552;供加解密服务£¬用golang+C混编实现£¬device_reg的加解密是C写的库文件£¬通过调用桥调用so£¬下个部分会说明¡£
2.aweme-aes是device_reg的加解密实现£¬纯C代码£¬编译出来是so库£¬供上面上面的API调用¡£
3.ios_aweme_lib的功能是golang->抖音app2lib的桥接£¬调用流程是API ->ios_aweme_lib ->抖音lib£¬因为早期的方案?#21069;?#25238;音app2lib£¬然后通过golang写的webserver£¨交叉编译到ios£©调用这个桥接库£¬然后调用抖音app£¬实现encryptDataWithTimeStamp£¬后来直接采用阻塞app跑webserver的方案后废弃了¡£
4.ios_webserver£¬这是Hook抖音app并阻塞encryptDataWithTimeStamp然后跑webserver的实现£¬框架是monkeydev£¬框架代码没上传£¬github上有搜monkeydev就行¡£


所有代码?#21152;行?#21487;用£¬我删掉了部分敏?#26032;·¾丁?#20010;人信息¡¢无关备注£¬如果编译不过£¬注意改调用路径
授权协议£º只允许研究¡¢学习目的的分享¡¢使用¡¢修改£¬不允许任何商业用?#23613;?#36716;载请注明出处£¬?#34892;»¡?/font>

免费评分

参与人数 69吾爱币 +64 热心值 +61 收起 理由
旧年白白白 + 1 + 1 我很赞同£¡
bricher9988 + 1 + 1 我很赞同£¡
小Q主人 + 1 + 1 谢谢@Thanks£¡
longyin + 1 + 1 用心讨论£¬?#19981;?#25552;升£¡
Anonymous丶X + 1 + 1 鼓励转贴优秀软件安全工具和文档£¡
DSKI + 1 谢谢@Thanks£¡
戒?#35780;?#30333; + 1 + 1 我很赞同£¡
78k + 1 六批£¡£¡£¡£¡£¡
E147852 + 1 + 1 热心回复£¡
睡衣狗 + 1 + 1 热心回复£¡
xiexie + 1 用心讨论£¬?#19981;?#25552;升£¡
kaiserFeng + 1 我很赞同£¡
visily + 1 + 1 谢谢@Thanks£¡
小小小英雄啦 + 1 + 1 谢谢@Thanks£¡
hij554477862 + 1 + 1 谢谢@Thanks£¡
新欲旧欢 + 1 欢迎分析讨论交流£¬吾爱破解论坛有你更精彩£¡
倾诉 + 1 + 1 谢谢@Thanks£¡
zjkkg1 + 1 + 1 谢谢@Thanks£¡
631894213 + 1 热心回复£¡
ByteCoder + 1 OMG£¬ 我司的device_register接口都被你发现了£¡£¡
ark.l + 1 找了很久了£¬谢谢楼主啦
qq314384 + 1 + 1 我很赞同£¡
bb8820 + 1 我很赞同£¡
majia4473970839 + 1 我很赞同£¡
wentwhite + 1 + 1 ?#34892;?#24744;的宝贵建议£¬我们会努力争取做得更好£¡
Colse + 1 + 1 我很赞同£¡
WSNBB + 1 + 1 看不懂£¬但还是给你加加分
ck07880506 + 1 + 1 我很赞同£¡
panqiqi + 1 不错
?#22791;?#25289; + 1 + 1 用心讨论£¬?#19981;?#25552;升£¡
tigerliu + 1 + 1 ?#34892;?#21457;布原创作?#32602;?#21566;爱破解论坛因你更精彩£¡
lm339lm + 1 + 1 学习了£¡£¡£¡£¡
YunsChou + 1 + 1 谢谢@Thanks£¡
niaiwoxiangshei + 1 + 1 热心回复£¡
第七封信 + 1 + 1 我很赞同£¡
耳食之辈 + 1 用心讨论£¬?#19981;?#25552;升£¡
laughingsir38 + 1 + 1 热心回复£¡
disdet + 1 鼓励转贴优秀软件安全工具和文档£¡
二师兄 + 1 + 1 ++++++++++
dreamer2020 + 1 + 1 谢谢@Thanks£¡
佳友达灵 + 1 欢迎分析讨论交流£¬吾爱破解论坛有你更精彩£¡
waka?#24049;?#23376; + 1 + 1 我很赞同£¡
白日梦梦妖 + 1 谢谢@Thanks£¡
johnzuo + 1 + 1 用心讨论£¬?#19981;?#25552;升£¡
Mr.番茄炒蛋 + 1 + 1 用心讨论£¬?#19981;?#25552;升£¡
VikyPluto + 1 + 1 谢谢@Thanks£¡
987002995 + 1 + 1 用心讨论£¬?#19981;?#25552;升£¡
sky0458123 + 1 + 1 我很赞同£¡
ggshihai + 1 + 1 热心回复£¡
zycode + 1 + 1 谢谢@Thanks£¡
午后的草莓树 + 1 + 1 用心讨论£¬?#19981;?#25552;升£¡
asewq916 + 1 + 1 谢谢@Thanks£¡
¡¸青¡¹ + 1 + 1 流批
LLingding + 1 + 1 谢谢@Thanks£¡
吱吱克里斯 + 1 + 1 热心回复£¡
xiaomi + 1 + 1 蝉蝉可以啊£¡
laodan + 2 + 1 鼓励转贴优秀软件安全工具和文档£¡
Anonymous¡¢ + 2 + 1 非常?#34892;»£?#22914;果能把过程贴出来就更好了
C60 + 1 + 1 谢谢@Thanks£¡
hxnm + 1 + 1 热心回复£¡
WarnSake + 1 + 1 热心回复£¡
a半岁音书 + 1 + 1 热心回复£¡
椎名牧 + 1 + 1 用心讨论£¬?#19981;?#25552;升£¡
?#20808;?/a> + 1 + 1 谢谢@Thanks£¡
koreancoco + 1 + 1 我很赞同£¡
zhangziyu + 1 + 1 我很赞同£¡
空山谷雨 + 1 + 1 我很赞同£¡
Ernest1 + 1 + 1 热心回复£¡
bigboss + 1 + 1 鼓励转贴优秀软件安全工具和文档£¡

查看全部评分

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

推荐
 楼主| usualwyy 发表于 2019-4-7 22:07 |楼主
本帖最后由 usualwyy 于 2019-4-7 22:08 编辑
hackest 发表于 2019-4-7 22:03
https://github.com/yuanchao1893/douyin_encryption/issues/2    求解Device_id 这个?#38382;?#26159;怎么获取的
ht ...

device_id是在device_reg接口服务器返回的£¬这是新硬件信息注册的第一步
你的git项目我看了一下£¬是android版协议£¬我这是ios版协议£¬差别非常大£¬不能混用
推荐
iamalive2008 发表于 2019-5-7 17:54
usualwyy 发表于 2019-4-7 22:07
device_id是在device_reg接口服务器返回的£¬这是新硬件信息注册的第一步
你的git项目我看了一下£¬是andr ...

你好£¬请问有办法破解douyin的?#25509;?#26816;测吗£¿?#25509;?#20043;后使用抖音£¬没法登陆了£¬发送验证码一直提示操作频繁£¿
4#
bigboss 发表于 2019-4-7 18:49
5#
ZXT123 发表于 2019-4-7 18:54
厉害66666
6#
沉迷学习 发表于 2019-4-7 19:19
快点更新
7#
 楼主| usualwyy 发表于 2019-4-7 19:22 |楼主

在把源码整理上传github蛤£¬别急
8#
zhaolisheng 发表于 2019-4-7 19:49
楼主真厉害
9#
空山谷雨 发表于 2019-4-7 19:56
楼主 £¬安卓的有吗
10#
 楼主| usualwyy 发表于 2019-4-7 20:15 |楼主
空山谷雨 发表于 2019-4-7 19:56
楼主 £¬安卓的有吗

安卓版的很多人分享过啦£¬百度能搜到
11#
zhangziyu 发表于 2019-4-7 20:20
58同城有搞过没
12#
52pojiewang52 发表于 2019-4-7 20:28
正真的好帖子
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则 警告£º禁止回复与主题无关内容£¬违者重罚£¡

快速回复 收藏帖子 返回列表 搜索

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

GMT+8, 2019-5-22 10:09

Powered by Discuz!

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表
Çò̽ÍøÀºÇòÖ¸Êý