CSRF 和 XSS 攻击是什么

CSRF(跨站请求伪造,Cross-Site Request Forgery)和 XSS(跨站脚本攻击,Cross-Site Scripting)是两种常见的 Web 安全漏洞。它们主要涉及的领域是 Web 应用程序的安全和用户数据的保护。

CSRF

CSRF 攻击是指攻击者利用用户在另一个站点上的身份,并在用户不知情的情况下执行或访问受害者站点的某些操作。例如:当用户在已登录的情况下访问攻击者的网站,攻击者可能通过欺骗用户访问受害者网站,从而在受害者网站上执行未经授权的操作。

场景:

  1. 用户访问 A 网站并登录,此时 A 网站会给 A 用户的浏览器存储一个 Cookie
  2. 用户在未退出登录 A 网站的情况下,访问 B 网站
  3. 黑客以 B 网站的 Domain 和 A 网站的 Cookie 给 A 网站发送请求
  4. A 网站没有防范就会攻击成功,获取到用户权限

常见的 CSRF 攻击防范方法有:

  1. 使用 CSRF Token:在表单中添加一个随机生成的 token,服务器会验证这个值,以确保只有合法的请求被接受。
  2. 验证 REFERER:检查 HTTP 请求头中的值,确保请求来自合法的域名。
  3. 添加 SameSite Cookie 属性:限制浏览器只能在同一个域下发送 cookie,不会在跨站请求中发送。

XSS

XSS 是一种允许攻击者将恶意代码(通常是 JavaScript 脚本)注入受害者网站中的漏洞。这种攻击的主要目的是窃取用户的敏感信息,诸如登录凭据、会话 cookie 或其他个人信息。XSS 攻击可以分为三种类型:存储型、反射型和 DOM 型。

场景:

  1. 公司的网站有一个搜索页面,会根据 URL 参数决定搜索内容
  2. 像类似 http://xxx/search?keyword="><script>alert('XSS');</script> 这样的内容就会被提交
  3. 浏览器无法分辨这是恶意代码,就会执行其中的脚本内容,弹出一个警告。如果内容更复杂那就会造成更大的危害

常见的 XSS 攻击防范方法有:

  1. 输入过滤:验证用户提交的数据,限制非法字符和标签。
  2. 输出转义:当显示用户输入的数据时,使用适当的转义或编码避免执行恶意代码。
  3. 启用内容安全策略(CSP, Content Security Policy):设置安全策略规则,限制页面资源的来源和类型,从而降低 XSS 攻击的风险。
相关推荐
用户962377954484 天前
VulnHub DC-3 靶机渗透测试笔记
安全
叶落阁主5 天前
Tailscale 完全指南:从入门到私有 DERP 部署
运维·安全·远程工作
用户962377954487 天前
DVWA 靶场实验报告 (High Level)
安全
数据智能老司机7 天前
用于进攻性网络安全的智能体 AI——在 n8n 中构建你的第一个 AI 工作流
人工智能·安全·agent
数据智能老司机7 天前
用于进攻性网络安全的智能体 AI——智能体 AI 入门
人工智能·安全·agent
用户962377954487 天前
DVWA 靶场实验报告 (Medium Level)
安全
red1giant_star7 天前
S2-067 漏洞复现:Struts2 S2-067 文件上传路径穿越漏洞
安全
用户962377954487 天前
DVWA Weak Session IDs High 的 Cookie dvwaSession 为什么刷新不出来?
安全
cipher9 天前
ERC-4626 通胀攻击:DeFi 金库的"捐款陷阱"
前端·后端·安全
一次旅行12 天前
网络安全总结
安全·web安全