Day05 APP应用&微信小程序&原生态开发&H5+Vue技术&封装打包&反编译抓包点

我的博客园笔记

一、APP 开发架构---原生开发

安卓一般使用java语言开发,当然现在也有kotlin语言进行开发。如何开发就涉及到具体编程了,这里就不详说了。简单描述就是使用安卓提供的一系列控件来实现页面,复杂点的页面可以通过自定义控件来实现。

平台与语言:安卓用 Java/Kotlin;iOS 用 Objective-C/Swift 开发

测试:需反编译 + 抓包

安全影响:反编译&流量抓包&常规测试

安全影响:逆向的角度去分析逻辑设计安全

1、反编译

原生开发的APK非常容易被反编译成可读的Java代码。用NP管理器这类工具,甚至可以一键查看、修改资源文件。

演示:remusic项目源码(用 java 语言开发的)

NP管理器:http://normalplayer.top/

IDEA 打开 remusic 源码,可全局搜索(Ctrl+Shift+F)定位歌曲、歌单、排行榜等页面逻辑。

使用 NP 管理器对 remusic 进行反编译

核心文件路径:

remusic-master/app/src/main/java/com/wm/remusic/fragmentnet/TabNetPagerFragment.java

TabNetPagerFragment.java 控制首页 tab(新曲、歌单、排行榜),注释代码未打包进 APK,反编译后看不见

可以发现 IDEA 打开的源码和 NP 管理器反编译的源码大致是一样的

2、抓包

如果拿不到源码的话,也可以试着用HttpCanary这类抓包工具去抓取一些有用的信息。 配置证书后,选择目标 APP 开启抓包,可捕获API 接口、请求参数、响应数据

HttpCanary:https://github.com/mingww64/HttpCanary-SSL-Magisk

二、APP 开发架构---Web 封装-封装平台

Web App软件开发简单地说,就是开发一个网站,然后加入app的壳。Web App一般非常小,内容都是app内的网页展示,受制于网页技术本身,可实现功能少,而且每次打开,几乎所有的内容都需要重新加载,所以反应速度慢,内容加载过多就容易卡死,用户体验差,而且app内的交互设计等非常有效。但开发周期长端,需要的技术人员少,成本低。

原理:网站套 APP 壳,本质是 WebView 加载网页。

例如,在多豆云(https://www.ofcms.com/)输入 ShopXO(https://shopxo.net/)的网址,并一键生成安卓/ISO app, 安装到模拟器,抓包流量与网页端完全一致。

安全测试 :仅需对源网站做常规 Web 渗透测试。

三、APP 开发架构---H5&Vue-HBuilderX

使用H5开发的好处有很多,可多端复用,比如浏览器端,ios端,当然H5开发的体验是没有原生好的。结合我做过的项目来说,一般是这个页面需要分享出去的话,就用H5开发。

https://www.dcloud.io/

案例:HBuilderX

1、创建项目 :新建5+App/uni-app模板,基于 H5+Vue 开发。

2、云打包流程

  • 登录 HBuilderX → 配置 Android 包名、证书(test.keystore)。
  • 发行→App-Android/iOS 云打包 → 生成 APK。

安全特点 :反编译价值低,重点抓包提取 API/JS 框架漏洞

四、APP 开发架构---使用 flutter 开发

flutter是近年来谷歌推出的一款UI框架,使用dart语言进行开发,支持跨平台,weight渲染直接操作硬件层,体验可媲美原生。但是flutter技术比较新,生态还不完善,开发起来效率相对偏低。

五、小程序开发架构

大家所说的小程序指微信小程序,实际上除了微信小程序外,还有支付宝、百度、头条、飞书、QQ、快手、钉钉、淘宝等个各种平台的小程序。在微信小程序开发中,开发者可以根据自身情况和项目需要,选择不同的开发方式,包括:原生开发、WebView开发、框架开发和低代码开发等。

参考:https://mp.weixin.qq.com/s/dXTb0wk57-bLA3tUuvOFSw

1、WX小程序---开发架构-Web封装-平台

演示:ShopXO源码程序+多豆云打包

https://shopxo.net/

https://www.ofcms.com/

可以把它看成是把一个完整的电商网站,打包嵌入到微信小程序的"浏览器"(即WebView组件)里运行

安全影响:常规Web安全测试

2、WX小程序---开发架构-H5&Vue-HBuilderX

基于 HBuilderXuni-app 进行微信小程序开发的核心技术链路。简单来说,uni-app开发框架HBuilderX开发工具

演示:HBuilderX案例

https://www.dcloud.io/

https://mp.weixin.qq.com/s/SIWBZv_vZ6AGtHrl3hpR9A

安全影响:API&JS框架安全问题&前端测试

安全影响:反编译小程序-提取小程序源码泄漏的信息

通用

1、反编译-源码-提取资产(泄漏的配置信息)-安全测试

2、抓包-资产-安全测试

相关推荐
OpenTiny社区16 小时前
🎨 看完 GenUI SDK 源码我悟了!
前端·vue.js·github
skiyee16 小时前
🔥UniApp 仅需 5 行代码!实现所有页面中控制应用主题变化
前端·微信小程序
mqcode18 小时前
你项目里的 axios,封对了吗?从裸用到生产级的四步进化
vue.js·axios
Linsk19 小时前
组件 = 模板 + 业务逻辑
java·前端·vue.js
前端啊21 小时前
告别 el-table 打印难题,vue3-print-el-table 来了!
前端·vue.js
AprChell1 天前
低代码设计器和低代码设计引擎架构综述
前端·vue.js·低代码
Ruihong1 天前
🎉 VuReact 1.9.0 发布,支持 Vue 3.4 defineModel 编译到 React
vue.js·react.js·面试
英勇无比的消炎药1 天前
TinyRobot 源码深度分析:OpenTiny 的 AI 对话组件库
前端·vue.js·github
行者全栈架构师2 天前
UniApp集成vk-uview-ui组件库详解:打造高效UI开发体验
前端·vue.js
Csvn2 天前
Vue 3 defineModel 翻车实录:多个 v-model 绑定到底怎么写?
前端·vue.js