003-基础入门-D盾WAF&OSS源码程序等

image-20250720164723372

知识点

本节主要内容是,遇到以下五种情况后对安全测试的影响:CDN、WAF、OSS、反向代理、负载均衡

WAF

原理:Web应用防火墙,旨在提供保护。如下图,目前产品主要集中在硬件型、软件型、云WAF、网站内置WAF(前三种比较常见)

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

image-20250720165434481

CDN

原理:CDN(Content Delivery Network)内容分发网络,旨在提高访问速度。CDN是构建在数据网络上的一种分布式的内容分发网, 可以提高系统的响应速度,也可以一定程度的拦截/防御攻击(抗DDoS)

影响:隐藏真实源IP,导致对目标测试错误

image-20250720170933888

OSS

原理:云存储服务,旨在提高访问速度

为什么要使用第三方存储?

  1. 静态文件会占用大量带宽

  2. 加载速度

  3. 存储空间

影响:上传的文件或解析的文件均来自于OSS资源,无法解析,单独存储,影响文件上传漏洞的利用

  1. 使用OSS服务,有利于修复传统网站上传安全漏洞

  2. 文件解析不一样

  3. 存在Accesskey泄露隐患:Accesskey是云服务商提供给用户用于安全认证的key,一旦泄露即可访问用户授权资源,即引入了新的云安全相关隐患

image-20250720174538058

反向代理

正向代理:为客户端服务,客户端主动建立代理访问目标(不代理不可达),如科学上网就是正向代理,客户端通过代理服务器去访问目的服务器

反向代理:为服务端服务,服务端主动转发数据给可访问地址(不主动不可达),服务端主动将流量给到代理服务器,用户只能访问到代理服务器,无法访问到服务端

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

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

注意:正向代理和反向代理都是解决访问不可达的问题,但由于反向代理中多出一个可以重定向解析的功能操作,导致反代理出的站点可能指向和真实应用毫无关系

image-20250720174626895

负载均衡

原理:分摊到多个操作单元上进行执行,共同完成工作任务。多台服务器支撑某个服务,防止单点故障,网站应用服务、数据库应用服务都可以配置负载均衡

影响:有多个服务器加载服务,测试过程中存在多个目标情况。如传统网站是1台服务器提供网站应用服务,使用负载均衡之后是3台服务器提供网站应用服务,就存在多个目标

演示案例

架构1-WAF防护-拦截安全攻击

内容:免费D盾防护软件配置

环境:Windows2012 + IIS +D盾

过程:略

结果:不安装D盾时,可以访问到提前准备好的后门文件;安装D盾后,提示“禁止访问脚本”

image-20250720165952930

架构2-CDN节点-隐藏真实源IP

内容:阿里云备案域名配置全局CDN加速服务(国内CDN厂商一般只支持已备案域名)

环境:Windows2012 + BT宝塔面板 + CDN服务

过程:略

实验:使用超级ping对某个域名进行解析

现象:发现不同地点解析到的IP地址不同。访问域名时会寻找网络最好、通信最快的CDN节点并访问该CDN节点而不是直接访问源站,CDN节点存放着源站的缓存,由此提高响应速度。

image-20250720172223788

安全意义:网站的真实数据、核心内容在源站,而不在节点处,若对该域名进行扫描,实际扫描的是CDN的内容,而不能触及网站核心。

架构3-OSS存储-独立资源文件

内容:服务器搭建网盘服务并配置OSS云存储

环境:

过程:

  1. 启动应用

  2. 登录管理

  3. 配置存储信息

  4. 更改用户组存储属性

    1. 阿里云OSS:
    2. 开OSS
    3. 新建Bucket
    4. 配置Bucket属性
    5. 配置Access访问

结果:配置OSS服务后,上传文件不再上传至当前网站目录,而是上传至OSS服务商的存储桶中

架构4-反向代理-内网应用转发

演示:Nginx反向代理配置

环境:Windows2012 + BT宝塔面板 + Nginx

过程:宝塔面板网站设置中配置反向代理,反向代理的目标URL设置为www.baidu.com,再访问网站,会跳转至百度,而访问不到我们搭建的目标网站

结果:无法访问到真正的源站点,影响安全测试的目的网站。反向代理如何配置,你就会访问到哪里

image-20250720175251313

架构5-负载均衡-多台机器服务

演示:Nginx负载均衡配置

环境:Windows2012 + BT宝塔面板 + Nginx

过程:定义Nginx负载设置

1
2
3
4
5
6
7
8
9
10
11
# 声明负载均衡站点
upstream fzjh{
# 声明负载均衡的站点,即用以下两个站点为本站提供负载均衡服务
server 47.94.236.117:80 weight=2; # weight表示权重,值越大越优先
server 47.122.22.195:80 weight=1;
}

# 定义访问路径 访问策略
location / { # 定义访问路径为根目录,即访问根目录时才调用负载均衡
proxy_pass http://fzjh/; # 触发规则名为fzjh,当http协议访问网站根目录时调用上面声明的fzjh负载均衡配置
}

站内搜索

没有找到内容!