某音/TikTok算法分析 X-Gorgon X-Ladon X-Argus XG

1、xg算法

相比于国内的算法,海外版tiktok的xg算法实则大同小异,但是,tiktok的风控措施比某音更早更严,绝大多数接口可以直接通过xg算法进行请求,但是核心接口比如上量、关注等,是必须配合设备注册算法一起使用的。

仔细分析,可以看到xg的加密算法有些奇怪的定义:

比如token的salt:

某音/TikTok算法分析 X-Gorgon X-Ladon X-Argus XG_第1张图片

 这里是xg的核心函数:

某音/TikTok算法分析 X-Gorgon X-Ladon X-Argus XG_第2张图片

 

代码混淆得一塌糊涂啊,最新版的xg加密算法,几乎已经不能通过x-gorgon关键词搜索到了,有兴趣的小伙伴可以尝试某些其他的关键词,给大家提几个点:

一个是两次溢出判断,分别是85和256,另一个是取模运算需要根据长度随时变换

某音/TikTok算法分析 X-Gorgon X-Ladon X-Argus XG_第3张图片

不然你就得慢慢调试了,具体调试和逆向的过程就不一一赘述了,给大家看下最后的结果:

某音/TikTok算法分析 X-Gorgon X-Ladon X-Argus XG_第4张图片

2、设备注册算法

海外版某音tiktok跟国内版某音,注册出来的deviceid和iid还是有区别的,tiktok的deviceid比较规律,从69开头一直到现在的70开头,保持着数值的正序增长,例如:

某音:

 

可谓毫无规律可言

tiktok

是不是很有规律,但是你别以为你可以遍历出来,它的规律有,也没有

该算法的难点在于两个,一个是对post数据的hook,一个是对post数据的加密

(1)hook

 某音/TikTok算法分析 X-Gorgon X-Ladon X-Argus XG_第5张图片

这是加密前的post数据局部,这部分数据在抓包工具是只能看到加密的body的

(2)加密

其逻辑相比于xg算法要简单多,但是他有两组秘钥对,

某音/TikTok算法分析 X-Gorgon X-Ladon X-Argus XG_第6张图片

加密是根据秘钥对进行加密的,这就使得反编译的过程debug特别痛苦。

 

 

你可能感兴趣的:(python)