Day18:信息打点-小程序应用解包反编译动态调试抓包静态分析源码架构

news2024/11/20 13:33:08

目录

小程序获取-各大平台&关键字搜索

小程序体验-凡科建站&模版测试上线

小程序抓包-Proxifier&BurpSuite联动

小程序逆向-解包反编译&动态调试&架构

思维导图


章节知识点

Web:语言/CMS/中间件/数据库/系统/WAF

系统:操作系统/端口服务/网络环境/防火墙等

应用:APP对象/API接口/微信小程序/PC应用等

架构:CDN/前后端/云应用/站库分离/OSS资源等

技术:JS爬虫/敏感扫描/端口扫描/源码获取/接口泄漏等

技术:APK反编译/小程序解包反编译/动态调试APP&小程序等

技术:指纹识别/Github监控/CDN绕过/WAF识别/蜜罐识别等

小程序获取-各大平台&关键字搜索

-微信
-百度
-支付宝
-抖音头条

直接搜索寻找

小程序体验-凡科建站&模版测试上线

凡科快速搭建小程序

测试:https://qz.fkw.com/

参考:https://blog.csdn.net/qq_52445443/article/details/122351865

小程序结构
1.主体结构
小程序包含一个描述整体程序的 app 和多个描述各自页面的 page。
一个小程序主体部分(即app)由三个文件组成,必须放在项目的根目录,如下:
    文件                 必需               作用    
    app.js               是            小程序逻辑
    app.json             是            小程序公共配置
    app.wxss             否            小程序公共样式表


2.一个小程序页面由四个文件组成,分别是:     
    xxx.js        页面逻辑
   xxx.json      页面配置
    xxx.wxml      页面结构
    xxx.wxss      页面样式


3.项目整体目录结构
    pages                页面文件夹
    index                首页
    logs                 日志
    utils , util                 工具类(mina框架自动生成,你也可以建立一个:api)
    app.js               入口js(类似于java类中的main方法)、全局js
    app.json             全局配置文件
    app.wxss             全局样式文件
    project.config.json  跟你在详情中勾选的配置一样
    sitemap.json         用来配置小程序及其页面是否允许被微信索引
 

小程序抓包-Proxifier&BurpSuite联动

对抓到的IP或域名进行Web安全测试
对抓到的IP或域名进行API安全测试
对抓到的IP或域名进行端口服务测试

小程序逆向-解包反编译&动态调试&架构

对源码架构进行分析
更多的资产信息
敏感的配置信息
未授权访问测试
源码中的安全问题

相关工具:

小程序多功能组手
复杂操作:https://www.cnblogs.com/oodcloud/p/16964878.html
简单工具:http://xcx.siqingw.top/
-微信官方开发工具
https://developers.weixin.qq.com/miniprogram/dev/devtools/stable.html

首先下载小程序助手和微信小程序官方开发工具

首先打开微信小程序包的相关目录D:\WeChat Files\Applet

微信设置→文件管理→即可找到目录

  • 将里面wx开头的微信小程序生成的缓存包全部删除(便于后期确认哪个是目标缓存包)
  • 再次打开小程序,查看目录下出现目标缓存包,点击进入直到找到APP.wxapkg以此尾缀结尾的如果出现多个,记得把app.wxapkg排序到最前即可

如果有多个全选打开,_APP_.wxapkg为首个

一般选择新版反编译,如果看着小程序比较老旧就选择旧版反编译

解包成功后再刷新

选中后进行反编译,文件目录下出现反编译源码,还可以再修复一下源码

打开微信官方开发工具,并拉入反编译好的源码即可

然后点击微信开发者工具,默认即可

  • 如果出现大面积报错无内容,点击详情→本地设置→取消勾选将JS编译为ES5即可

点击可视化

点击左上角可视化,并打开源码目录,点击list下的list.wxml发现页面跳转

点击index.wxml发现又跳转回首页页面,点击category.wxml发现页面跳转到栏目页面

打开转发工具和burp进行抓取小程序的数据包,在首页源码中进行对抓包内容检索,发现一一对应,例如:icl/2 在源码找得到

  • 仔细检阅源码可以发现,其中回泄露一些资源如:域名,图片等资产
  • 还可能回遇到绕过授权,直接访问到资产信息的情况
  • 还可以在源码尝试全局搜索,Accesskey,查看是否泄露oss的密钥

思维导图

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1491567.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python成功解决AttributeError: ‘Series‘ object has no attribute ‘set_value‘

Python成功解决AttributeError: ‘Series‘ object has no attribute ‘set_value‘ 🌈 个人主页:高斯小哥 🔥 高质量专栏:Matplotlib之旅:零基础精通数据可视化、Python基础【高质量合集】、PyTorch零基础入门教程&am…

[机器视觉]halcon应用实例 用户自定义多ROI模板匹配

本示在前面几个halcon ROI示例的基础上继续扩展,更靠进实标情况。为了使ROI匹配更灵活,就要求可以让用户或工程根据实际使用情况自己去画ROI,想画几个是几个。数量不能在代码里写死。 这次升级的主要是增加了一个while循环根据用户的鼠标按键…

入门LLMs开发 — LangChain

像OpenAI的GPT-4这样的大型语言模型(LLMs)已经风靡全球。它们可以自动执行各种任务,如回答问题、翻译语言、分析文本等。LLMs是第一种真正感觉像“人工智能”的机器学习类型。 然而,在将LLMs应用于实际产品时仍然存在挑战。特别是…

2 月 27 日算法练习-动态规划

思路&#xff1a;没用完全背包优化的动态规划只能O(n^3)只能过 40% #include<bits/stdc.h> using namespace std; const int N 5e37; const int mod 1e97; string s; int len; int num[N],dp[N][N];int solve(int need,int flag){memset(num, 0, sizeof(num));memset(…

C打印内存16进制

下面是一段C代码打印16进制 void print_hex(const char *msg, void *addr, int len) {uint8_t *p (uint8_t *)addr;printf("%s ,stat:%0x8, len:%d\n", msg, addr, len);for (int i 0; i < len / 16; i) {printf("0x%08x: ", p i * 16);for (int j …

微服务:Feign篇

1.什么是Feign Feign是一种声明式、模板化的HTTP客户端&#xff0c;可用于调用HTTP API实现微服务之间的远程服务调用。它的特点是使用少量的配置定义服务客户端接口&#xff0c;可以实现简单和可重用的RPC调用。 先来看我们以前利用RestTemplate发起远程调用的代码&#xff…

30天JS挑战(第十二天)------输入序列验证

第十二天挑战(输入序列验证) 地址&#xff1a;https://javascript30.com/ 所有内容均上传至gitee&#xff0c;答案不唯一&#xff0c;仅代表本人思路 中文详解&#xff1a;https://github.com/soyaine/JavaScript30 该详解是Soyaine及其团队整理编撰的&#xff0c;是对源代…

Golang 开发实战day02 - Print Formatting

Golang 教程02 - Print&#xff0c;Formatting Strings Go语言提供了丰富的格式化字符串功能&#xff0c;用于将数据格式化为特定格式的字符串。本课程将详细介绍Go语言中Print和Formatting Strings的用法&#xff0c;并提供代码示例供大家参考。 Print 类型及使用 1.Print …

ruoyi-vue-plus4.X版本实现内嵌swagger文档(简单解决方法)

1.在common模块中添加pom依赖 <dependency><groupId>org.webjars</groupId><artifactId>swagger-ui</artifactId><version>4.15.5</version></dependency>结果如下&#xff1a; 2.在ResourcesConfig配置类的addResourceHandl…

【前端】Vite打包页面简单部署到GitHub上

创建仓库---->上传代码---->设置 注意点已经打上箭头,代码我传到的是test分支 vite打包的配置如图&#xff0c;base是仓库名称&#xff0c;docs是build后生成的打包目录。 上传到GitHub就自动部署了 访问就是第一张图里的一串地址&#xff0c;这种方式比较方便吧

「项目实践」如何实现导购推荐“千人千面”

前言 在电商背景下&#xff0c;为用户提供精准的导购推荐不仅能极大提升购物体验&#xff0c;也成为推动业务增长的关键驱动力。随着人工智能和数据科学的快速发展&#xff0c;实现“千人千面”的个性化推荐已不再是无法触及的梦想。如何在众多商品中准确捕捉用户的偏好&#…

计算机网络-第3章 数据链路层

主要内容&#xff1a;两个信道及对应的协议&#xff1a;点对点信道和广播信道&#xff0c;扩展以太网和高速以太网 本章的分组转发为局域网内的转发&#xff0c;不经过路由&#xff0c;网络层分组转为为网络与网络之间的转发&#xff0c;经过路由。局域网属于网络链路层的范围…

maven打包失败 Cannot create resource output directory[已解决]

文章目录 前言1.打开资源管理器&#xff08;ctrlAltdelete打开任务管理器&#xff09;2. 选择性能&#xff0c;再选择打开资源监视器3. 搜索“target”4. 我这里示范操作输入的perfmon&#xff0c;显示perfmon.exe占用的&#xff0c;右键结束这个进程 。5.然后重新用package打包…

什么是物联网?物联网如何工作?

物联网到底是什么&#xff1f; 物联网(Internet of Things&#xff0c;IoT)的概念最早于1999年被提出&#xff0c;官方解释为“万物相连的互联网”&#xff0c;是在互联网基础上延伸和扩展&#xff0c;将各种信息传感设备与网络结合起来而形成的一个巨大网络&#xff0c;可以实…

Crossover24新版发布!搭载Wine9提升Mac游戏体验!

2024年2月28日&#xff0c;著名的软件Crossover正式推出了2024年的首个全新版本Crossover24。Crossover 24版本的更新带来了许多功能优化和游戏优化&#xff0c;使用户能够更好地在Mac系统上运行各种软件和游戏&#xff0c;并且支持32位旧版软件的兼容运行。 Crossover24最新版…

【论文笔记】Gemma: Open Models Based on Gemini Research and Technology

Gemma 日期: March 5, 2024 平台: CSDN, 知乎 状态: Writing Gemma: Open Models Based on Gemini Research and Technology 谷歌最近放出的Gemma模型【模型名字来源于拉丁文gemma&#xff0c;意为宝石】采用的是与先前Gemini相同的架构。这次谷歌开源了两个规模的模型&…

python--产品篇--游戏-坦克1

文章目录 准备代码效果 准备 下载 代码 5# coding: utf-8# 游戏运行主程序 import sys import pygame import scene import bullet import food import tanks import home from pygame.locals import *# 开始界面显示 def show_start_interface(screen, width, height):tfo…

leetcode10正则表达式匹配

leetcode10正则表达式匹配 思路python 思路 难点1 如何理解特殊字符 ’ * ’ 的作用&#xff1f; 如何正确的利用特殊字符 ’ . ’ 和 ’ * ’ &#xff1f; * 匹配零个或多个前面的那一个元素 "a*" 可表示的字符为不同数目的 a&#xff0c;包括&#xff1a; "…

漫画手绘视频教程分享

下载地址&#xff1a; 漫画手绘教程: https://url83.ctfile.com/d/45573183-60305653-039aed?p7526 (访问密码: 7526)

Doris实战——银联商务实时数仓构建

目录 前言 一、应用场景 二、OLAP选型 三、实时数仓构建 四、实时数仓体系的建设与实践 4.1 数仓分层的合理规划 4.2 分桶分区策略的合理设置 4.3 多源数据迁移方案 4.4 全量与增量数据的同步 4.5 离线数据加工任务迁移 五、金融级数仓稳定性最佳实践 5.1 多租户资…