自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(87)
  • 收藏
  • 关注

原创 某短视频平台最新sig3字段算法分析(二)

sig3字段的主要算法就是crc32,白盒aes和魔改的hmacsha256,难度跟复杂度都还是有一些的,做的过程中也踩了不少坑。

2025-02-04 18:43:21 913 3

原创 某短视频平台最新sig3字段算法分析(一)

最近看到手里的某短视频APP来了兴致,特意拿来分析记录下,整个系列文章大概分为抓包,java层分析,so定位,so去花,unidbg,算法还原等几个部分,这几篇文章会记录下我的整个调试过程,前面的文章会比较基础,入门级玩家基本可以略过了,因为考虑到文章的连续性我这边还是会记录发表下。

2025-02-04 18:34:46 1275

原创 对设备id风控采集信息的分析

首先这个sdk包含java和native so两个模块,app启动的时候将采集信息上报,服务器返回个设备id,没有合法的id有些app直接拒绝注册。Java层的sdk采集的信息最多,差不多有百来条,然后传递给so层,so层再采集一波,然后rsa非对称加密,返回给java。我先把采集的信息列出来,不一定全,包括我做的时候记录的数据可能丢失,还有测试地可能完整。今天刚好有点时间就先简单写一下,前段时间分析了一下某国内风控厂生成设备id时采集的信息,也是第一次接触风控这方面的东西,抱着学习的心态分析了一下。

2025-02-04 18:26:53 651

原创 另一种绕过 Android 10以上非SDK接口调用限制的方法

从Android10开始,Google开始在Android平台限制对非SDK接口的调用。只要应用使用非SDK接口,或尝试使用反射或JNI来调用非SDK接口,都会收到某些限制。而且随着Android版本的升级,这种限制越来越强,被限制的接口也越来越多。这些限制对于Android平台上的一些黑科技来说(插件化,热修复,App双开,性能监控,Art Hook等),简直就是致命的。所以,各路大神都纷纷寻找绕过这个限制的手段。最近在翻阅Android ART虚拟机源码时,发现另外一种简单绕过限制的方法。

2025-02-04 18:16:21 737

原创 某工控CTF逆向分析

真正有用的数值,在call rax函数里以立即数的方式写入数组中。如果在上面的位置修改al=0后,这里的RAX会为0。之前直接修改al为0,RAX中的值用其它的值来填充。函数2正确执行后,会生成正确的rax的值。在这里也试过用hook输出每个call的地址,重复调试时,地址会有变动。会动态在内存中还生成另外一个PE程序,调试后发现无用,就是为了迷惑调试程序。在这里可以把al的值改为0,但是会影响到函数2的入栈参数值。程序需要输入正确的字符串,才能返回正确的flag。我们输出的1234567字符串计数运算。

2025-02-04 18:13:01 1137

原创 某商超小程序加密算法解析

三目运算表达式,为true时貌似表示是BETA版本运行,那么正常使用的版本应该是false,所以猜测t="@653yx#*^&HrTy99",是一个固定盐值。(注意这里获取的cURL接口数据和图例所示的不是同一个请求,图例所示的抓包接口被笔者不小心清除了,于是重新抓了一次请求~)前端能加密,后端一定有对应的解密。好嘛,定位到2处代码,直觉告诉我选request.js中的,直接定位到一个函数getHmacSha256(n)。观察发现是个post请求, 请求体是URL编码后的,不易阅读,我们进行url解码。

2025-02-04 18:11:18 798

原创 tiktok协议算法

2最大的优势是不需要手机等实体设备,投入成本更低,运营管理更方便快捷,部署运行更快速(1千个号真机部署从注册,上号到网络调整部署需要大量的机器,人力和时间,协议部署只需要1天,无须人工),不需要任何实体设备安全性更高,功能上还能实现一些真机正常无法实现的功能。账户平均自然播放量在300-500观看人数,上传100个视频大概有1-2个视频播放量会爆的机率,具体跟视频的剪辑和内容原创有关。1.步骤:定位国家----批量包装账号----采集精准用户---批量关注用户----回关批量发私信.

2025-01-14 17:06:05 402 4

原创 tiktok点赞关注协议

这些因素的综合考虑,TikTok的算法会生成一个个性化的内容流,向用户展示他们可能感兴趣的视频。TikTok的算法是该应用程序的核心组成部分,它负责根据用户的兴趣和行为,为他们提供个性化的内容推荐。需要注意的是,TikTok的算法是由该应用程序的开发团队开发和优化的,因此具体的算法细节可能会随时间而变化,以适应用户和平台的变化。5. 互动模式:TikTok的算法还会考虑用户的互动模式,例如他们喜欢与哪种类型的内容进行互动,以及他们在视频中停留的时间等。

2025-01-14 17:02:59 1066 2

原创 android逆向学习--某小说app的sign算法

最近打算从pc转安卓,随便在应用市场上找了个app练手,大佬可以略过了!!

2025-01-09 21:08:10 1050

原创 关于Cocos2dx-js游戏的jsc文件解密

常规在libcocos2djs.so文件中搜索Ascil字符串“Cocos Game”、“main.js”、"jsb-adapter/jsb-builtin.js"等一些常规的普遍关键词来尝试定位Key。如果无法寻得,就上IDA看下so文件做没做过加密混淆,没有的话就结合applicationDidFinishLaunching函数等来寻找明文的Key值,或者hook关键函数来打印Key值。当然,游戏做了一些混淆或者其他安全手段时就需要先处理其他加密了emm···

2025-01-09 21:00:37 1508

原创 安卓直播间websocket协议破解还原

现如今直播间协议很多已经很少使用http轮询的方式获取直播间的弹幕、礼物、关注等,在用的目前知道的是某音的直播,其他的一些app已经使用socket或者websoceket获取直播间的弹幕等,本次主要针对websocket提供协议破解思路。设备:小米note8、windows案例:具体不提供,仅提供破解思路。

2025-01-09 20:56:48 688

原创 快手sig3算法

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

2025-01-09 20:54:53 860

原创 利用Hook技术实现对Instagram的抓包

听别人说Instagram没法抓包,于是这篇文章诞生了。Instagram的防护做的很好,自己实现了一层SSL,直接过掉了r0capture等一些常见的工具,既然大佬的轮子用不了,那就只能自己动手了。分析样本。

2025-01-09 20:44:19 1018

原创 某直播弹幕协议分析

以上就是协议分析的大概步骤,上述的主要是netty和protobuf的知识点。其实很多im和弹幕都类似,简单的json,难一点的protobuf这种中间协议,更难就把消息加密的。重要的是确定协议,然后分析数据格式。仅提供参考和学习,源码就不提供了。

2025-01-02 19:22:26 470

原创 某品会 sign值逆向流程分析

看到有数据的数据包,主要鉴权参数是这个Authorization中的api_sign。细心的同学可以挨个看。如下图所示,调用了j_Functions_gs这个方法。这里我们发现是重新赋值了 然后去找这个KeyInfo。这里我们直接搜索gs。然后发现这个调用了GS这个方法 那就继续看。然后发现他调用了keyInfo这个类。后面就是直接分析这个so层的算法了。那我们直接hook这个函数看看值。这里就倒推一下 再看下加密的方法。这里点进去可以看到是个sha1。我们点进去具体看看实现逻辑。这里简单看看这个逻辑。

2025-01-02 19:17:13 1042

原创 瑞幸咖啡DFA AES+ollvm混淆分析

本文目标 app 使用了 白盒 AES,且进行了一定程度的 ollvm。使用 unidbg 作为主要的分析工具,配合 DFA 攻击找到了 AES的 key。此次通过hook haskmap 定位了 java 的加密参数的位置。跟踪进入native 层,虽然代码被 ollvm 混淆过。通过个别函数我们也猜测到对应的算法。结合unidbg 下断点找到 DFA攻击的时间点。最终得到了 AES 的key。总体难度适中,适合练手。到此,多谢各位大佬时间。

2025-01-02 19:06:38 1218

原创 CTF自毁程序密码:逆向分析

这一题很有迷惑性,看似简单的代码逻辑,一眼看到的答案,其实并不是真相,重点在他的反检测。大多数的时候我们通过静态分析(java层还是so层)找到他的加密算法,再逆向还原其算法就能找到最终的答案,但是这道题不是,接下来我们我们会用到。通过模拟下调用(符号调用),在hook关键参数地址,运行后,获得的正确flag:aiyou,bucuoo,然后我们在输入flag 则显示true,成功!在不考虑风控的前提下,明确了目标值用frida hook,是最快的方式,那就来吧,验证下。我们要在so文件加载之前进行调试。

2025-01-02 19:00:00 800

原创 shopee app算法分析第一篇

shopee app算法分析第一篇分析完整算法大概要好几篇,耐心等待下。

2024-12-20 17:53:38 1070 1

原创 某pp线上超市加密纯算分析

某线上超市纯算分析完整篇本文仅作为学习交流,禁止用于商业使用。

2024-12-20 17:50:16 846

原创 某云音乐爬取-反调试绕过,js调用栈回溯,web算法逆向

本文以某云音乐爬虫案例为基础,详细探讨了从工具准备到目标数据爬取的全过程,包括爬取目标的需求分析、关键数据的识别以及加密参数的解析和破解。在学习其他案例是发现很多爬虫文章都是莫名其妙的获得某些数据,不知道前因和后果,所以这里就讲逆向和调试的细节分享出来!包括利用源代码搜索、静态堆栈调用回溯、动态调试以及动态堆栈调用等技术手段,最终锁定目标加密函数的调用位置。

2024-12-20 16:56:35 2768

原创 网盘秒传功能的利用

根据后来结论得出:initMultiUpload主要是向后台申请空间(因为可能空间不足,也可能每日上传数据量超过上限),申请成功后,会返回一个uploadid,然后再调用commitMultiUploadFile填上这个uploadid来上传。其实这方法在阿里云盘上线的早期已经试过,是可以正常用的,不过后来接口加了密,就没继续跟进了。这里也提醒大家,保护好自己的文件信息,可能一张截图就会导致了你的文件不小心被泄露!最近由某些原因,需要下载上古时代的文件,结果找出来的链接要么失效、要么龟速。

2024-12-20 16:36:30 1027

原创 抖音短视频x-gorgon算法入口定位查找过程笔记

以上就是对抖音对一个简单的x-gorgon的分析笔记过程,希望能够有所帮助,也能够对自身的产品安全方面进行一个参考借鉴。

2024-12-20 16:32:28 1489

原创 frida分析支付某扫码转账生成URI流程

发现扫码从数据包无从下手定位,尝试关键字:QRScan,QRCode,Translate等都找不到对应的函数,所以最终通过View的点击事件。因为无法正常编译成java代码,并且很长,一如既往的让AI帮我分析,AI得出结果这个方法是一个判断扫描结果类型,进行路由分发的。通过输出结果,发现最后会生成出路由URI,用于唤起支付界面的,尝试通过adb直接打开这个URI看看是否能直接跳转到转账界面。这样就拿到了扫码结果,但是我需要接着跟踪它将扫码结果进行转账通讯的部分,经过分析,最终处理扫描二维码的逻辑是在。

2024-12-20 16:25:26 767

原创 ipad协议07算法

一、了解微信的协议在开发微信协议之前,需要先了解微信的协议。微信的协议包括登录协议、消息传输协议、文件传输协议、数据同步协议等。其中,登录协议是最重要的协议之一,包括登录验证、登录认证等。消息传输协议则是微信最核心的功能之一,包括文本消息、图片消息、语音消息、视频消息、地理位置消息等。二、开发微信协议的流程1. 注册开发者账号:在微信开放平台上注册开发者账号,获取开发者ID和开发者密钥等信息。2. 创建应用程序:在开发者中心创建应用程序,获取应用程序的App ID和App Secret等信息。

2024-12-10 12:55:39 1058 2

原创 ipad协议854新版

协议的关键点主要是PB协议、mmtls、07加密算法、rqt算法、aes加密、rsa加密等,只要把这些点拿下,就可以模拟官方微信的所有功能了,还可以模拟android、pc、mac端的登录。开发微信协议需要通过注册开发者账号、创建应用程序、熟悉API接口文档、调用API接口、解析数据结果、处理错误和异常、安全性考虑、测试和调试等步骤,实现与微信平台的交互和数据传输。通过一个傻瓜式的API,你只需掌握JAVA、Go、PHP、Python等一种后端代码,就能够搭建一个微信机器人功能,实现微信的自动管理。

2024-12-10 12:41:22 1124

原创 最新版shield纯算分析

既然是加密就得确认入参,先打印看看有哪些Interceptor,需要以spawn的形式启动,新版有libmsaoaidsec.so的frida反调试,拆开来是msa open aid security 不是读msao,很多人读错了,网上自行寻找过frida检测的方法,我这里不介绍.

2024-12-09 17:06:21 1108 1

原创 TB某宝购物APP设备风控SDK-mtop简单分析

总的来说mtop风控SDK代码保护能力还是比较强的,签名算法与本地加密算法流程复杂度比较高,协议还原时间成本较高且存在动态下发更算法逻辑,如果站在攻击方的来看的话可能改机方案成本相对较轻的。本次分析从中也学到一些不错的防御点:a、常见libc.so中的字符串操作函数在VMP中实现,strlen,strcpy,memset等。b、自己管理自己的内存结构。c、vm流程混淆,加入一些与真实逻辑无关的运算。d、动态调用内部方法,方法地址加密存放,调用时地址动态解密。

2024-12-09 16:28:42 1244

原创 某讯某用宝运行安卓应用原理分析

某用宝使用VirtualBox虚拟机来启动一个Android系统。

2024-12-09 16:22:05 1118

原创 ks短视频sig3算法分析

sig3是某个很火的短视频的核心加密参数,48位,主要介绍深度ollvm混淆的so层算法如何还原,除此之外,此app还有大量的花指令需要处理,这块看龙哥的就好了,非常清晰.1。

2024-12-09 16:17:27 1215

原创 微信4.0聊天记录数据库文件解密分析

微信4.0的数据库解密已在工具中实现,寻找方式依然是暴力搜索。具体使用方式参考。

2024-12-09 14:36:14 2035

原创 不知妻美,sign参数分析

以 x-api-eid-token 作为入口点,分析 java 层的最终点在 BitmapkitUtils.getSignFromJni。结合 frida-trace 和 findHash 找到关键点 sub_27A4。在这个函数内部使用了随机数的方式进入不同的分支。使用 CASE2 分支作为今天的入口点,最终成功得到 sign 具体的算法逻辑。

2024-12-09 14:15:11 848

原创 微信本地文件名逆向

根据步骤8中,从account.bin中读取4096字节保存成字符串,并用JAVA md5算法加密字符串(java中与C++ mD5存在差异。D为老版本,y为新版本。-将base文件夹中apk拖入Jadx中,文本搜索image2,点进去看到image2 前面append(g.acc().fvY)拼接的字符串,推测fvY可能为我们要找的。通过分析d(cVar)函数发现,此函数为读取account.bin中4096个字节保存为字符串。找到y赋值位置,String y = e.y(a2,D);

2024-11-27 11:36:25 985

原创 ks短视频某手sig3算法调用

我们是否还记得,他需要算法的参数都放在了iVar,这里他使用 iVar.i() 将要签名的信息拿出来,紧接着调用 this.a.getRouter().a 获得结果,发现a这里传了很多东西,估计是最终算法,我们先继续跟一下a方法。通过框选区域发现,a3是来自a2.a方法,且str2通过上方代码得知是sig签名结果,b2是一个url,但是执行了b()可能进行了一些处理,这里暂时先不管b2数据是什么,先最终到最终a调用的地方。通过查看a的方法声明,发现是一个interface,这里直接右键查看调用例。

2024-11-27 11:27:58 1260

原创 苏宁APP逆向笔记系列log

Android逆向苏宁app笔记系列记录,主要想通过视频的方式来督促自己的Android逆向学习进度,也能够给新手带来一些帮助,虽然录制的不是非常专业。

2024-11-27 11:20:27 364

原创 某讯QQ钱包转账付款算法分析篇

找到了它的关键代码,就需要对它进行算法的还原,具体它postdata数据是如何构造的,它的每个参数含义就暂时不往回追溯,根据当前的encypt函数,继续往下阅读,但因为代码是无法正常翻译成java,只能通过阅读class的原生指令。这里直接对它进行HOOK,我使用的是frida(雷电4模拟器环境),我们对这个signEncdata函数进行分析它具体的传参,根据代码过程大概判断出,str是URL,剩余2个,拭目以待。看到此处,它判断的这3个URL接口名称,恰是支付的,估计是它排除掉不是它的接口。

2024-11-27 11:19:03 957

原创 某抢茅台APP的reservationToken算法分析

在调用下单接口(addorder.html),里面包含一个参数名称为reservationToken,它的值是一串类似md5的十六进制。这里分享下逆向追踪过程,目前已实现。

2024-11-18 17:27:34 1176

原创 小米APP登录接口hashedEnvFactors属性溯源

我们可以直接右键这个属性来看看是在哪里赋值的,因为我当初学习JAVA的时候书中曾就讲过,最好不要直接给类里面的属性直接用 = 号赋值,都是直接在新建一个方法来赋值,所以这也跟了我们逆向带来的便捷。它这里就是一行语句的方法。我们回到之前的loginByPassword方法,也就是登录时触发的方法,我们知道,它只有一个传参 PasswordLoginParams ,直接跟进查看这个类。这里注意,我们不要选第一行了,因为我们要的参数是最后一个,而它传的是NULL,肯定不是我们要的,我们可以点第3个看看。

2024-11-18 17:19:52 395

原创 小米APP登录接口env、envkey、sign、hash算法

至此我们已经完成了4项参数的算法~HASH = 大写MD5(密码)_SIGN = 来自服务器返回ENVKEY = BASE64编码(RSA(一个随机证书,公共密钥))ENV = BASE64编码(ASE(hashedEnvFactors,"0102030405060708"))这些完全可以直接扣掉它自己定义的ASE类来放到JAVA独立调用的,就不再作演示,由于文章挺长了,下次在讲一讲hashedEnvFactors这10几个字符串的定义来源。

2024-11-18 17:18:54 1031

原创 小米APP生成DeviceId算法分析

该算法也是非常简单的,重要的是能够掌握快速的代码定位技巧,也能够节省出不少时间.有时候找出一个参数的使用比找出参数的生成算法还要麻烦..

2024-11-18 17:17:01 796

原创 某陪玩软件协议加密算法分析(so层分析)

IDA动态调试确认一下。跟进sub_386B0函数确认一下,猜测此函数为扩展密钥函数,看看是否调用了sbox数组,进入子函数。2.打开libsmsdk.so,找到JNI_Onload函数,导入jni.h文件,找到RegisterNatives函数。aX2,aX4,aX6,aZ3,aY2_0 的传参和返回值都是jstring类型。sub_3549C函数传入指针s,计算的结果在指针v54中,然后再传入sub_504c。整个函数用了混淆,但影响不大,抓住关键点就行。11.跟进此函数,查找a1的引用,定位到此处。

2024-11-18 17:04:40 979

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除