基础知识:Web应用搭建

admin 2025年6月24日00:12:39评论26 views字数 3334阅读11分6秒阅读模式

Web必备四大件:系统,中间件,数据库,程序源码

基本流程:

  1. 购买云服务器,购买域名
  2. 云服务器搭建中间件
  3. 下载并上传Web程序源码
  4. 添加网站并绑定域名目录

三种常规网站搭建模式

端口模式:端口区分不同网站

  • example.top:80 PHP网站
  • example.top:8080 jsp网站
  • example.top 88 asp网站

子域名模式:不同子域名对应不同网站

  • zlog.example.top zlog博客
  • bbs.example.top dz论坛
  • oa.example.top OA管理系统

目录模式:在解析路径不同文件夹对应不同网站

  • example.top/wordpress php博客
  • example.top/dedecms 论坛

程序源码

结构组成:

数据库目录,后台目录,文件目录

php源码可以直接访问,

asp源码需llspy反编译dll文件,(现在很少用了)

java也需要反编译字节码class文件。

数据库类型

本地一致:数据库和源码放在同一台服务器

站库分离:数据库在别的服务器上存储,另一台数据库存储/云数据库

文件访问路径

1.各种访问路径和路径跳转总结

路径:从一个点到另一个点的过程称为路径。

从一个起点到某个具体资源的过程称为访问路径,访问路径的最后一个斜杠(/)后面的是资源名称

绝对资源路径是从起点http://开始到某个具体资源的前面的最后一个”/”结束的路径。

示例:

绝对访问路径:

https://localhost:8080/blog/csdn/net/index.jsp

绝对资源路径:

https://localhost:8080/blog/csdn/net/

资源名称:index.jsp

相对访问路径:/csdn/net/index.jsp

相对资源路径:/csdn/net/

绝对访问路径(URL)=绝对资源路径+资源名称

相对访问路径=相对资源路径+资源名称。

有相对访问路径就有参考路径,参考路径的前半部分一定是https://localhost:8080/

绝对访问路径=参考路径+相对访问路径。

把访问路径是否可以独立完成资源准确定位作为判别标准,可以将路径分为绝对访问路径和相对访问路径。

绝对访问路径:给定的访问路径可以准确的定位到资源

相对访问路径:必须结合参照路径才能实现资源的定位

下面所说的相对路径都是指相对访问路径。

1)以”/”开头的相对路径,开头的”/”表示根路径

a.前台路径

邮浏览器解析执行的代码中所包含的路径(出现在 css js html jsp 的路径就叫前台路径,因为浏览器访问服务器资源时会把css,js,html,jsp文件缓存到浏览器中,然后进行渲染,所以请求是从浏览器端发出的,自然由浏览器解析)(127.0.0.1=localhost=本机地址)

前台路径的参照路径是 web服务器的根路径

即:http://127.0.0.1:8080/,根路径下是多个项目。参考tomcat服务器,则根路径http://127.0.0.1:8080/ 代表webapps目录。

所以相对路径中开头的”/”即表示:http://127.0.0.1:8080/

转换工作由浏览器完成

b.后台路径

是由服务器解析执行的代码文件中所包含的路径(java 代码jsp 文件中的动态部分,xml

后台应用的参照路径是项目的根路径:

http://127.0.0.1:8080/项目名称/

所以相对路径中开头的”/”即表示:http://127.0.0.1:8080/项目名称/

可以看出,由服务器解析的根路径比由浏览器解析的多出一个”项目名称”节点,因为一个项目的根节点自然是这个项目的名称嘛。

2)以路径名称开头的相对路径

路径名前面的空白是缺省的该资源文件的参照路径。除了请求转发外,其他的路径跳转方式的参照路径都是其绝对资源路径,不管是浏览器解析还是由服务器解析。

response sendRedirect() 方法可以完成重定向,其意思是让浏览器按照其指定的路径重新发一次请求,所以显然里面的路径自然由浏览器来解析,是前台路径。其参数路径开头的”/”表示当前web服务器的根。故此,此方法不仅仅可以实现在项目内部资源的跳转,还可以实现在实现在项目之间的跳转。

可以这样访问当前项目的其他资源:

response.sendRedirect(request.getContextPath()+”/otherServlet”);

站库分离

原理:源码数据库不在同一台服务器上

存储:放在其他服务器上数据库&云数据库产品

前后端分离

原理:前端JS框架,API传输数据

影响:

1、前端页面大部分不存在漏洞

2、后端管理大部分不在同域名

3、获得权限有可能不影响后端

https://www.rxthink.cn/ 前端站点http://manage.thinkphp6.elevue.rxthink.cn/content/item 后台管理演示站点

前端就是一个纯粹的展示界面,使用JS框架,通过后端开放的API传递数据

集成软件搭建Web应用

  • 宝塔搭建Web应用:上传后门不可执行命令,也不可访问网站的上一级目录
  • PHPSTUDY搭建Web应用:上传后门可以执行命令,也可以访问网站的上一级目录
  • IIS搭建:上传后门可以执行命令,也可以访问网站的上一级目录,但是效果不太好,命令有的可以执行吗,有的不可以。

 WEB 网站相关产品

WAF

原理:Web应用防火墙,旨在提供保护

影响:常规Web安全测试手段会受到拦截

示例:免费D盾防护软件,D盾防火墙

常见WAF分类

基础知识:Web应用搭建

CDN

原理:内容分发服务,旨在提高访问速度

影响:隐藏展示源IP,导致对目标测试失误

演示:阿里云备案域名全局CDN加速服务

流程:

  1. 准备备案域名
  2. 配置宝塔的域名绑定
  3. 配置CDN加速选项
  4. 添加DNS CNAME记录

(群辉存储搭建的视频分发系统)

OSS

原理:数据以对象(Object)的形式存储在OSS的存储空间(Bucket )中。相当于一个放在公有云上的一个移动硬盘。类似于百度网盘、夸克网盘。也可以自己搭建

网盘OSD储存搭建:Cloudreve - 部署公私兼备的网盘系统

如果是纯文档也可以自己搭建:https://mrdoc.pro/

正/反向代理

正向代理为客户端服务,客户端主动建立代理访问目标(梯子)

反向代理为服务端服务,服务端主动转发数据给可访问地址

原理:通过网络反向代理转发真实服务达到访问目的

影响:访问目标只是一个代理,不是真实应用服务器

注意:正向/反向代理都是解决访问不可达问题,但是反向代理中可以通过重定向解析的功能操作,把访问指向别的web服务,导致反代理的站点指向和目标的资产没有任何关系

在宝塔面板里可以通过Nginx反向代理配置

负载均衡

原理:分摊到多个操作单元上进行执行,共同完成工作任务

影响:有多个服务器加载服务,测试过程中存在多个目标情况

演示:Nginx负载均衡配置

Windows2012 + BT宝塔面板 + Nginx

宝塔面板修改负载均衡配置,weight数值对应访问优先级。

配置好负载均衡后,对baidu.whgojp.top域名解析就会以1/2的概率分别访问这两个服务器

正常生产环境是搭建两个相同的服务,以防止一个服务器宕机后网站不能使用服务

应用程序 APP 开发架构

原生开发

使用H5语言开发

使用flutter开发(谷歌)

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

自己写程序

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

示例:ShopXO源码程序+Web界面封装为APP

本质就是常规的安全站点,就是常规手段测试即可

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

演示:HBuilderX案例

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

数据通信JS,API来完成,JS框架本身存在的安全问题,以及API安全可以测试

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

演示:ShopXP源码程序+APP打包

本质还是Web站点,常规手段测试即可

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

演示:HBuilderX案例

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

数据通信JS,API来完成,JS框架本身存在的安全问题,以及API安全可以测试

原文始发于微信公众号(老付话安全):基础知识:Web应用搭建

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年6月24日00:12:39
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   基础知识:Web应用搭建https://cn-sec.com/archives/4195228.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息