chat

类似 XSS 的攻击有哪些?

很好,这个问题问得非常“安全架构层级” 👍 如果说 XSS 是前端最典型的注入攻击,那它只是冰山一角。和 XSS 同一“家族”的攻击,其实是一个完整的攻击谱系。

我给你按「攻击本质」分类,帮你建立一套安全认知地图。


一、和 XSS 同级的“注入类攻击”(最危险家族)

它们的共同点:

把恶意内容当成指令执行

1. SQL 注入(SQL Injection)

把用户输入拼接进 SQL 语句。

例子原理:

用户名: admin' OR '1'='1

危害:

  • 数据库被拖库
  • 数据篡改
  • 权限绕过

✅ 防御:

  • PreparedStatement
  • ORM 参数绑定
  • 禁止字符串拼接 SQL

2. OS 命令注入(Command Injection)

攻击者让服务器执行系统命令:

; rm -rf /

常见场景:

  • 调用 shell 执行命令
  • 文件处理系统

✅ 防御:

  • 禁止拼接 shell 命令
  • 使用白名单参数
  • 最小权限原则

3. LDAP 注入

类似 SQL,只不过目标是 LDAP 目录服务。

危害:

  • 绕过认证
  • 获取组织架构、用户信息

4. XPath 注入

针对 XML 查询语言的注入攻击:

  • 常见于老系统、政企系统

二、Web 权限类攻击

5. CSRF(跨站请求伪造)

伪造用户身份发请求:

场景: 用户登录状态下访问恶意网站 → 自动向你系统发请求。

危险操作:

  • 转账
  • 修改密码
  • 删除数据

✅ 防御:

  • CSRF Token
  • SameSite Cookie
  • Referer 校验

6. IDOR(越权访问)

直接修改参数获取他人数据:

/api/order?id=10001 → 改成 10002

危害:

  • 任意查看他人数据
  • 修改他人资源

✅ 防御:

  • 每次校验当前用户权限
  • 不能只靠前端控制

7. 逻辑漏洞攻击

利用业务规则盲区:

  • 重复领取优惠券
  • 越界操作
  • 多次退款

这是安全中最难防的一类,非常常见。


三、浏览器与前端相关攻击

8. Clickjacking(点击劫持)

覆盖透明 iframe,引诱用户点击:

  • 用户以为点 A,实际上点 B

✅ 防御:

X-Frame-Options: DENY

9. DOM 型攻击

类似 XSS,但在浏览器 JS 中产生:

location.hash 注入
innerHTML 拼接

四、会话与身份攻击

10. Session 劫持

通过:

  • XSS + Cookie 窃取
  • 网络中间人

✅ 防御:

  • HttpOnly
  • Secure Cookie
  • HTTPS

11. 重放攻击(Replay)

截获请求包重复发送。

常见于:

  • 登录
  • 支付接口

✅ 防御:

  • nonce + timestamp
  • 请求签名

12. 暴力破解 & 撞库

  • 密码组合爆破
  • 数据库泄露后的账号尝试

✅ 防御:

  • 登录限流
  • 验证码
  • 失败锁定

五、供应链攻击

13. 依赖投毒

篡改第三方库代码:

  • NPM 后门事件
  • OpenSSL 漏洞

✅ 防御:

  • 依赖审计
  • 锁版本
  • SBOM

六、文件与上传攻击

14. 文件上传漏洞

上传:

  • WebShell
  • 木马脚本

✅ 防御:

  • 严格限制扩展名
  • MIME 验证
  • 存储隔离

七、信息泄露类攻击

15. 敏感信息泄露

  • 配置文件暴露
  • 日志打印密码
  • 接口直接返回密钥

八、综合对比:XSS 在攻击体系中的位置

安全攻击谱系图:

注入类:
  ├── XSS
  ├── SQL Injection
  ├── Command Injection
  └── LDAP 注入

会话类:
  ├── CSRF
  ├── Session Hijacking
  └── Replay

授权类:
  ├── IDOR
  └── 越权访问

客户端类:
  ├── Clickjacking
  └── DOM-based 攻击

九、企业级常见 Top 10 攻击(实战高频)

来自 OWASP Top 10 常见组合:

  1. XSS
  2. SQL 注入
  3. CSRF
  4. 文件上传漏洞
  5. 未授权访问
  6. 逻辑漏洞
  7. 会话固定
  8. 信息泄露
  9. SSRF
  10. 依赖组件漏洞

十、你该如何构建系统级防护

如果你是做平台架构,我建议建立四层安全体系:

层级 防护重点
前端 输入过滤 + CSP
接口 参数校验 + Token
服务 权限控制 + 认证
数据 加密 + 审计

简单总结

可以把“类似 XSS 的攻击”理解为:

一切把数据当代码执行的攻击 一切利用用户信任和系统漏洞的攻击

XSS = 浏览器执行代码 SQL 注入 = 数据库执行代码 命令注入 = 操作系统执行代码

本质都是:执行了不该执行的东西