首页 > 编程语言 >某app最新版 vmp算法分析二

某app最新版 vmp算法分析二

时间:2024-11-18 13:45:22浏览次数:3  
标签:字节 app 算法 时间 随机 随机数 最新版 vmp

第一篇文章看这里,某app最新版 vmp算法分析一,这是第二篇关于赫利俄斯(H)的,拉顿(L)和H是同一个算法,所以L马上要下线了,而且最近看到了r0ysue代发了该公司的该算法的升级迭代招聘要求,80~130W,北深杭,寻思着已经防护的那么好了,还高薪招人,真是不给我们逆向留条活路啊.

不过这个H和L都两三年没变过了,都是hash时间戳(K)和开头的随机数,这应该是校验时间的完整性,防止攻击者通过改时间戳来逃避时间校验.因为正常你请求发过来时差不可能差几个小时,几天这样的,这种肯定就是重放的非正常用户,直接给你拦截掉.因为这个H是好几个月前看的,记得不是很清楚,说个大概逆向思路.

vmp核心还是trace,常用的是frida和unidbg,如果是ios几乎都是frida,首先这个值一直在变,需要把时间戳和随机数固定住,随机数用的是srand,时间戳之前用的是gettimeofday,现在版本是clock_gettime,这两个hook住H和L就是定值了,固定随机值也是很常见的手段,不然结果一直变化很干扰分析.

srand如论是32还是64位都是返回4字节的,如果把结果固定为0x12345678,那么H解base64后前4字节就是78563412,小端序.关键结果来自后面32字节,算法已打码.

 核心需要的就是K和一个0x22长的table,这个table由随机数决定

输入就是hashlib.md5(randomBytes+aid.encode()).hexdigest(),trace文件中有敏感信息就不放出来了,这个算法比较简单,也不更新,直接看trace的文件往上追就可以.怎么看?这也是一个技巧,有单字节的,2字节的,4字节的,8字节的,怎么找上面的末64位, 然后往前推出所有流程?全靠经验,只可意会,都是一步步从中小厂过渡来的,没有固定的方法,总有一个方法可以分析出来,只是时间的问题.该app的国际版也是同一套算法哦!

2022年1月11日电视剧<开端>在腾讯视频独播,开播三天,该剧播放量破亿,完结后,播放量突破12亿,成为开年爆款网剧.内容是讲述了游戏架构师肖鹤云和在校大学生李诗情在遭遇公交车爆炸后“死而复生”,于公交车出事的时间段内不断经历时间循环,努力阻止爆炸、寻找真相的故事.最终男女主经历了数十次循环和折磨才最终找到真相并阻止爆炸.

拿这个类比逆向还原算法,在把所有随机的东西都固定住后(时间戳,随机数,pid等等),这个算法已经在自己可以掌控的范围内,你想对它做什么都行,hook,监控,直到还原出最终的算法,样本都只有一条确切的执行流.这样剩下的就是时间的问题.如果不是vmp还可以借助ida f5的代码加快还原速度,可惜的是大厂的核心算法都是放到vmp里,f5看不到有用的东西.

现在vmp已经恶心到了都是vmp加魔改算法或者自定义算法,更恶心的是安全人员针对上面说的固定随机还原算法也有对抗,直接根据随机的不同走不同的分支,比如设计1000套算法,根据时间戳算出一个值,对应哪个走哪条流程,这样如果要完整还原全部算法工作量直接提升几个数量级,而且还支持一键算法变异,key,iv,table,常量全部给你一键替换,甚至可以做到算法执行流变异,匹配这些特征也是很巨大的工作量.没错就是下一篇的美杜莎(M),可以期待一下.目前弄过的大厂中似乎只有这个样本使用这种随机执行流的,感觉各大厂商马上也要上线了.

提取剧透一下M有4套自写对称加密,16套hash,单独拎出来一套hash都要比H麻烦的多,甚至某5种情况下,执行流可以达到6000多万行汇编,其余11种只有2000多万行...后面的M更精彩

 

这是第一篇有小伙伴的留言,珍爱生命,远离大厂,月薪5k的爬虫让我去对抗一群年薪百万的安全? 

 

标签:字节,app,算法,时间,随机,随机数,最新版,vmp
From: https://blog.csdn.net/xmx_000/article/details/143855292

相关文章

  • uniapp 使用pinpa 持续化更新
    安装依赖npmipinianpmipinia-plugin-persistedstate新建index.ts import{createPinia}from'pinia'import{createPersistedState}from'pinia-plugin-persistedstate'//数据持久化conststore=createPinia()store.use(createP......
  • 最新版本早安早上好精选图片,祝福无声,问候天天
    友谊在快乐中保留,......
  • 《骗子酒吧》最新版 汉化中文 联机手机+PC免费直玩
    这两天的热点游戏,可以去冲一波流量!《骗子酒吧》(Liar’sBar)是一款多人在线游戏,玩家可以在一个阴暗的酒吧环境中进行社交推理和心理博弈。游戏中有两种主要玩法:骗子牌和骗子骰子,撒谎和诈唬是获胜的关键。游戏支持联机游玩,玩家可以与朋友一起在线体验。本来是STEAM上的游戏......
  • 《骗子酒吧》最新版 汉化中文 联机手机+PC免费直玩
    这两天的热点游戏,可以去冲一波流量!《骗子酒吧》(Liar’sBar)是一款多人在线游戏,玩家可以在一个阴暗的酒吧环境中进行社交推理和心理博弈。游戏中有两种主要玩法:骗子牌和骗子骰子,撒谎和诈唬是获胜的关键。游戏支持联机游玩,玩家可以与朋友一起在线体验。本来是STEAM上的游戏......
  • 《骗子酒吧》最新版 汉化中文 联机手机+PC免费直玩
    这两天的热点游戏,可以去冲一波流量!《骗子酒吧》(Liar’sBar)是一款多人在线游戏,玩家可以在一个阴暗的酒吧环境中进行社交推理和心理博弈。游戏中有两种主要玩法:骗子牌和骗子骰子,撒谎和诈唬是获胜的关键。游戏支持联机游玩,玩家可以与朋友一起在线体验。本来是STEAM上的游戏......
  • 《骗子酒吧》最新版 汉化中文 联机手机+PC免费直玩
    这两天的热点游戏,可以去冲一波流量!《骗子酒吧》(Liar’sBar)是一款多人在线游戏,玩家可以在一个阴暗的酒吧环境中进行社交推理和心理博弈。游戏中有两种主要玩法:骗子牌和骗子骰子,撒谎和诈唬是获胜的关键。游戏支持联机游玩,玩家可以与朋友一起在线体验。本来是STEAM上的游戏......
  • UNIAPP设置消息推送(v1.0),自定义铃声功能
    目前项目需要开发一个物联网APP进行设备绑定、警情查看、统计分析、设备操作、自定义报警铃声等相关功能采用的uniapp进行开发,功能其实都很简单就是调用SDK进行设备关联、数据的增删改查,逻辑清晰明了,没想到问题出在了消息推送这块,消息推送-因为是uniapp进行开发所以采用的uni-pu......
  • 在阿里云快速启动Appsmith搭建前端页面
    什么是AppsmithAppsmith是一个开源的低代码开发平台,它使得开发者能够快速地构建内部工具、业务管理系统、CRM系统等。Appsmith通过提供一系列预建的UI组件(如表格、图表、表单等),以及对数据库、API调用的直接支持,简化了开发过程。开发者可以使用这些组件和服务来构建复杂的业务应用......
  • 【微信小程序毕业设计】基于Uniapp家教小程序的设计与实现
    概述:某211院校在校计算机导师,让我成为您的校外毕业指导老师。为您的毕业之旅保驾护航,专业为大家做好毕业选题,课外辅导等工作。文章末尾处有资料的获取方式。点击获取即可。技术描述:后端实现-使用node.js作为开发语言,koa2作为接口开发框架数据库-mysql管理端-vue2.0编写管......
  • 2024-11-17 uniapp小程序之自定义 · 全局弹窗
    效果图:目录结构: 共需要修改6个地方,开始前请安装一个依赖:vue-inset-loadernpmivue-inset-loadervue-inset-loader的GitHub地址:https://github.com/1977474741/vue-inset-loader一:新建弹窗文件components/golbalModa.vue<template><viewclass="modal"v-if="globa......