当前位置: 首页 > article >正文

2024小迪安全基础入门第三课

目录

1、Web应用-防护产品-WAF保护

#Web+WAF

WAF的原理

1. 数据流监控

2. 策略匹配

3. 行为分析

4. 签名库

5.人工智能与机器学习

WAF 对 渗透测试 的影响

1. 提高攻击力度

2.延长测试时间

3. 误报与干扰

#Web+CDN

CDN的原理

1. 基本架构

2. 工作机制

袭击事件

運均衡

协议优化

DDoS应对

IP隐藏

CDN对渗透测试的影响

1. 增加信息收集努力

2.流量限制与安全策略

3.延长测试时间

4. CDN缓存机制的干扰

#Web+OSS

OSS的原理

1. 基本架构

2. 工作机制

1. 恐惧

2. RESTful接口

3. 数据片段与副本

4. 权限管理

5. 数据加密

OSS对 渗透测试 的影响

1.信息泄露风险

2. 存储桶持有

3.利用开放存储桶

4. API 滥用

#Web+反向代理

正向代理

定义

工作流程

用途

常见示例

反向代理

定义

工作流程

用途

常见示例

#Web+负载均衡

负载均衡的基本原理

负载均衡的类型

1. 基于部署位置的分类

1.1 硬件负载均衡

1.2 软件负载均衡

1.3 云负载均衡

负载均衡的常见架构

1. 双层架构

2. 主备架构

3. 分布式负载均衡

负载均衡在渗透测试中的影响


Web应用-防护产品-WAF保护

#Web+WAF

WAF的原理

1. 数据流监控

WAF客户端与服务器之间,拦截所有进入Web应用程序的HTTP/HTTPS流量。通过分析请求和响应数据,WAF能够检测和阻止非法流量定位。

2. 策略匹配

WAF依赖预先定义的规则或策略来识别攻击行为。这些策略可以基于特定模式(如SQL关键字、恶意脚本)的规则,也可以基于异常行为的动态分析。

3. 行为分析

现代WAF支持行为分析,通过记录正常的用户行为,检测这些行为的异常活动。例如:

  • 用户访问异常

  • 许多人请求

  • 犯罪的判罚行为

4. 签名库

WAF会根据签名库对请求中的特定内容(如SQL语句、不良代码片段等)进行匹配,并阻止与已知攻击特征一致的请求。

5.人工智能与机器学习

一些高级WAF会采用AI/ML技术,动态学习应用程序的正常流量模式,从而检测未知的攻击。

WAF 对 渗透测试 的影响

1. 提高攻击力度

  • 过滤恶意请求:WAF能够实时拦截SQL注入、XSS等攻击流量,使得攻击者很难直接获取服务器响应。

  • 漏洞漏洞:目标即使应用存在漏洞,WAF可能会通过规则拦截,使漏洞难以被利用。

2.延长测试时间

  • WAF增加了测试复杂性。渗透测试人员需要绕过WAF的检测机制,这可能涉及更复杂的负载构造或流量阻塞。

3. 误报与干扰

  • 有些WAF配置没有当时会出现错误报告,即正常请求被阻止,这可能会干扰渗透测试。

  • 渗透测试工具可能被WAF识别为恶意流量,导致工具失效或阻塞。

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

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

演示:雷池社区版 雷池 WAF 社区版 | 下一代 Web 应用防火墙 | 免费使用

Ubuntu20.04 + 雷池社区版

安装雷池:

雷池介绍 | 雷池 SafeLine

bash -c "$(curl -fsSLk https://waf-ce.chaitin.cn/release/latest/setup.sh)"

搭建网站:

https://zhuanlan.zhihu.com/p/705196831

docker run --name webgoat -d -p 8080:8080 -p 9090:9090 registry.cn-shanghai.aliyuncs.com/kubesec/webgoat:v2023.8

配置雷池:

添加站点-设置域名-上游地址-没真实域名修改本地host解析

#Web+CDN

CDN的原理

1. 基本架构

CDN由多个分散的边缘节点组成,这些节点部署在用户接入点附近,用于缓存静态内容(如HTML、CSS、JavaScript、图片、视频等)或处理部分动态请求。

  • 边缘节点:靠近用户的CDN服务器,用于处理用户请求。

  • 源站服务器:实际托管网站内容的服务器,只有当CDN无法提供所需资源时,才回源站请求数据。

2. 工作机制

袭击事件
  • 当用户请求资源时,CDN首先检查其边缘节点缓存。如果缓存命中,则直接返回内容。

  • 如果缓存未达到目标,边缘节点会向源站发起请求内容获取,并将其缓存以备下次请求。

運均衡

CDN通过智能调度,将用户流量分配到最优的节点,从而避免源站或单一节点过载。

协议优化

CDN支持协议优化,如HTTP/2、压缩传输、TLS加速等,进一步提高响应速度。

DDoS应对

CDN通过遍布架构和流量清洗中心,可吸收并减少大规模拒绝服务(DDoS)攻击。

IP隐藏

源站的真实IP地址通过CDN隐藏,用户只能看到CDN边缘节点的IP地址。

CDN对渗透测试的影响

1. 增加信息收集努力

  • 隐藏源站IP:渗透测试人员无法直接定位目标服务器的真实IP地址,从而难以对源站进行攻击。

  • 遮挡真实断层:CDN节点分布全球,无法通过IP定位推断源站位置。

2.流量限制与安全策略

  • 请求速率限制:CDN常配置速率限制规则,渗透测试工具(如扫描器)可能会导致高频请求被阻塞。

  • 恶意请求过滤:CDN内置安全规则可以过滤SQL注入、XSS等攻击请求,降低渗透测试的有效性。

  • 自动封禁:CDN可能对检测到的非法IP实施短时间或永久封禁,阻止进一步测试。

3.延长测试时间

由于流量需通过CDN的边缘节点,测试响应速度可能受到影响,特别是在缓存刷新或复杂回源的情况下。

4. CDN缓存机制的干扰

  • 服务器污染:渗透测试可能因为服务器干扰,无法验证漏洞真实是否存在。

  • 找到动态内容绕过:攻击者需要CDN不缓存的动态接口来继续测试。

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

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

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

Windows2016 + BT宝塔面板 + CDN服务

#Web+OSS

OSS的原理

1. 基本架构

  • 存储桶(Bucket):存储桶是OSS中的基本存储单元,用于分组管理对象数据,每个存储桶都有唯一的名称。

  • 对象(Object):对象是存储的数据实体,包括对象数据和元数据。每个对象通过一个唯一的关键标识。

  • 访问控制:通过访问策略(如权限配置、访问密钥)控制用户对存储桶和对象的操作权限。

2. 工作机制

1. 恐惧

OSS将以数据对象的形式存储,每个对象包含以下信息:

  • 数据本身(如文件内容)。

  • 元数据(如文件类型、创建时间)。

  • 唯一的目的(Key)。

2. RESTful接口

OSS通常通过RESTful API进行交互,支持HTTP/HTTPS协议。用户可以使用API上传、下载或管理对象。

3. 数据片段与副本

OSS通常采用数据分片和语音技术,将数据存储在多个物理位置,以保证高可用性和容灾能力。

4. 权限管理
  • 公共读写器:所有用户都可以访问和修改。

  • 公共读、笔记本写:所有用户都可以读取,但只有授权用户才可以写入。

  • 完全匿名:只有用户授权才可以访问。

5. 数据加密

OSS支持传输层加密(如HTTPS)和存储层加密(如服务端加密、客户端加密)以保护数据安全。

OSS对 渗透测试 的影响

1.信息泄露风险

OSS配置不当(如存储桶权限设置错误)可能导致:

  • 敏感数据泄露:如内部文档、日志、备份文件等未授权访问。

  • 元数据泄露:攻击者通过查看元数据(如文件创建时间、用户ID)获取关键信息。

2. 存储桶持有

他们的可能尝试:

  • 修改存储桶内容:如窜改文件内容,入库恶意代码。

  • 上传恶意文件:用于钓鱼攻击或传播恶意软件。

3.利用开放存储桶

公共仓储桶可能被占用:

  • 存储液压内容:攻击者利用目标存储桶液压或目标内容。

  • 攻击跳板:上传恶意脚本或文件,诱导其他用户下载。

4. API 滥用

如果OSS API泄露或配置不当,攻击者可能利用API执行以下操作:

  • 批次下载存储数据。

  • 删除或篡改对象。

  • 创建新的存储桶或对象,增加存储成本。

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

演示:Cloudreve - 部署公私兼备的网盘系统

Windows2016 + cloudreve + 阿里云OSS

Release 3.7.1 · cloudreve/Cloudreve · GitHub

1、启动应用

2、登录管理

3、配置存储信息

4、更改用户组存储属性

阿里云OSS:

开OSS

2、新建Bucket

3、配置Bucket属性

4、配置Access访问

原理:

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

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

2)加载速度

3)存储空间

影响:

上传的文件或解析的文件均来自于OSS资源,无法解析,单独存储

1、修复上传安全

2、文件解析不一样

3、但存在AK/SK隐患

#Web+反向代理

正向代理

定义

正向代理(Forward Proxy)是代理客户端(Client)向服务器(Server)发送请求的一种代理形式。客户端通过正向代理访问目标服务器,而服务器并不知道实际的客户端是谁。

工作流程

  1. 客户端向正向代理服务器发送请求,并指定目标服务器地址。

  2. 正向代理服务器转发该请求到目标服务器。

  3. 目标服务器将响应返回给正向代理服务器,代理再将响应结果返回给客户端。

用途

  1. 访问控制

    • 用于突破防火墙或访问受限资源(如跨区域访问被屏蔽的内容)。

    • 在公司网络中,正向代理可以限制员工访问某些网站。

  2. 缓存优化

    • 正向代理可以缓存常用资源,减少对目标服务器的请求,提高访问效率。

  3. 匿名访问

    • 隐藏客户端的真实IP地址,提升隐私性。

  4. 流量监控

    • 管理员通过代理服务器监控和记录客户端的访问行为。

常见示例

  • VPN(虚拟专用网络)

  • 翻墙代理(如访问被屏蔽的网站)

  • 浏览器设置的HTTP/HTTPS代理

反向代理

定义

反向代理(Reverse Proxy)是代理服务器代表目标服务器处理客户端的请求。客户端并不知道实际的目标服务器,而是与反向代理服务器交互。

工作流程

  1. 客户端向反向代理服务器发送请求。

  2. 反向代理服务器根据请求,将其转发给后端的目标服务器。

  3. 目标服务器将响应返回给反向代理服务器,再由代理转发给客户端。

用途

  1. 负载均衡

    • 将客户端请求分配到不同的后端服务器,提升系统的整体性能和可用性。

  2. 安全防护

    • 反向代理隐藏后端服务器的真实IP地址,防止直接攻击。

    • 可作为Web应用防火墙(WAF)的一部分,过滤恶意请求。

  3. 内容缓存

    • 缓存静态资源(如图片、视频),减少后端服务器的压力。

  4. 协议转换

    • 反向代理可以在客户端和服务器之间进行协议转换(如HTTP与HTTPS之间的转换)。

  5. 集中管理

    • 通过反向代理集中处理SSL证书、身份认证等功能,简化后端服务器的配置。

常见示例

  • CDN(内容分发网络)

  • 企业内部网的负载均衡器(如Nginx、HAProxy)

  • API网关

特点正向代理反向代理
服务对象客户端服务器
作用范围客户端到代理服务器之间的请求代理服务器到后端服务器之间的请求
隐藏对象客户端隐藏真实身份服务器隐藏真实身份
主要功能匿名访问、突破限制、缓存优化负载均衡、安全防护、集中管理、缓存优化
常见应用场景访问被封锁的网站、VPNCDN、Web应用负载均衡、WAF

正代理为客户端服务,客户端主动建立代理访问目标(不代理不可达)

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

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

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

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

演示:Nginx反向代理配置

Windows2016 + BT宝塔面板 + Nginx

#Web+负载均衡

负载均衡的基本原理

负载均衡器位于客户端和后端服务器之间,充当中间层,通过特定的调度算法分配请求。其核心目标是:

  • 分散流量压力:避免单个服务器过载。

  • 提升可用性:确保当某些节点故障时,系统仍能正常服务。

  • 优化资源利用:充分利用所有服务器的计算能力。

负载均衡的类型

1. 基于部署位置的分类

1.1 硬件负载均衡
  • 特点:使用专用设备(如F5、Cisco等)进行流量分配。

  • 优点:性能强大,稳定性高。

  • 缺点:成本高,扩展性较差。

1.2 软件负载均衡
  • 特点:通过软件运行在普通服务器上实现负载均衡功能。

  • 常用工具:Nginx、HAProxy、Traefik、Apache Traffic Server。

  • 优点:灵活性高,成本低。

  • 缺点:性能可能不及硬件负载均衡。

1.3 云负载均衡
  • 特点:由云服务提供商(如AWS ELB、阿里云SLB、Google Cloud Load Balancing)提供的托管服务。

  • 优点:无需维护硬件,易于扩展和集成。

  • 缺点:依赖云服务,成本可能随流量增加而提高。

负载均衡的常见架构

1. 双层架构

  • 前端使用负载均衡器分配流量到后端服务器。

  • 后端服务器之间可以再配置内部负载均衡器。

2. 主备架构

  • 采用多台负载均衡器,其中一台为主,一台为备。当主负载均衡器发生故障时,备份节点接管流量。

3. 分布式负载均衡

  • 将流量分配到多个区域的负载均衡器,再由区域内的负载均衡器处理本地流量。

负载均衡在渗透测试中的影响

  1. 隐藏真实IP地址

    • 负载均衡器会隐藏后端服务器的真实IP,增加攻击难度。

    • 攻击者需要通过流量分析或旁路测试找到后端服务器。

  2. 流量分散

    • 负载均衡将请求分发到多台服务器,攻击流量可能被稀释,难以造成单点影响。

  3. DDoS防护

    • 负载均衡器通常具有抗DDoS功能,可以吸收和清洗大规模恶意流量。

  4. 健康检查干扰

    • 如果健康检查未配置好,攻击者可能利用其路径信息探测后端服务器状态。

  5. 增加测试复杂性

    • 渗透测试工具可能无法保证所有请求流向同一后端服务器,导致结果不一致。

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

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

演示:Nginx负载均衡配置

Windows2016 + BT宝塔面板 + Nginx

#定义负载设置

upstream fzjh{

server 120.26.70.72:80 weight=1;

server 47.75.212.155:80 weight=2;

}

#定义访问路径 访问策略

location / {

proxy_pass http://fzjh/;

}


http://www.kler.cn/a/410765.html

相关文章:

  • WebSocket详解、WebSocket入门案例
  • React 组件生命周期
  • Java基础-Java多线程机制
  • 安宝特方案 | AR助力紧急救援,科技守卫生命每一刻!
  • JS精进之Hoisting(提升)
  • ROS2 报错记录
  • 天洑参展第二届江苏省流体力学学术研讨和产学研会议
  • 第7章 HttpMessageConverter
  • 智尚招聘求职小程序V1.0.18
  • 附录2-pytorch yolov5目标检测
  • 钉钉授权登录
  • C语言使用指针的15大陷阱
  • odoo17 档案管理之翻译
  • Android 应用测试的各种环境问题记录(Instrumentation测试)
  • c#:winform 获取本地打印机列表(下拉列表实现)
  • HCIA笔记3--TCP-UDP-交换机工作原理
  • 设计模式之策略模式-工作实战总结与实现
  • CPU性能优化--skylake 微架构事件编码示例
  • Android蓝牙架构,源文件目录/编译方式学习
  • idea怎么打开两个窗口,运行两个项目
  • 【LeetCode: 743. 网络延迟时间 + Dijkstra】
  • Vercel 设置自动部署 GitHub 项目
  • .net 支持跨平台(桌面)系列技术汇总
  • transformer.js(三):底层架构及性能优化指南
  • 算法 差分修改 极简
  • 常用Rust日志处理工具教程