快手6.8版本sig3算法破解

文章目录

  • 快手6.8版本sig3算法破解
    • 1、前言
    • 2、sig3定位
      • 1、Jni_Onload 定位doCommandNative函数位置
      • 2、初探sub_c060函数
      • 3、hook sub_3E550函数看结果
      • 4、sub_3E550函数还原
      • 5、sub_3FDA4 算法还原。
      • 6、剩余部分算法还原。
    • 3、算法验证
    • 4、后记

1、前言

​ 最近急性腰间盘突出,520当天晚上被救护车抬去医院,在医院的这几天感慨良多,腰间盘突出是真的折磨。哎,各位大哥长时间坐在电脑旁一定要保持良好的坐姿。快手最新版本的sig3算法变了,故写下这篇文章。

2、sig3定位

1、Jni_Onload 定位doCommandNative函数位置

RegisterNatives函数位于sub_88F4中。

sub_c060为doCommandNative。

2、初探sub_c060函数

起初看到sub_c060函数时头皮发麻,ollvm混淆的太乱太美观,导致ida f5都巨慢,附上美丽的cfg图。

看到这个流程图很多大哥直接劝退,回收站见。但方法总比困难多,我们可以从返回值开始,查找交叉引用,结合frida一步步的确定目标函数。sub_c060->sub_26BB8->sub_3AE54->sub_3AAF8->sub_3F920->sub_3E550

3、hook sub_3E550函数看结果

使用frida hook该函数,结果如下:

抓包的结果如下:

可以看到sub_3E550函数的返回值是sig3算法部分结果,并且该函数调用了两次,第一次是要加密的内容,第二次是一个base64的值。下一步开始还原该算法。

4、sub_3E550函数还原

sub_3e550函数部分片段如下:

点击dword_9e338查看

很明显这是sha256算法的常量表,该函数是sha256的变形。话不多说,开始调试。
用肉丝姐的反调试rom直接附加,成功断下。

开始愉快的trace之旅。

最后根据trace文件成功还原该算法。

除了ida trace之外还可以使用unicorn进行trace,个人认为unicorn trace的结果要比ida trace的结果好分析一些。

5、sub_3FDA4 算法还原。

frida hook sub_3fda4结果如下:

可以看到,经过sha256算法的返回值在经过这个函数,把sub_3FDA4 函数的结果在经过base64之后在进行base64就是sig3算法的部分值。同样,trace之后进行还原。

这两个位置的值,是读取图片的数据之后加密获得的,具体没去跟,因为同一个版本这个值不会变所以dump出数据就行,有兴趣的可以去跟下。至此sig3算法的部分还原完成。

6、剩余部分算法还原。

sig3后面的部分已经还原,但前面部分并没有, 经过一系列的查找,确定算法位置为sub_24404

与当前时间戳异或一个值后进行进行加密。

3、算法验证

直接上图吧

4、后记

快手sig3是3179开头的版本的话算法应该差不多,只是数据改了下,有兴趣的大哥可以去试一下。最近想换工作,如果有大哥公司招人的话麻烦私信下小弟,不甚感激。本来想写的很详细的,但实在是不知从何开始,附件放上trace的文件吧,算法就不放了感兴趣的大哥可以试着还原下。最后说一句,腰间盘突出是真的难受,各位大哥要好好注意身体!!!

快手6.8版本sig3算法破解相关推荐

  1. 快手ulog快手did注册激活,sig3爬虫抓取签名加密算法(太快了休息一下)

    快手多个版本sig3参数逆向分析 目前已更新: 7.2 7.6 7.7版本 我们需要分析的是sig3参数,所以直接在ida中搜索是否有相关的引用,具体细节略过,有不懂的可以加我交流 我们先看一下大概流 ...

  2. 启xin宝app的token算法破解

    启xin宝app的token算法破解--抓包分析篇(一) 转:https://blog.csdn.net/qq_34067821/article/details/100050472 为了提升逆向技术, ...

  3. 快手智能处理与编码算法产品化之路

    视频转码过程中涉及方方面面的视频图像算法,如何将算法有机地结合起来,打造成为行业领先的视频转码算法产品?通过多年的业务场景打磨和积累,快手音视频走出了一条自己的产品化之路.LiveVideoStack ...

  4. 启xin宝app的token算法破解——frida篇(四)

    前两篇文章分析该APP的抓包.的逆向: 启xin宝app的token算法破解--抓包分析篇(一) 启xin宝app的token算法破解--逆向篇(二) 启xin宝app的token算法破解--toke ...

  5. 天眼查sign 算法破解

    天眼查sign 算法破解 最近真的在sign算法破解上一去不复返 前几天看过了企查查的sign破解 今天再看看天眼查的sign算法破解,说的好(zhuang)点(bi)就是破解,不好的就是这是很简单的 ...

  6. 给出TREE_INSERT过程的非递归版本(算法导论第三版12.3-1)

    给出TREE_INSERT过程的非递归版本(算法导论第三版12.3-1) template<typename T> void insert_recursive(BinaryTree< ...

  7. 写出TREE-MINIMUM 和TREE-MAXIMUM的递归版本(算法导论第三版12.2-2)

    写出TREE-MINIMUM 和TREE-MAXIMUM的递归版本(算法导论第三版12.2-2) template<typename T> BinaryTreeNode<T>* ...

  8. 企查查app sign算法破解(完结)

    在经历前两次探索之后,终于可以把所有的加密关键参数搞定了. 企查查app sign算法破解初步探索 企查查app sign算法破解(二) 最后一个参数aXM,这个参数使用的是阿里的聚安全加密,直接看代 ...

  9. 企查查app sign算法破解初步探索

    企查查app sign算法破解初步探索 之前有说过企查查的sign的解密,但这次是企查查app的sign算法破解,目前是初步进程. 目前我们需要做查壳,具体方法可以百度搜索,企查查用的360加固,很简 ...

最新文章

  1. jQuery给input CheckBox的值查询的一致就选中
  2. linux查找技巧: find grep xargs linux系统信息查看大全
  3. [WebGL入门]十二,模型数据和顶点属性
  4. pku 2635 The Embarrassed Cryptographer 数论——素数筛选法+模拟大数除法
  5. 推荐一个一分钟就可以搭建好的静态文件服务器,基于nodejs
  6. android 手机获取公网ip_KSWEB 旧手机搭建网站服务
  7. mysql innodb缓存策略之Buffer Pool
  8. asp.net在IIS7中更改网站的.net framework框架版本
  9. mysql新手常见问题_MySQL数据库入门-新手常见问题答疑
  10. 18. web robot
  11. 关于UIAlertAction如何修改sheet上的字体颜色
  12. 给硬盘分个整数大小的区
  13. cadence17.4 下载安装
  14. 以下选项不是python文本处理方向第三方库_Python程序设计-超星尔雅-学习通-题库零氪...
  15. 索引越界异常Exception java.lang.IndexOutOfBoundsException
  16. mysql 闰年,[MySQL]--gt;查询5天之内过生日的同事中的闰年2月
  17. 电压源 电流源 置零时的作用
  18. 微信域名防封技术,我们应该如何解决屏蔽拦截
  19. 常见的GNU汇编伪指令
  20. 将BPIO解决方案中文档管理解决方案改成了英文版本

热门文章

  1. ARM的异常处理机制
  2. oppoA83怎么升级android版本,OPPO A83系统降级教程_OPPO A83怎么回退到原来旧版本系统...
  3. html桌球渐变色,用HTML 5打造斯诺克桌球俱乐部(2)
  4. android exo解码问题,android – exoplayer-自动更改质量不起作用(hls)
  5. python接口自动化面试题_接口自动化面试题,建议收藏!
  6. mysql的查询每个月的1号_MySql查询当年1-12月数据
  7. Java 静态代理模式_代购
  8. innerHTML与innerText区别
  9. 淘宝/天猫API:item_search_guang-爱逛街
  10. 如何通过request对象获取用户IP地址