首页 > 编程语言 >小程序xcxCode逆向分析

小程序xcxCode逆向分析

时间:2024-12-17 22:31:29浏览次数:7  
标签:分析 xcxCode 加密 逆向 程序 生成 爬取

数据爬取与xcxCode逆向分析

一、声明

本文章中所有内容仅供学习交流使用,不用于其他任何目的。不提供完整代码,抓包内容、敏感网址、数据接口等均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关!本文章未经许可禁止转载,禁止任何修改后二次传播,擅自使用本文讲解的技术而导致的任何意外,作者均不负责。文章为原创内容,作者为小白,不喜勿喷。

二、工具介绍

  1. mitmproxy
    主要用于数据抓包,在数据获取与分析过程中发挥着关键作用,能够帮助我们拦截和查看网络请求及响应等相关信息,小程序抓包很好用
  2. WeChatOpenDevTools-python:(逆向工具
    这一工具在整个分析流程中也有着重要用途,它可以辅助我们更好地对微信小程序相关内容进行调试、分析,比如查看小程序内部的页面结构、代码逻辑以及各种交互情况等,为我们深入探究小程序中像xcxCode这类关键元素的生成和运行机制提供了便利的开发调试环境。

三、xcxCode基础特征

在进行数据爬取工作时,发现请求头中的xcxCode具有动态变化的特性。经过一段时间后,若xcxCode未正确更新,则无法返回数据。其加密类型为:一个自定义的字符串与时间戳生成的字符串,然后进行AES加密从而生成xcxCode

四、逆向目标

本次的逆向目标即为xcxCode,旨在探究其生成的具体逻辑与加密过程,以便在合法合规的学习研究范围内实现数据的正确爬取与处理。

五、寻找过程

(一)找到发送请求位置(xcxCode未生成)

一般采用xhr断点或者栈跟踪的方法来寻找目标链接。在较为简单的情况下,xcxCode相关的操作通常出现在创建请求时,对于一些关键字如“request”等需要特别留意。若难以直接找到,可以逐步排查可能的位置并打上断点,观察xcxCode的值是否存在。例如,在某次分析中,通过相关操作找到了发送请求的位置,此时xcxCode尚未生成,如图所示:

(二)进入函数内部寻找xcxCode

在确定发送请求位置后,进入相应的函数内部进一步探寻xcxCode的踪迹。通过深入函数内部的代码逻辑分析与调试,最终找到了xcxCode的生成位置,如图:

(三)进入xcxCode函数找出加密代码

继续深入到xcxCode函数内部,可以看到其加密代码的具体实现。其中明确发现是对一个字符串与时间戳进行AES加密得出xcxCode的结果,如图:

六、结果运行测试

将相同的数据在在线AES测试平台进行测试,如果得到的结果与实际抓取过程中的xcxCode相同,那么恭喜,此次逆向分析成功。这一步骤是对之前逆向分析结果的验证,确保我们所探究出的xcxCode生成逻辑与加密过程的准确性,以便在后续合法的数据爬取与处理工作中能够正确应用。

标签:分析,xcxCode,加密,逆向,程序,生成,爬取
From: https://www.cnblogs.com/lcgmilk/p/18613217

相关文章

  • 空间三点求圆心程序设计及实现【vb.Net】
    已知空间三点的三维坐标,求这三个点所确定的空间圆的圆心坐标和半径。这是测绘领域经常会碰到的问题,今天示例关于这个空间三点求圆心程序的实现过程。1、基础理论——空间三点确定圆心已知空间三点的坐标为(x1,y1,z1),(x2,y2,z2),(x3,y3,z3),求这三个点所确定的空间圆的圆心坐标和......
  • flask毕设学生接送服务平台(程序+论文)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容选题背景随着社会经济的发展和家庭生活节奏的加快,学生接送问题成为众多家长关注的焦点。目前,国内外关于学生接送服务的研究主要集中在传统的校车服......
  • flask毕设学生旧物信息系统(程序+论文)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容选题背景随着高校教育的快速发展,学生旧物处理成为一个日益突出的问题。学生在毕业或换宿舍时,往往有大量书籍、电子产品、生活用品等旧物需要处理。......
  • flask毕设学生就业管理系统(程序+论文)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容选题背景在当前高等教育普及化的背景下,学生就业问题成为社会关注的焦点。关于学生就业管理的研究,现有文献主要集中在就业市场分析、就业指导服务优......
  • springboot毕设校园二手交易平台论文+程序+部署
    本系统(程序+源码)带文档lw万字以上 文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容一、研究背景随着消费水平的提升以及消费观念的转变,大学生群体中产生了大量的闲置物品。大学生容易受到潮流影响,消费需求较为旺盛,但经济未完全独立,资金主要来......
  • springboot毕设失踪人口寻找互助信息系统论文+程序+部署
    本系统(程序+源码)带文档lw万字以上 文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容一、研究背景在现代社会,人口失踪事件频繁发生,这一现象给无数家庭带来了巨大的痛苦与困扰。失踪人口的家属往往陷入极度的焦虑、无助和绝望之中,他们在寻找亲人......
  • python毕设 健身俱乐部信息管理程序+论文
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、选题背景关于健身俱乐部信息管理的研究,现有研究多集中于传统的运营模式、营销等方面12。专门针对利用Python进行健身俱乐部信息管理系统构建与......
  • Linux系统 —— 进程系列 - 程序地址空间:虚拟地址空间
    接前文:  Linux系统——进程系列-进程优先级与进程切换-CSDN博客https://blog.csdn.net/hedhjd/article/details/144404639?spm=1001.2014.3001.5502目录前言1.虚拟地址空间和进程地址空间1.1什么是虚拟地址空间? 结论1.2虚拟地址空间的结构体里有哪些属性(......
  • rust可以和C语言程序使用grpc进行通信吗? rust是客户端,C是服务端。 如果可以的话,举一个
    是的,Rust可以与C语言程序通过gRPC进行通信。gRPC是一个语言中立的通信框架,支持多种语言之间的互操作,包括Rust和C。关键步骤概述:定义gRPC接口(.proto文件):定义服务端和客户端之间的接口。C服务端实现:使用C语言实现服务端,处理客户端的请求。Rust客户端实现:使......
  • node.js毕设大学校园兼职网站程序+论文
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容一、选题背景关于大学校园兼职的研究,现有研究主要以大学生兼职的社会现象、兼职权益保障等为主。专门针对大学校园兼职网站这种专门化平台的构建、运营及相关影响的......