【PerimeterX】px3逆向分析

文章介绍了对px3无感接口的逆向分析过程,重点在于请求参数的解密,特别是payload和pc两个参数。作者提到解混淆对于定位加密代码至关重要,并分享了解密函数的提取方法。文章还强调了分析t对象参数的意义,以及并发风控的挑战。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

【PerimeterX】px3逆向分析

前言

最近看了下ti网站的px3(只是在逆向层面~),以此篇文章简单记录下逆向过程。

正文

目前是分析的px3无感,接口是 /collector

请求参数

在这里插入图片描述
简单说明下,p6是cookie返回的,个别参数是固定的,seq, rsc会自增。主要需要看的是payload和pc 2个参数,2个是不同的算法。

  • payload,pc参数定位
    现在新版本的px3,字符串混淆还是很容易还原的,不像之前混淆max的时候,解起来还是挺费劲的(之前用的不不的解混淆框架),所以我们要先解混淆。(我ast写的很烂就不放出来了)
    在这里插入图片描述
    解完混淆,就能快速定位到加密位置了,然后pc的加密位置就在上方。两个参数的加密代码也很好扣。

  • t、S 对象
    t是一个数组,每一次请求,里面的值都不太一样。
    这是第一次的,没啥东西。

t = [{"t":"PX12095","d":{"PX11645":"https://www.ti.com/","PX12207":0,"PX12458":"Win32","PX11902":0,"PX11560":269,"PX12248":3600,"PX11385":1688690961524,"PX12280":1688690961526,"PX11496":"1c796520-1c60-11ee-9c74-d7cdd48cc772","PX12564":null,"PX12565":-1,"PX11379":true}}];
S = {"tag":"v8.5.4","appID":"PXDl82I3Ui","cu": uuid, "pc":"7854166242700189"};

解密

在这里插入图片描述
新版本的,返回值也加密了,但是定位解密位置也很容易定位。

我们先不管,直接看第二次payload加密时的S对象。

S = {"vid":"f314f4ce-1e3c-11ee-8981-6f7561657275","tag":"v8.5.4","appID":"PXDl82I3Ui","cu":"f3136670-1e3c-11ee-806a-59aba21d5838","cs": uuid,"pc":"6149997752707771"}

细心的读者会发现多了一个vid对象,这个对象是It()函数返回的

在这里插入图片描述

找找看vt是哪里set的就简单了。

在这里插入图片描述

直接在浏览器里debugger Jt函数。set值的时候会断住,往上翻栈就能发现是第一次返回结果解密后得到的。 然后就开始扣解密函数了,这个也很好扣… 加密解密函数扣的难度都不是很大。

尾声

主要要分析的还是t对象里面的参数(不同的情况对应的内容也不一样),需要一个个去找是啥含义,然后扣出来(所以解混淆是很必要的,搜索字符串很容易定位) ,大部分的指纹以及检测都很容易找到的,扣也很容易扣的。

第二个请求,t对象的部分参数欣赏(老长了,截图不下)
在这里插入图片描述

文章仅在逆向分析层面,提供了一个逆向思路而已。花时间的话,相信大家都能分析不少东西出来。(听说最难的在并发风控上…)

鸣谢

在这里感谢陈不不大佬,在JS逆向之路上提供了不少帮助~

不不大佬的小破站地址: https://space.bilibili.com/227452348/
我、陈不不、泰迪合作的星球:https://t.zsxq.com/06bIUvBEM
Vivado2023是一款集成开发环境软件,用于设计和验证FPGA(现场可编程门阵列)和可编程逻辑器件。对于使用Vivado2023的用户来说,license是必不可少的。 Vivado2023的license是一种许可证,用于授权用户合法使用该软件。许可证分为多种类型,包括评估许可证、开发许可证和节点许可证等。每种许可证都有不同的使用条件和功能。 评估许可证是免费提供的,让用户可以在一段时间内试用Vivado2023的全部功能。用户可以使用这个许可证来了解软件的性能和特点,对于初学者和小规模项目来说是一个很好的选择。但是,使用评估许可证的用户在使用期限过后需要购买正式的许可证才能继续使用软件。 开发许可证是付费的,可以永久使用Vivado2023的全部功能。这种许可证适用于需要长期使用Vivado2023进行开发的用户,通常是专业的FPGA设计师或工程师。购买开发许可证可以享受Vivado2023的技术支持和更新服务,确保软件始终保持最新的版本和功能。 节点许可证是用于多设备或分布式设计的许可证,可以在多个计算机上安装Vivado2023,并共享使用。节点许可证适用于大规模项目或需要多个处理节点进行设计的用户,可以提高工作效率和资源利用率。 总之,Vivado2023 license是用户在使用Vivado2023时必须考虑的问题。用户可以根据自己的需求选择合适的许可证类型,以便获取最佳的软件使用体验。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值