Akamai 加密分析(二)

admin 2024年4月17日19:37:11评论6 views字数 1351阅读4分30秒阅读模式

学校老师要求必须回学校写论文咯,正好今天刚把58位数组的纯算搞定,akamai算是结束了,风控就不是我这个牛马该考虑的东西了,明天返校的车票

正文

    上一篇文章把 akamai 的最后加密部分说了,基本上没啥坑,而且比较好验证,只要固定随机数和时间戳就行

    这篇就来说一下58位数组

    akamai 验证流程会走三次验证请求,而这三次请求的加密部分是一样的,就是上篇文章的部分,主要变化点在于58位数组,所以这里针对三次请求的58位数组来说

    这三次请求的数组拼接点都是同一个地方,只是数组成员的变量值发生了变化

    因此可以在拼接点打一个日志点(建议不打断点,不用本地替换的js),用真实请求走一遍

Akamai 加密分析(二)

我这里顺便也打了几个变量的值

Akamai 加密分析(二)

   全部存到本地后,就可以去对比,哪些短参数发生了变化(例如:-100等常数)

    长参数的值不管变不变都去把算法搞出来

注意点:

1.在请求过程中,鼠标要在页面晃晃

我就踩过这个坑,由于是双屏幕,鼠标一直在调试界面的那个屏幕上,鼠标就没去网页上动过,然后发现前两次请求都没有鼠标轨迹,我还以为是第三次才有(因为其它参数有这个规律),结果第三次到那个地方发现也没有鼠标轨迹!然后才反应过来是刷新的时候鼠标要在页面动

2.打日志注意
  • 不要用本地替换的文件,用正常的请求走(自己再定位一下就是了)

  • 不要打断点断住,直接正常地走整个流程,单纯留日志点(观察时间规律,加密里要用)

  • 建议多记录几遍,三次请求的58位数组(不同浏览器,不同电脑也记录一下)

3.写代码

58数组里基本都是检测,Node检测,dom、Bom检测,memory,canvas,节点属性(这个我也不知道为啥,但是不同浏览器他就是不一样,离谱)等等

然后就是调试,用AST还原会省很多麻烦,不会也没事,我就是硬顶着混淆看的(所以别问我要还原代码了,我真没有),每天复制粘贴到手嘎嘎抽筋

  没有那个技术,就多花时间硬刚咯,有那个技术的话,那你发我一份还原代码

我这边是直接三次请求分别写了三个方法去调用,虽然他们的流程、参数、加密都一致,但是我很不建议都写在一个函数里,然后三次请求都掉这个方法

因为有很多参数不同请求次数的值不一样,变量的值也会变化,做到完全还原整合到一起,那可太累了,我懒

所以这次按三次请求分开写

第一次请求

第一次请求的58数组指纹是最少的,基本都是检测环境,判断有无

Akamai 加密分析(二)

直接上重点!

第2位对 user-agent 、jsurl等进行了加密

第26位对时间戳,运行时间差和指纹数组等

第54位加密的还是user-agent

然后直接加密就完了

第二次请求

第二次请求在第一次请求的基础上,增加了几个参数(上下两个图可以自行对照一下),有几个常数值变成了加密值

Akamai 加密分析(二)

直接上重点!

Akamai 加密分析(二)

就这些指纹

第三次请求

第三次请求在第二次请求的基础上,又增加了几个参数(同样自行对照)

Akamai 加密分析(二)

其实加密值还是那些,这几个加密值就是又又又又拿canvas画图了,然后加上了style,以及一些检测

指纹加密

建议把几个指纹全部搞成纯算,然后在其他浏览器能直接运行出指纹结果,就可以直接采集真实指纹,然后放回代码(听说假的过不去

Akamai 加密分析(二)

具体代码就不放了,我怕领导给我劈了

时间紧张,就这样吧,收拾东西滚回学校写论文了

原文始发于微信公众号(逆向成长日记):Akamai 加密分析(二)

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年4月17日19:37:11
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   Akamai 加密分析(二)https://cn-sec.com/archives/2665488.html

发表评论

匿名网友 填写信息