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

本文主要是介绍019-信息打点-小程序应用解包反编译动态调试抓包静态分析源码架构,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

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

Untitled

#知识点:

1、Web&备案信息&单位名称中发现小程序
2、小程序资产静态提取&动态抓包&动态调试
解决:
1、如何获取到目标小程序信息
2、如何从小程序中提取资产信息

演示案例:

➢小程序获取-各大平台&关键字搜索
➢小程序体验-凡科建站&模版测试上线
➢小程序抓包-Proxifier&BurpSuite联动
➢小程序逆向-解包反编译&动态调试&架构

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

微信
百度
支付宝
抖音头条

Untitled

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

测试:https://qz.fkw.com/
参考:https://blog.csdn.net/qq_52445443/article/details/122351865

Untitled

Untitled

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或域名进行端口服务测试

问题:微信崩溃小程序打开没网

原因:代理规则没有设置对wechat*.exe将微信所有的进程全部获取,导致崩溃

解决:修改代理规则为:WeChatAppEx.exe,只专注于小程序的进程进行转发即可

Untitled

Untitled

Untitled

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

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

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

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

    Untitled

  • 首先打开微信小程序包的相关目录D:\WeChat Files**Applet**微信设置→文件管理→即可找到目录

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

    Untitled

    Untitled

    Untitled

    Untitled

    Untitled

    Untitled

  • 选中后进行反编译,文件目录下出现反编译源码,打开微信官方开发工具,并拉入反编译好的源码即可

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

Untitled

Untitled

Untitled

Untitled

  • 点击左上角可视化,并打开源码目录,点击list下的list.wxml发现页面跳转
  • 点击index.wxml发现又跳转回首页页面,点击category.wxml发现页面跳转到栏目页面

Untitled

Untitled

Untitled

Untitled

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

Untitled

Untitled

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

Untitled

Untitled

Untitled

这篇关于019-信息打点-小程序应用解包反编译动态调试抓包静态分析源码架构的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/631572

相关文章

C++ Sort函数使用场景分析

《C++Sort函数使用场景分析》sort函数是algorithm库下的一个函数,sort函数是不稳定的,即大小相同的元素在排序后相对顺序可能发生改变,如果某些场景需要保持相同元素间的相对顺序,可使... 目录C++ Sort函数详解一、sort函数调用的两种方式二、sort函数使用场景三、sort函数排序

C语言函数递归实际应用举例详解

《C语言函数递归实际应用举例详解》程序调用自身的编程技巧称为递归,递归做为一种算法在程序设计语言中广泛应用,:本文主要介绍C语言函数递归实际应用举例的相关资料,文中通过代码介绍的非常详细,需要的朋... 目录前言一、递归的概念与思想二、递归的限制条件 三、递归的实际应用举例(一)求 n 的阶乘(二)顺序打印

使用Python自建轻量级的HTTP调试工具

《使用Python自建轻量级的HTTP调试工具》这篇文章主要为大家详细介绍了如何使用Python自建一个轻量级的HTTP调试工具,文中的示例代码讲解详细,感兴趣的小伙伴可以参考一下... 目录一、为什么需要自建工具二、核心功能设计三、技术选型四、分步实现五、进阶优化技巧六、使用示例七、性能对比八、扩展方向建

Java调用C++动态库超详细步骤讲解(附源码)

《Java调用C++动态库超详细步骤讲解(附源码)》C语言因其高效和接近硬件的特性,时常会被用在性能要求较高或者需要直接操作硬件的场合,:本文主要介绍Java调用C++动态库的相关资料,文中通过代... 目录一、直接调用C++库第一步:动态库生成(vs2017+qt5.12.10)第二步:Java调用C++

kotlin中const 和val的区别及使用场景分析

《kotlin中const和val的区别及使用场景分析》在Kotlin中,const和val都是用来声明常量的,但它们的使用场景和功能有所不同,下面给大家介绍kotlin中const和val的区别,... 目录kotlin中const 和val的区别1. val:2. const:二 代码示例1 Java

Go标准库常见错误分析和解决办法

《Go标准库常见错误分析和解决办法》Go语言的标准库为开发者提供了丰富且高效的工具,涵盖了从网络编程到文件操作等各个方面,然而,标准库虽好,使用不当却可能适得其反,正所谓工欲善其事,必先利其器,本文将... 目录1. 使用了错误的time.Duration2. time.After导致的内存泄漏3. jsO

C#如何动态创建Label,及动态label事件

《C#如何动态创建Label,及动态label事件》:本文主要介绍C#如何动态创建Label,及动态label事件,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录C#如何动态创建Label,及动态label事件第一点:switch中的生成我们的label事件接着,

SpringCloud动态配置注解@RefreshScope与@Component的深度解析

《SpringCloud动态配置注解@RefreshScope与@Component的深度解析》在现代微服务架构中,动态配置管理是一个关键需求,本文将为大家介绍SpringCloud中相关的注解@Re... 目录引言1. @RefreshScope 的作用与原理1.1 什么是 @RefreshScope1.

MyBatis 动态 SQL 优化之标签的实战与技巧(常见用法)

《MyBatis动态SQL优化之标签的实战与技巧(常见用法)》本文通过详细的示例和实际应用场景,介绍了如何有效利用这些标签来优化MyBatis配置,提升开发效率,确保SQL的高效执行和安全性,感... 目录动态SQL详解一、动态SQL的核心概念1.1 什么是动态SQL?1.2 动态SQL的优点1.3 动态S

Python中随机休眠技术原理与应用详解

《Python中随机休眠技术原理与应用详解》在编程中,让程序暂停执行特定时间是常见需求,当需要引入不确定性时,随机休眠就成为关键技巧,下面我们就来看看Python中随机休眠技术的具体实现与应用吧... 目录引言一、实现原理与基础方法1.1 核心函数解析1.2 基础实现模板1.3 整数版实现二、典型应用场景2