首页 > 编程语言 >记一次安卓小程序sign的逆向

记一次安卓小程序sign的逆向

时间:2022-12-04 12:22:49浏览次数:35  
标签:逆向 image 程序 sign 安卓小 安卓 root app

image-20221204120030560
image-20221204120030560

记一次安卓小程序sign的逆向

​ 最近因为疫情原因居家办公了,而且任务量比较大,其余的时间也都在学习,这次记录一个前几天遇到的一个特殊的sign值的逆向,之前写的安卓测试技巧阅读量还可以,可以看出大家对安卓测试还是比较感兴趣,这次的sign逆向也跟安卓有关

1. 准备

微信公众号:小惜渗透,欢迎大佬一起交流进步

​ 首先拿到的是一个小程序(不是微信小程序),小程序在app里面,并且目前没有上架,而且就算是测试环境也需要用到特定的手机卡放到卡槽1的位置才可以,这就无形中给了很多阻碍

  1. 模拟器不行,因为要检测卡槽
  2. 普通安卓设备也不行,因为无法解决安卓7以上的证书问题
  3. 苹果也不行,这个小程序也会检测
  4. 同时app还会检测root情况,如果是root手机,app会闪退

没办法只好拿出我祖传的小米,然后刷了第三方RCE--TWRP,然后进行卡刷,刷入Magisk,安了个MT管理器(用来移动证书,如果不懂看我之前安卓测试的文章),至此,证书问题解决,但是因为app会检测root权限,所以用Magisk隐藏对该应用隐藏root

如下图所示,开启Zygisk,然后重启,然后在配置排除列表中添加本次测试的app,即可,这样它就检测不到root了

image-20221204110702413
image-20221204110702413

2. 过程

在测试过程中,发现请求体为json,header中存在sign值,如果我改动请求体,会提示校验错误,看来sign值是根据请求体来进行加密的,那么我肯定要找到加密规则,不然的话基本上测不出来什么东西

so,查壳

image-20221204111135641
image-20221204111135641

没有,nice,直接将app拖入jadx,(下图为模拟图,真实app中没这么多东西),一看东西少之又少,然后简单搜索一下,没找到任何有用的东西

image-20221204111307767
image-20221204111307767

这就难办了,于是我转回去查了一下历史请求,发下一个可疑的请求

image-20221204111530493
image-20221204111530493

搞毛线,你请求zip干嘛?然后我就访问了这个地址拿到了这个zip文件,解压看看

image-20221204111657361
image-20221204111657361

后来我一想对啊,它是小程序啊,这个sign签名可能不是app给加的,而是这个小程序自己加的,小程序如果想要在前端加签名,那么一定要有js文件才对,那么这不就找到了

然后开始分析,直接搜索sign发现有41处,有点多,不过没有关系,因为sign是在header里面,而header一般定义的时候都是{aaa:bbb}

image-20221204111838642
image-20221204111838642

所以改变搜索方式,缩小范围

image-20221204112018492
image-20221204112018492

最后确定位置

image-20221204112058108
image-20221204112058108

接下来反推s的值,就在上图的上方还存在一些代码,如下

image-20221204112212017
image-20221204112212017

可以推测,Object(n["a"])是一个函数,而它的参数就是e,最后执行的结果赋值给了s,而这个e在上方还能看到data: e的字样,所以e应该为请求体,接下来只需要定位到Object(n["a"])这个函数即可

随便再往上翻翻

image-20221204114317862
image-20221204114317862

直接搜这个5a6e,这个就很像了

image-20221204114404640
image-20221204114404640

这里推荐一个网站,平时js逆向或者xss绕过的时候很有帮助https://jsrun.net/new,同样的我利用这个网站将其还原,其中我们不知道这个i.a是什么,不过没有关系,直接百度

image-20221204114604218
image-20221204114604218

这回应该知道是什么了,就是CryptoJS,还原

image-20221204115148592
image-20221204115148592

标签:逆向,image,程序,sign,安卓小,安卓,root,app
From: https://www.cnblogs.com/XXST/p/16949627.html

相关文章

  • Affinity Publisher出版排版软件,搭配 Affinity Designer 和 Affinity Photo使用更佳
    Mac排版神器是什么?AffinityPublisher中文版是创意软件工作室Serif旗下的一款桌面排版应用,可以帮助专业设计人员在每一版面、页面、杂志、书籍和数字出版物中实现最佳的......
  • Ant Design Pro 脚手架Eslint+Prettier配合使用
    AntDesignPro脚手架集成了Eslint与Prettier,但Eslint与Prettier还没形成关联性,就是他们之间各玩各的,现在需要他们之间关联,就是当Prettier格式出现问题时,eslint会报相应的......
  • arco design vue 表单自定义验证
    不知道为啥,官方文档里竟然没写...直接上代码template里<a-form-itemfield="repeatPassword":rules="[{validator:validateRepeatPassword,trigger:'change'}]"......
  • Ant Design Pro 脚手架精简
    AntDesignPro是一个开箱即用的中台前端/设计解决方案,相信很多企业都在用这个脚手架。其脚手架集成了非常多的功能,把工作中需要用到的几乎所有都集成到了这里,这导致该脚......
  • ant-design-vue
    vue3引入ant-design-vueUI组件安装npmi--saveant-design-vue@next-S在main.js全局引入importAntdfrom'ant-design-vue';import'ant-design-vue/dist/an......
  • Altium Designer电路设计软件下载
    关注微信公众号【工控羊】或者微信号【gksheep】,微信公众号后台输入数字编号【0010】即可获取下载链接。......
  • .Net Core SignalR 初体验
    前言Asp.NetSignalR已经出来很久了,但是一直没有静下心来好好看看。昨天花了几个小时的时间看了下。首先借鉴了官方文档,如何搭建一个SignalR的Demo。参考文章:ht......
  • ASP.NET Core SignalR .NET 客户端
    项目2022/11/2913个参与者反馈通过ASP.NETCoreSignalR.NET客户端库可以从.NET应用与SignalR中心进行通信。查看或下载示例代码(如何下载)本文......
  • mybatis逆向工程
    第一步:添加mybatis逆向工程插件<!--myBatis逆向工程插件--><plugin><groupId>org.mybatis.generator</groupId><artifac......
  • SignalR循序渐进(一)简单的聊天程序
    前阵子把玩了一下SignalR,起初以为只是个real-time的web通讯组件。研究了几天后发现,这玩意简直屌炸天,它完全就是个.net的双向异步通讯框架,用它能做很多不可思议的东西。它......