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

软考-系统架构设计师 信息安全的抗攻击技术详细讲解

个人博客:blogs.wurp.top

一、核心安全目标与攻击类型对应关系

所有抗攻击技术都围绕保障CIA三元组展开:

  • 机密性 (Confidentiality) -> 对抗窃听、爬取等攻击。
  • 完整性 (Integrity) -> 对抗篡改、病毒等攻击。
  • 可用性 (Availability) -> 对抗拒绝服务(DoS/DDoS)等攻击。
    此外,还需保障:
  • 认证性 (Authentication) -> 对抗身份伪造等攻击。
  • 不可否认性 (Non-Repudiation) -> 对抗事后抵赖。

二、防御性技术架构与基础设施

这是架构师设计系统时首要考虑的全局性防御措施。

1. 防火墙 (Firewall) - 网络边界防御的核心

  • 功能:根据预定义的安全规则,控制进出网络的流量,相当于一个“过滤网关”。
  • 部署位置:网络边界(内网与外网之间)、不同安全级别的网络区域之间(如办公网与数据中心网)。
  • 主要类型
    • 包过滤防火墙:工作在网络层和传输层,基于IP、端口、协议类型进行过滤。速度快但安全性较低。
    • 状态检测防火墙现代主流。能检测连接状态(如是否是已建立连接的返回包),比简单包过滤更智能、安全。
    • 应用代理防火墙/下一代防火墙 (NGFW):工作在应用层,能理解应用层协议(如HTTP、FTP),可防御基于应用层的攻击。性能开销大但安全性最高。

2. WAF (Web Application Firewall) - 应用层防御核心

  • 功能:专门针对Web应用的安全防护设备/软件,置于Web服务器之前。
  • 防御范围:专门防御SQL注入、XSS、CSRF、文件包含OWASP Top 10 Web攻击。
  • 工作原理:基于规则库(特征码)和异常行为分析,对HTTP/HTTPS流量进行深度检测和清洗。
  • 形态:可以是硬件设备、软件产品或云服务(云WAF)。

3. IPS/IDS (入侵防御/检测系统)

  • IDS (入侵检测系统)监控网络或系统,发现攻击行为时产生报警。是一种“事后”监督机制。
  • IPS (入侵防御系统)实时检测主动阻断攻击流量。是一种“事中”拦截机制。
  • 部署:IDS旁路监听,IPS在线部署。

4. Anti-DDoS 解决方案 - 可用性保障核心

  • 目的:抵御洪水般的流量攻击,保障服务可用性。
  • 架构
    • 本地防护设备:在企业网络入口部署Anti-DDoS设备,清洗流量。
    • 云清洗服务当前主流方案。将流量引流到云上的巨大清洗中心,过滤掉攻击流量,将正常流量回源到服务器。能抵御远超企业出口带宽的超大流量攻击。

5. VPN (虚拟专用网)

  • 目的:在不可信的公共网络(如互联网)上建立一条加密的、安全的通信隧道
  • 应用场景:远程安全访问内网资源、连接不同地域的数据中心。
  • 协议:IPSec VPN, SSL VPN(常用,无需安装客户端,通过浏览器即可接入)。

三、针对特定攻击的防御技术

1. 针对 SQL 注入 (SQL Injection)

  • 根源:用户输入被拼接为SQL指令并执行。
  • 防御方案
    • 首选:使用预编译(Prepared Statement):将SQL语句的结构数据分离,用户输入永远只被当作参数处理,而非代码执行。这是最有效、最根本的解决方案。
    • 最小权限原则:为数据库操作账户分配最小必要权限,禁止使用root/sa等高权限账户进行Web查询。
    • 输入验证与过滤:对用户输入进行严格的长度、类型、格式检查。
    • 使用ORM框架:间接使用预编译,避免手写SQL字符串拼接。

2. 针对 跨站脚本 (XSS)

  • 根源:不可信的数据被当作HTML/JS代码执行。
  • 防御方案
    • 输出转义 (Html Encode):在将用户输入输出到HTML页面时,对特殊字符(如<, >, ", ', &)进行转义(如<转为&lt;)。
    • 内容安全策略 (CSP)非常有效的防御手段。通过HTTP响应头Content-Security-Policy告诉浏览器只允许加载和执行来自指定来源的脚本,从根本上杜绝内联脚本和非法外链脚本的执行。
    • 输入校验:对富文本输入,使用白名单机制进行严格的标签过滤(如使用Jsoup等库)。

3. 针对 跨站请求伪造 (CSRF)

  • 根源:浏览器会自动携带用户的认证信息(如Cookie)发起请求,攻击者诱使用户访问恶意页面,该页面会自动向目标网站发起伪造的请求。
  • 防御方案
    • Anti-CSRF Token最常用、最有效的方法。在表单或请求中加入一个随机的、不可预测的Token(存储在Session中)。服务器处理请求前验证Token的有效性。攻击者无法伪造此Token。
    • 同源策略检查:检查HTTP请求头中的OriginReferer字段,判断请求是否来自同源域名。
    • 设置Cookie属性:将关键Cookie设置为SameSite=StrictLax,限制第三方网站发请求时携带Cookie。

4. 针对 拒绝服务 (DoS/DDoS)

  • 防御方案:见上文 Anti-DDoS 解决方案
  • 扩容与负载均衡:通过增加服务器节点和负载均衡(如Nginx, F5),提高系统整体的吞吐能力和冗余性,抵抗小规模的流量攻击。
  • 限流 (Rate Limiting):在应用层对API或服务的访问频率进行限制,防止资源被耗尽(如使用Redis实现接口限流)。

四、安全开发与架构设计原则

架构师需要在系统和应用设计的源头融入安全思想。

  1. 最小权限原则:任何用户、进程或系统只拥有完成其任务所必需的最小权限
  2. 纵深防御 (Defense in Depth):不依赖任何单一的安全措施,而是构建多层次、互相冗余的防御体系。即使一层被攻破,还有其他层提供保护。
  3. 默认拒绝:除非明确允许,否则一律禁止。例如防火墙策略应先拒绝所有流量,再逐个开放需要的端口和服务。
  4. 安全 by Design:在系统设计的初始阶段就考虑安全需求,而不是事后补救。
  5. 零信任架构 (Zero Trust):“从不信任,始终验证”。不再区分内网和外网,对所有访问请求都进行严格的身份认证、授权和加密。

五、软考考点总结与应用

  1. 选择题

    • 直接考查各种防御技术的作用(如WAF防御什么?Prepared Statement解决什么问题?)。
    • 考查防火墙、IPS、IDS的区别。
    • 考查针对OWASP Top 10攻击的特定防御措施(如CSRF用Token防御)。
    • 考查安全原则(如最小权限、纵深防御)。
  2. 案例分析题

    • 题目给出一个系统,描述其存在的安全漏洞或面临的威胁。
    • 问题1:分析该系统存在哪些安全风险。(例如:SQL注入风险、DDoS风险、CSRF风险)。
    • 问题2:请为你设计一套安全加固方案。(答题套路:1. 网络层:部署防火墙、WAF、Anti-DDoS设备/服务;2. 应用层:采用预编译防注入、Token防CSRF、转义防XSS;3. 数据层:加密敏感数据;4. 管理上:建立安全开发流程、定期进行安全审计和渗透测试)。
    • 问题3:如何保证方案的有效性和可持续性?(答:引入SDL(安全开发生命周期)、建立安全运维团队、定期更新WAF规则库和系统补丁)。
  3. 论文题

    • 可能围绕“论信息系统安全架构的纵深防御体系”、“Web应用的安全防护设计与实践”、“论DDoS攻击的防护与系统高可用设计”等主题。
    • 写作时,必须结合纵深防御的思想,从网络、主机、应用、数据等多个层面展开论述,并详细说明你如何运用上述具体的抗攻击技术(如WAF、预编译、Token等)来解决实际的安全问题。

总结

对于软考架构师,掌握抗攻击技术的关键在于:

  • 建立体系化思维:从网络到应用,从技术到管理,构建多层次防御。
  • 深入理解原理:不仅知道“怎么做”,更要理解“为什么这么做”,才能灵活应用。
  • 紧跟最佳实践:掌握OWASP推荐的防御方案,如预编译防注入、CSP防XSS、Token防CSRF。
  • 权衡与决策:作为架构师,需要在安全成本、性能开销、用户体验和业务需求之间做出最佳权衡。

文章转载自:

http://ufPQAsGo.gtxrw.cn
http://Z0GeCijk.gtxrw.cn
http://UPaQ6msi.gtxrw.cn
http://nt1fZDOL.gtxrw.cn
http://S9e5OSrw.gtxrw.cn
http://JjfjsmDR.gtxrw.cn
http://fO2DLjYV.gtxrw.cn
http://HbM6cvOp.gtxrw.cn
http://fZqJgdYj.gtxrw.cn
http://bwKKJFkt.gtxrw.cn
http://3nWKWnBn.gtxrw.cn
http://f7iKOBlZ.gtxrw.cn
http://w4ukzglx.gtxrw.cn
http://uWdr0MY2.gtxrw.cn
http://s9gT0048.gtxrw.cn
http://bwjA5N5j.gtxrw.cn
http://QcyVvMi3.gtxrw.cn
http://1x7rHQse.gtxrw.cn
http://bTZbRtvO.gtxrw.cn
http://4mCXOm7A.gtxrw.cn
http://sModRgpH.gtxrw.cn
http://K8Dp9Y5z.gtxrw.cn
http://DIrpKShY.gtxrw.cn
http://qBobg6aT.gtxrw.cn
http://4zXjk7E2.gtxrw.cn
http://GPRaSXHG.gtxrw.cn
http://PRkSIt1s.gtxrw.cn
http://ISvjZOwg.gtxrw.cn
http://GdzvzXqX.gtxrw.cn
http://HhL239zB.gtxrw.cn
http://www.dtcms.com/a/380519.html

相关文章:

  • Spring Initializr(或者 IDEA 里新建 Spring Boot 项目)时 Dependencies 的选择
  • 创建一个Spring Boot Starter风格的Basic认证SDK
  • 数据库的连接_qt
  • Tessent_ijtag_ug——第 4 章 ICL 提取(1)
  • Qt开发经验 --- Qt 修改控件样式的方式(16)
  • UE5 基础应用 —— 07 - 角色蓝图 简单使用
  • Motioncam Color S + 蓝激光:3D 视觉革新,重塑工业与科研应用新格局
  • arduino编程esp8266模块并烧写联网详细教程【单片机联网】
  • 云蝠智能大模型呼叫——AI不仅能“听懂话”,更能“读懂心”
  • 交通信号灯SUMO仿真深度强化学习完整代码python
  • QT M/V架构开发实战:QStandardItemModel介绍
  • OSI(Open Systems Interconnection)七层模型详解
  • 【硬件-笔试面试题-91】硬件/电子工程师,笔试面试题(知识点:MOS管参数选型)
  • 工业相机与镜头的靶面尺寸详解:选型避坑指南
  • Python @contextmanager 装饰器
  • 关于ros2中的话题topic的一些问题
  • 计算机视觉----opencv高级操作(二)(图像的直方图均衡化,角点检测,特征提取Sift)
  • Vue 3 中监听多个数据变化的几种方法
  • nodejs 、 npm、vite的版本对应关系及创建一个指定版本的 Vite 项目
  • 5. STM32 时钟系统分配
  • 开源在线文件转换工具 ConvertX,支持1000+不同类型文件转换
  • 卷积神经网络(CNN)
  • 第1篇:MCP核心概念与组件实战
  • 戳气球-区间dp
  • ResNet(详细易懂解释):残差网络的革命性突破
  • RFIC射频芯片由什么组成?
  • OpenCV的cv2.VideoCapture如何加GStreamer后端
  • 自由学习记录(98)
  • 【爬坑指南】亚马逊文件中心 AWS S3 预签名URL 前端直传
  • 【技术教程】如何将文档编辑器集成至用PHP编写的Web应用程序中