【网络安全】常见攻击与防御:XSS、CSRF、SQL 注入、DDoS、越权访问、中间人攻击(附《思维导图》)

简介: 本文系统梳理XSS、CSRF、SQL注入、DDoS、越权访问、中间人攻击六大高发漏洞,覆盖网络层至业务层全攻击面,结合原理、危害与分层防御策略,构建纵深防御知识体系。

思维导图

网络安全常见攻击与防御系统性知识体系

一、知识体系总览

本文覆盖的XSS、CSRF、SQL注入、DDoS、越权访问、中间人攻击六大类攻击,是当前互联网中最高发、危害最广的核心风险类型,完整覆盖了从网络层→传输层→应用层→业务逻辑层的全链路攻击面,分别指向信息安全三大核心目标(保密性、完整性、可用性)的不同破坏维度。

整个知识体系遵循「攻击原理→分类场景→危害影响→防御方案」的统一逻辑,并最终形成纵深防御的全局框架。

1.1 六大核心攻击多维度对比雷达图

下图从危害等级、利用难度、检测难度、防御成本、发生频率五个维度对六种攻击进行量化对比(分值1-10,基于行业通用风险评估模型),可直观感知不同攻击的风险特征。

六大核心攻击多维度对比雷达图

六大核心攻击多维度对比雷达图-思维导图版

图表核心解读

  • SQL注入危害等级最高,利用难度较低,是业务系统最高优先级防护对象
  • DDoS防御成本最高、利用难度最高,但检测难度最低,属于基础设施层面的攻防对抗
  • XSS与越权访问发生频率最高、利用难度最低,是日常开发中最容易出现的漏洞类型
  • 中间人攻击检测难度最高,强依赖传输层加密与证书校验机制

1.2 纵深防御体系分层图谱

下图展示从外到内的六层纵深防御架构,以及每一层对应的核心防护能力与覆盖的攻击类型,呈现完整的防御体系矩阵。

纵深防御体系分层图谱

纵深防御体系分层图谱-思维导图版

图谱核心逻辑

  1. 防御体系遵循外层防流量、中层防漏洞、内层防数据的分层思路,每一层都作为下一层的兜底
  2. 单一攻击往往需要多层防御协同抵御,例如SQL注入需要WAF(边界层)+参数化查询(应用层)+最小权限(数据层)共同防护
  3. 运营管理层贯穿所有层级,是整个防御体系持续有效运转的保障

二、各类攻击与防御详解

2.1 XSS(跨站脚本攻击,Cross-Site Scripting)

核心定义

攻击者向Web页面注入恶意JavaScript脚本,当用户访问页面时,脚本在用户浏览器中自动执行,从而实现窃取信息、劫持会话、篡改页面等目的。因与CSS缩写冲突,行业简称XSS。

攻击原理与分类

核心成因是后端未对用户输入做过滤/编码,前端未对渲染内容做转义,导致浏览器将恶意输入当作合法脚本执行。

  1. 反射型(非持久型):恶意脚本拼接在URL参数中,服务器将参数直接反射到响应页面,用户点击链接触发。常见于搜索页、错误提示页,一次性生效。
  2. 存储型(持久型):恶意脚本被提交并存入数据库,所有访问该页面的用户都会触发脚本。常见于评论区、留言板、用户资料页,危害范围最广。
  3. DOM型:攻击载荷不经过服务器处理,由前端JS直接读取URL、本地存储等客户端输入并渲染到DOM中触发,完全发生在浏览器侧。

核心危害

窃取Cookie与会话凭证、劫持用户账号、页面篡改与钓鱼、挂马传播病毒、扫描内网、发起CSRF联动攻击。

体系化防御方案

  • 输入侧:对白名单之外的特殊字符进行过滤,限制输入长度与格式。
  • 输出侧:根据渲染上下文(HTML、JS、CSS、URL)做对应编码转义。
  • Cookie安全:为敏感Cookie设置HttpOnly(禁止JS读取)、Secure(仅HTTPS传输)属性。
  • 安全策略:部署内容安全策略(CSP),限制外部脚本加载、禁用内联脚本执行。
  • 开发规范:使用React/Vue等默认自动转义的前端框架,避免直接使用innerHTMLeval等危险API。

2.2 CSRF(跨站请求伪造,Cross-Site Request Forgery)

核心定义

攻击者利用用户已登录目标网站的身份,在用户不知情的情况下,诱导其访问第三方页面,从而冒用用户身份向目标网站发起非本意的操作请求。

攻击原理

浏览器的同源策略不限制跨站请求的发起,仅限制跨站响应的读取;且浏览器会自动携带目标站点的Cookie。攻击者在第三方页面构造指向目标站点的请求,用户登录状态下访问时,请求自动携带Cookie,服务器会误认为是用户主动操作。

典型攻击场景

冒用用户身份修改密码、转账付款、发布内容、关注账号、删除数据等。

核心危害

用户身份被冒用执行敏感操作,造成个人数据篡改、财产损失、账号被盗。

体系化防御方案

  • CSRF Token:服务器生成随机令牌,前端请求时携带,后端校验令牌合法性(第三方页面无法获取Token)。
  • SameSite Cookie:将Cookie设置为Strict/Lax模式,禁止第三方跨站请求携带Cookie。
  • 来源校验:验证请求头中的RefererOrigin,确认请求来自合法站点。
  • 二次验证:关键操作(修改密码、转账)强制短信验证码、支付密码等二次确认。
  • 方法限制:敏感操作接口仅允许POST请求,提高攻击门槛。

2.3 SQL注入(SQL Injection)

核心定义

攻击者将SQL命令片段插入到Web表单、URL参数、HTTP头等输入中,欺骗后端数据库执行恶意SQL语句,从而实现数据窃取、篡改、提权等操作。

攻击原理

后端代码直接将用户输入与SQL语句进行字符串拼接,未做输入校验与参数化处理,导致数据库将用户输入当作SQL指令执行。

常见分类

  • 按注入位置:GET参数注入、POST表单注入、Cookie注入、HTTP头注入(User-Agent、X-Forwarded-For)。
  • 按利用方式
    1. 显错注入:页面返回数据库错误信息,可直接获取数据。
    2. 布尔盲注:页面仅返回真假两种状态,通过逻辑判断逐位猜解数据。
    3. 时间盲注:通过sleep()等延时函数的响应时间差判断数据。
    4. 堆叠注入:同时执行多条SQL语句,可直接执行增删改、提权操作。

核心危害

数据库拖库(全量数据泄露)、数据篡改/删除、数据库提权、获取服务器操作系统权限、业务数据销毁。

体系化防御方案

  • 根本方案:使用参数化查询(预编译SQL),禁止字符串拼接SQL语句。
  • 框架规范:使用成熟ORM框架(MyBatis、Hibernate等),避免手写原生SQL。
  • 输入校验:对输入参数做白名单校验,过滤SQL关键字与特殊字符。
  • 权限控制:数据库账号遵循最小权限原则,禁止普通账号执行DROPALTER等高危操作。
  • 运维加固:关闭数据库错误信息回显,部署WAF拦截SQL注入特征载荷。

2.4 DDoS(分布式拒绝服务攻击,Distributed Denial of Service)

核心定义

攻击者控制大量僵尸主机(肉鸡),同时向目标服务器/网站发起海量恶意请求,耗尽目标的带宽、连接数、计算资源,最终导致服务无法响应正常用户请求。

攻击原理

通过控制分布式僵尸网络,以数量优势压垮目标的服务承载能力,破坏系统的可用性

主流攻击类型(按OSI层级划分)

  1. 网络层/传输层DDoS:以耗尽带宽与连接数为目标
    • SYN洪水:发送大量半开TCP连接,耗尽服务器连接表。
    • UDP/ICMP洪水:发送大量大包流量,占满出口带宽。
    • 反射型DDoS(DRDoS):伪造目标IP向开放服务(DNS、NTP、SSDP)发请求,利用响应放大效应将海量流量导向目标。
  2. 应用层DDoS:以耗尽服务器计算资源为目标
    • CC攻击:模拟大量真实用户访问动态页面、查询接口,耗尽CPU/内存。
    • HTTP洪水、DNS查询洪水:针对具体业务接口发起高频请求。

核心危害

服务中断不可用、业务营收损失、品牌声誉受损、服务器资源被打满引发连锁故障。

体系化防御方案

  • 网络层:接入高防IP/流量清洗中心,识别并过滤恶意流量;SYN Cookie技术应对SYN洪水;带宽冗余与Anycast组网分散流量。
  • 应用层:CDN缓存静态资源,分散请求压力;人机验证(滑块、验证码)区分真人与机器;接口速率限制与IP黑名单。
  • 运营侧:提前压测评估服务容量,制定DDoS应急预案与熔断机制。

2.5 越权访问(权限绕过攻击)

核心定义

攻击者绕过系统的权限校验机制,访问或操作不属于自身权限范围内的功能、数据与资源,是业务逻辑层面最常见的漏洞之一。

攻击原理

系统仅在前端做权限控制(如隐藏按钮、菜单),后端接口未做严格鉴权;或仅校验用户是否登录,未校验用户对目标资源的所有权与操作权限。

三大分类

  1. 水平越权:相同权限等级的用户,访问其他用户的私有资源。例:用户A修改URL中的订单ID,查看用户B的订单信息。
  2. 垂直越权:低权限用户访问高权限功能。例:普通用户调用管理员的用户删除、系统配置接口。
  3. 未授权访问:无需登录认证,直接通过URL访问需要权限的接口或页面。例:直接访问管理员后台路径。

核心危害

用户敏感数据泄露、业务数据被非法篡改、系统管理权限被窃取、核心业务逻辑被破坏。

体系化防御方案

  • 架构层:通过统一网关/拦截器做全局鉴权,避免每个接口单独校验。
  • 业务层:所有资源操作必须校验归属关系(如查询订单时校验订单所属用户与当前登录用户一致)。
  • 权限模型:落地RBAC(基于角色)/ABAC(基于属性)权限体系,严格控制角色与功能的映射。
  • 测试侧:开展专项越权测试,覆盖水平、垂直、未授权三类场景。

2.6 中间人攻击(MITM,Man-in-the-Middle)

核心定义

攻击者介入通信双方的链路中间,在双方不知情的情况下,窃听、拦截、篡改通信数据,而通信双方误以为正在与对方直接通信。

攻击原理

通过网络层劫持技术插入到通信链路中,打破端到端的可信通信,破坏数据的保密性与完整性。

常见实现方式

  1. ARP欺骗:局域网内伪造MAC地址,让通信双方的流量都经过攻击者主机。
  2. DNS劫持:篡改DNS解析结果,将用户引导到伪造的钓鱼站点。
  3. SSL剥离/HTTPS降级:强制将HTTPS连接降级为HTTP明文连接,窃听篡改数据。
  4. 恶意热点劫持:搭建公共WiFi恶意热点,拦截所有连接设备的联网数据。

核心危害

账号密码、支付信息等敏感数据窃听;通信内容篡改与注入;身份冒充与钓鱼诈骗。

体系化防御方案

  • 传输加密:全站启用HTTPS(TLS 1.2及以上),禁用弱加密套件。
  • 强制安全:部署HSTS,强制浏览器使用HTTPS访问,防止降级攻击。
  • 证书校验:严格验证服务器证书合法性,禁止信任自签名、过期证书。
  • 数据加密:敏感数据(密码、支付信息)做端到端加密,不依赖传输层安全。
  • 行为规范:避免在公共WiFi下进行转账、登录等敏感操作,使用可信VPN。

三、攻击体系分层全景

攻击类型 主要作用层级 核心破坏目标 风险属性
DDoS 网络层、传输层、应用层 服务可用性 可用性破坏
中间人攻击 网络层、传输层、会话层 数据窃听与篡改 保密性+完整性破坏
SQL注入 应用层、数据层 数据泄露与篡改 保密性+完整性破坏
XSS 应用层(客户端) 身份劫持与页面篡改 完整性+身份冒充
CSRF 应用层(业务逻辑) 冒用用户执行操作 完整性+身份冒充
越权访问 应用层、业务层 非法访问权限外资源 权限绕过+数据泄露

四、全域纵深防御体系

针对上述攻击,需构建从外到内的多层防御体系,而非单点防护:

  1. 网络边界层:防火墙、高防IP、CDN、WAF、流量清洗中心,抵御DDoS与已知特征攻击。
  2. 主机系统层:服务器安全加固、补丁管理、主机防火墙、入侵检测/防御系统(IDS/IPS)。
  3. 应用开发层:安全编码规范、输入输出校验、参数化查询、统一鉴权、HTTPS、CSP/HSTS。
  4. 业务逻辑层:资源归属校验、二次验证、风控策略、异常行为检测、权限模型落地。
  5. 数据存储层:数据库最小权限、数据存储加密、敏感数据脱敏、数据备份与容灾。
  6. 运营管理层:渗透测试与代码审计、安全培训、漏洞管理、应急响应机制。

相关文章
人工智能 缓存 前端开发
12722 75
|
5天前
|
人工智能 自然语言处理 安全
阿里云千问办公、Qoder Teams、Qoder CN区别与选择指南:模型能力、适用场景与最新活动参考
本文聚焦阿里云2026年推出的三款自研AI办公产品,清晰拆解千问办公、Qoder Teams、Qoder CN的差异化定位与能力边界:千问办公主打职场全场景提效,支持自然语言指令一键完成PPT生成、数据分析等高频办公任务;Qoder Teams面向程序员团队,深度整合AI代码生成、团队协同与企业知识库能力;Qoder CN则专为金融、政务等强合规场景打造,实现数据不出境与VPC私有化部署。文章同步给出分场景选型指南与最新活动定价,帮助不同类型的企业按需组合产品,实现业务岗、研发岗与强合规场景的AI能力全覆盖。
阿里云千问办公、Qoder Teams、Qoder CN区别与选择指南:模型能力、适用场景与最新活动参考
Web App开发 人工智能 API
1606 2
|
人工智能 JavaScript 开发工具
DeepSeek Harness 本地安装与使用指南
DeepSeek Harness(DSH)是DeepSeek AI开源的Agent运行框架,支持本地文件操作、命令执行与工具调用。基于Cordis插件架构,具备高扩展性与强可控性,适合开发者搭建可控Agent环境或开展模型基准测试。当前为开发者预览版,需Node.js环境,推荐先用`npx @deepseek-ai/dsh web`快速体验。
4965 0
人工智能 Java BI
1713 1
人工智能 JavaScript 测试技术
2673 2
开发工具 Swift git
2016 6
人工智能 JavaScript 测试技术
1272 5

热门文章

最新文章