相关文章
2023年最新电商某东app端sign签名算法与cipher加解密逆向分析(2023-09-26)
2024-11-10 17:00

前言     本文仅供学习交流,只提供关键思路不会给出完整代码,严禁用于非法用途,若有侵权请联系我删除!技术交流合作请私信

2023年最新电商某东app端sign签名算法与cipher加解密逆向分析(2023-09-26)

用到工具如下

    之所以要选择android 6 手机,原理如下:      Android 系统将 CA 证书又分为两种:用户 CA 证书和系统 CA 证书。     系统 CA 证书存放在 /etc/security/cacerts/ 目录下,名称是 CA 证书 subjectDN 的 Md5 值前四位移位取或,后缀名是 .0,比如 00673b5b.0。考虑到安全原因,系统 CA 证书需要有 Root 权限才能进行添加和删除。     对于非 Root 的 Android 设备,用户只能安装用户 CA 证书。     无论是系统 CA 证书还是用户 CA 证书,都可以在设置 → 系统安全 → 加密与凭据 → 信任的凭据中查看

                                (图1CA证书的位置 用户凭据)     Android 从 7.0 开始,系统不再信任用户 CA 证书(应用 targetSdkVersion >= 24 时生效,如果 targetSdkVersion <24 即使系统是 7.0 + 依然会信任)。也就是说即使安装了用户 CA 证书,在 Android 7.0 + 的机器上,targetSdkVersion>= 24 的应用的 HTTPS 包就抓不到了。

    (1)下载地址

 

                             

(图2 charles下载位置)

    按照默认next即可,然后选择路径。

    (2)Charles破解

    破解地址
 

   

                             (图3 charles 在线破解)

(3)使用Charles

    在Charles的菜单栏上选择”Proxy”->“Proxy Settings”,填入代理端口8888并且勾上”Enable transparent HTTP proxying”,这样就完成了在Charles上的设置     在”Help”->”Local IP Address”中可以查看本机的ip地址,当然也可以在cmd中通过ipconfig查看。

                             

                                             (图3 charles 配置与使用)

                                           (图3 charles 配置与使用2)

    设置保存完成后,charles界面会弹出一个连接请求框,点击“Allow”。

                             (3.charles抓包配置1)

                                                              (3.charles抓包配置2)

                                         (3.charles抓包配置3手机设置代理)

 

   之所以不选用最新版APP,是因为最新版APP不走系统代理(Proxy.NO_PROXY)抓不到包

 

                                                       (图4 jadx下载)

 
 
 

    打开手机app,然后再点击某个商品,可以看到已经抓到明文数据了

                                          (图5.charles抓包成功

参数分析

 
quest参数分析 https://api.m.jd.comapi服务器functionId=wareBusiness表示请求商品信息clientVersion=10.1.4表示app版本号build=90060 固定值

client=android&d_brand=Xiaomi&d_model=MI4LTE&

osVersion=6.0.1&screen=1920*1080

手机基本信息partner=ks006固定值oaid=&eid=  并未参与服务器校验,不用管sdkVersion=23android 版本号eu=&fv=  并未参与服务器校验,不用管uuid=  设备标识,参与签名校验aid=&area=    固定值networkType=wifi   网络类型wifiBssid=  固定值uemps=0-2&harmonyOs=0&scval=7929459固定值

st=1695609462872&

sign=e684ce9273978b1b9fc14382508e25ca&

sv=121

经过多次抓包查看,发现这三个值是变化的。 st,sign,sv为签名字符串,必须,否则采集不到数据。

发送post请求,携带body数据如下

 

body数据为url编码的字符串,解码后如下

 

其中"skuId":"7929459"为商品ID,其它值可以固定。

 
 

把app导入到jadx,我们要追踪st,sign,sv这三个参数的来源,那么我们搜索一下,先搜索sign的位置,然后一步步查找,最终找到

                                        (图6sign签名位置1

sgin签名 计算涉及到了接口的这几个参数 functionId,body,uuid,client,clientVersion 签名函数

 

                                                           (图6sign签名位置2

签名函数的位置,可见签名函数位于jdbitmapkit.so文件中。 关键代码

 

getSignFromJni 这个加密方法 是调用了jdbitmapkit.so里面的代码

 

注意新版京东有检测frida的,需要改个进程名跟端口。

用frida注入如下函数  BitmapkitUtils.getSignFromJni(context, str, str2, str3, str4, str5);

 

                                     (图7.Frida注入验证

如上,我们可以看出,st sign sv都是从so来的。

至此,sign的来源已理清。

直接压缩软件打开app,搜索,找出文件jdbitmapkit.so

.直接上IDA,把文件拖进去 在方法sub_127E4 找到关键词sign= 方法里面也刚好有uuid,body,st等关键词,确认是这个没错了。

    查看ida的代码分析一下算法,并且用java还原,再翻译成python代码。

(图8java测试代码

继续搜索”cipher“字段,找到cipher加解密位置如下

(图9.cipher加解密类

cipher这个直接复制d这个类就包含了加解密。

(图10.sign签名采集到商品详情信息)                              

技术交流 5b6u5L+h77yaYnljNjM1MiAgUVE6Mzk4NDg4NzI=(base64解码

    以上就是本篇文章【2023年最新电商某东app端sign签名算法与cipher加解密逆向分析(2023-09-26)】的全部内容了,欢迎阅览 ! 文章地址:http://gzhdwind.xhstdz.com/news/1210.html 
     栏目首页      相关文章      动态      同类文章      热门文章      网站地图      返回首页 物流园资讯移动站 http://gzhdwind.xhstdz.com/mobile/ , 查看更多   
最新文章
Cursor账号过期了怎么办?一文教你如何永久使用Cursor技巧!
我们都知道Cursor是一款智能编辑器,它和VS Code的关系是Cursor基于VS Code技术构建的一个分支,同时继承了VS Code的所有基础功
适合中老年游戏活动的项目有哪些?
引言:为何中老年游戏活动尤为重要 随着社会的不断发展和生活水平的提升,中老年人的生活方式也随之改变。对于他们来说,健康和快乐成为了生活的重要组成部分。而游戏活动,不仅能够增加社交互动,还能锻炼身体与思维。因此,选择适合中老
上海旅游攻略:探访繁华之都的风情韵味
引言:开启上海的奇妙之旅 上海,这座迷人的城市,拥有着深厚的文化底蕴与现代化的繁华景象,无论是初次造访还是再次归来,都会让人惊叹于它独特的风情韵味。在这里,历史与现代交融,传统与创新并存,等待着你去探索这座繁华之都的每个角
高新企业网站优化方法大揭秘!
高新企业网站的重要性 随着互联网的快速发展,企业网站已经成为企业宣传、推广和营销的重要渠道。对于高新技术企业来说,网站更是展示企业形象、产品技术、行业影响力的窗口。因此,如何优化企业网站,提升网站的曝光率和用户体验成为了高
探索旅游景区的独特魅力:人文、自然与体验的完美结合”
引言:旅游景区的魅力所在 在如今快节奏的生活中,越来越多的人选择通过旅行来放松身心,寻找内心的宁静。在旅游的过程中,景区的选择则显得尤为重要。一个优质的旅游景区不仅仅是壮丽的自然风光,还有深厚的人文底蕴和丰富的体验活动。本
提升健康与活力:探索运动健身的多样化内容与方法
引言:健身的时代已来临 随着人们生活水平的提高,越来越多的人开始关注自身的健康与活力。运动健身不再是一种单一的方式,而是发展出了多样化的内容与方法。无论是为了减肥、塑形,还是增强体质,运动健身都成为了许多人的日常习惯和生活
80岁老人旅游规定的常见问题及注意事项解析
引言:老年人的旅游热潮 随着社会的发展和生活水平的提升,越来越多的老年人开始积极参与到旅游活动中。他们用实际行动证明,年龄并不是旅途的限制,反而是丰富人生经验的体现。虽然老年游客在旅途中享有更多的自由和乐趣,但在旅游规定及
AI写作论文是否会被检测?解密检测机制!
引言:AI写作的崛起 近年来,人工智能(AI)技术的发展迅猛,尤其是在写作领域。AI写作工具不仅能生成高质量的文章,还能满足不同用户的需求,成为内容创作的得力助手。然而,伴随着AI写作的普及,一个新的问题也逐渐显现出来:AI写作论文
几月份去兰州旅游最宜?
探索兰州的四季魅力 兰州,作为甘肃省的省会,坐落于黄河之畔,是一座历史悠久的城市,兼具独特的自然风貌与深厚的人文底蕴。每个季节,兰州展现出不同的面貌,吸引着四面八方的游客前来探索。那到底几月份去兰州旅游最为宜人呢?接下来,
探索中国旅游标志的原型与文化内涵的深度解读
探索中国旅游标志的原型与文化内涵 中国作为一个拥有悠久历史和丰富文化的国家,其旅游标志更是象征着一种独特的文化内涵。中国旅游标志的原型多取材于中国传统艺术元素,加之对中国文化的理解与诠释,形成了独具魅力的形象。 中国国徽与中
相关文章