网络安全 day4 --- APP架构小程序H5+Vue语言Web封装原生开发Flutter

news/2024/9/17 10:02:44/ 标签: web app, 网络安全, web安全

APP架构

1、原生开发

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

2、使用H5语言开发

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

3、使用flutter开发

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

4、常规Web开发

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

APP搭建

web封装开发

按照我们之前写的进行宝塔面板搭建,我们先删除原先搭建的网站,然后进行新的app网站的搭建,我们到宝塔面板提供的一键部署,找到ShopXO商城,因为这个是支持小程序,APP搭建的,所以我们选择这个。

我们点击一键部署进行部署。部署好我们的网站后打开看看,一切正常后网页搜索一门APP。注意:软件目前需要的php最低版本为8.0.2所以需要我们下载新版的php环境,我这里安装了php8.1

一键部署完成后我们进行安装

按照提示步骤一步一步进行即可。

我们安装好后直接打开网页看看效果。

已经搭建好了,接下来就是制作app了我们网页搜索一门app或者变色龙来制作app我们先拿一门app制作一个网页。

生成完成之后我们拿我们的手机或者电脑上的模拟器安装一下app顺便看一下界面

app制作完成的页面是这样的。

这种app其实就是一个网站进行了web封装,简而言之对其进行渗透测试就是对网站进行渗透测试 

当然小程序也可以是网站,我们使用一门app或者变色龙按照提示步骤进行操作即可

原生开发

 

像这样的别人一点一点写的就是我们说的原生开发 ,对于这种apk想要进行渗透测试是最难的,需要对其进行反编译抓包,分析接口资产信息,对其进行分析和安全测试。

H5语言开发

刚才我们搭建的shopxo是用php语言搭建的,还有一种是采用前端语言的开发,我们首先安装HBuilder X。

 选择一个模版进行创建

 可以看到可以发行很多app,我们直接点击上面的运行做个演示即可,不做发行了。这个源码是基于vue框架的,用的是html5语言基本上都是。

本地运行后的效果如下,

基本上用的是h5+vue,(vue是js框架,h5是静态的)网站测试思路就是原本的框架问题和接口漏洞。

也可以本地打包成app版,我们直接打包即可我们尝试把它做成小程序,和app一个道理。

我们需要下载微信开发者工具,下载好之后我们直接在HBuild X里面运行微信小程序发布

 他这里发布需要一个微信小程序的Appid因为我自己有公众号我就直接使用我的公众号的appid了。

发布成功后会有一个地址,将地址文件拖入微信开发者工具即可。

所以小程序也是可以h5+vue。

总结一下

#APP-开发架构-原生态-IDEA

演示:remusic项目源码

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

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

#APP-开发架构--Web封装-封装平台

演示:ShopXO源码程序+一门APP打包

安全影响:常Web安全测试

#APP-开发架构-H5&Vue-HBuilderX

演示:HBuilderX案例

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

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

演示:ShopXO源码程序+一门APP打包

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

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

演示:HBuilderX案例

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


http://www.ppmy.cn/news/1522961.html

相关文章

Mybatis-PageHelper Reentrantlock锁使用问

Mybatis-PageHelper应该是目前使用比较广泛的一个Mybatis分页插件。我在几个项目里都引入了该插件。今天偶然阅读其源码,却发现了一个不小的问题。 注:我阅读的是最新的4.1.3的源码。 该分页插件的核心是PageHelper类,该类实现了Mybatis提供的…

在C++中,如何避免出现Bug?

C中的主要问题之一是存在大量行为未定义或对程序员来说意外的构造。我们在使用静态分析器检查各种项目时经常会遇到这些问题。但正如我们所知,最佳做法是在编译阶段尽早检测错误。让我们来看看现代C中的一些技术,这些技术不仅帮助编写简单明了的代码&…

【HarmonyOS】安装包报错,code:9568282 error: install releaseType target not same.

【HarmonyOS】安装包报错,code:9568282 error: install releaseType target not same. 报错信息 Install Failed: error: failed to install bundle. code:9568282 error: install releaseType target not same. You can also uninstall and reinstall the module…

鸿蒙(API 12 Beta6版)【ArkGraphics 3D资源创建以及使用】方舟3D图形

3D场景中资源类型主要包含以下几种: 材质(Material): 材质是对场景中物体的光学物理性质的数学建模。在渲染计算的过程中,利用这些物理性质计算与光的相互作用,得到最终渲染的颜色。ArkGraphics 3D提供的材…

Arduino IDE安装操作指南

Arduino是一个基于开源硬件和软件的平台,旨在使人们更容易开发电子项目。Arduino IDE(集成开发环境)是用于编写代码、编译和上传到Arduino开发板的工具。无论是电子爱好者、新手还是专业开发者,Arduino IDE都是一个不可或缺的工具…

人工智能在C/C++中的应用

随着技术的飞速发展,人工智能(AI)已经成为我们日常生活中不可或缺的一部分。从智能手机的语音助手到自动驾驶汽车,AI的应用无处不在。在众多编程语言中,C和C因其高性能和灵活性,成为实现复杂AI算法的理想选…

HivisionIDPhotos-证件照-免费开源的AI证件照制作工具

HivisionIDPhoto 旨在开发一种实用的证件照智能制作算法。 它利用一套完善的模型工作流程,实现对多种用户拍照场景的识别、抠图与证件照生成。 HivisionIDPhoto 可以做到: 轻量级抠图(仅需 CPU 即可快速推理)根据不同尺寸规格生…

《Nginx核心技术》第16章:实现Nginx的高可用负载均衡

作者:冰河 星球:http://m6z.cn/6aeFbs 博客:https://binghe.gitcode.host 文章汇总:https://binghe.gitcode.host/md/all/all.html 星球项目地址:https://binghe.gitcode.host/md/zsxq/introduce.html 沉淀&#xff0c…

2024 年高教社杯全国大学生数学建模竞赛题目-C 题 农作物的种植策略

根据乡村的实际情况,充分利用有限的耕地资源,因地制宜,发展有机种植产业,对乡村经济 的可持续发展具有重要的现实意义。选择适宜的农作物,优化种植策略,有利于方便田间管理,提 高生产效益&#…

HTTPS访问是什么?

HTTPS(Hypertext Transfer Protocol Secure)是一种安全的网络传输协议,它基于HTTP(Hypertext Transfer Protocol,超文本传输协议)进行工作,但增加了安全性的要求。HTTPS通过在客户端&#xff08…

014.PL-SQL编程

我 的 个 人 主 页:👉👉 失心疯的个人主页 👈👈 入 门 教 程 推 荐 :👉👉 Python零基础入门教程合集 👈👈 虚 拟 环 境 搭 建 :👉&…

lvs dr模式集群搭建

lvs-dr模式 集群搭建 编辑zyj86主机网卡配置文件 cd /etc/sysconfig/network-scripts/ cp ifcfg-ens160 ifcfg-ens160:1 vim ifcfg-ens160:1TYPEEthernet PROXY_METHODnone BROWSER_ONLYno BOOTPROTOstatic DEFROUTEyes IPV4_FAILURE_FATALno IPV6INITyes IPV6_AUTOCONFyes IP…

经验笔记:持续集成/持续部署(CI/CD)流程

持续集成/持续部署(CI/CD)流程经验笔记 随着软件开发的快速发展,持续集成(Continuous Integration, CI)和持续部署(Continuous Deployment, CD)已经成为现代软件工程不可或缺的部分。CI/CD不仅…

Transformer、BERT、GPT、T5、LLM(大语言模型),以及它们在实际行业中的运用

作为AI智能大模型的专家训练师,我将从主流模型框架的角度来分析其核心技术特点及其在不同实际行业中的应用。我们重点讨论以下几个主流模型框架:Transformer、BERT、GPT、T5、LLM(大语言模型),以及它们在实际行业中的运…

【unity小技巧】使用Unity的Animation Layer和Avatar Mask把多个不同动画组合使用,实现人物不同部位播放不同的动画

文章目录 前言如何使用Unity的Animation Layer和Avatar Mask把多个动画组合使用游戏角色的疲劳感是如何制作的?利用Animation Layers中的additive模式把多个动画混合在一起如何制作角色的受伤状态?Unity动画层级(Animation Layer)…

ChatGPT 3.5/4.0使用手册:解锁人工智能的无限潜能

1. 引言 在人工智能的浪潮中,ChatGPT以其卓越的语言理解和生成能力,成为了一个革命性的工具。它不仅仅是一个聊天机器人,更是一个能够协助我们日常工作、学习和创造的智能伙伴。随着ChatGPT 3.5和4.0版本的推出,其功能和应用范围…

Ftrans无缝替代FTP方案:保障数据传输的安全性与合规性

FTP(文件传输协议)是一种用于在网络上进行文件传输的标准网络协议,历史悠久并且被广泛使用。但随着业务规模和文件体量的快速增长,在应用实践中,FTP存在一些安全和效率问题。因此政府单位需要可以平滑替代FTP的文件传输…

【H2O2|全栈】关于HTML(2)HTML基础(一)

HTML相关知识 目录 前言 准备工作 标签的具体分类(一) 本文中的标签在什么位置使用? 属性 标题标签 段落标签 文本格式化标签 分类汇总 计算机输出标签 ​编辑分类汇总 引文,引用标签 分类汇总 预告和回顾 UI设计…

消息中间件都有哪些

RabbitMQ:这可是一个开源的消息代理软件,也叫消息中间件。它支持多种消息传递协议,可以轻松地在分布式系统中进行可靠的消息传递。 Kafka:Apache Kafka是一个分布式流处理平台,它主要用于处理实时数据流。Kafka的设计初…

C#学习 深入理解委托、匿名方法、Lamda表达式、Linq;

目录 一.委托 1.1 什么是委托 1.2 委托的使用 二.匿名方法和Lamda表达式 2.1 什么是匿名方法 2.2 Lambda表达式 三.Linq 3.1 Linq理解 3.2 Linq的扩展方法 一.委托 1.1 什么是委托 委托和类一样,是具有特定参数列表和返回值类型的方法函数的…