【网络攻击】XSS和CSRF

XSS:跨站脚本攻击

用户访问被嵌入脚本的web页面,触发脚本的执行,导致用户的cookie信息被黑客获取,以用户的身份执行执行操作

这个被嵌入脚本web页面,可能是黑客的钓鱼网站,也有可能是别黑客发现漏洞植入脚本的正常服务器

防止:

  1. 过滤任何用户的提交内容,防止脚本被存储到服务器
  2. 对输出进行HTML编码,防止脚本的执行

CSRF: 跨站请求伪造

已经处于登陆状态的用户,访问黑客的链接导致,黑客直接以已经登录的用户身份,发起黑客需要的请求。

防止:

  1. 检查http首部的refer字段的值,是否是网站自身的

    优点:简单
    缺点:
    1. 不安全,refer可以通过浏览器的漏洞进行修改
    2. refer可以被禁止

  2. 通过在请求中携带额外的随机token并验证,token不通过cookie发送到服务器

    优点:比refer更安全
    缺点:实现稍微复杂,需要考虑 token的存储安全

  3. 在 HTTP 头中自定义属性并验证
    通过 XMLHttpRequest 这个类,可以一次性给所有该类请求加上 csrftoken 这个 HTTP 头属性

    优点:简单,token不容易泄露
    缺点:使用场景少,局限性大

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
XSS(跨站脚本攻击)和 CSRF(跨站请求伪造)是两种常见的网络安全攻击方式,它们的目标和实现方式不同。 XSS攻击主要针对的是网页应用中存在的漏洞,攻击者通过注入恶意的脚本代码到网页中,使得用户在浏览网页时执行该恶意代码,从而达到攻击的目的。XSS攻击可以分为存储型、反射型和DOM型三种形式。存储型XSS攻击是将恶意代码存储到服务器端,当用户访问包含恶意代码的页面时,恶意代码会从服务器端获取并执行;反射型XSS攻击是将恶意代码作为URL参数或表单提交到服务器端,服务器端将恶意代码返回给浏览器并执行;DOM型XSS攻击则是通过修改网页的DOM结构来实现攻击。 CSRF攻击则是利用用户已经登录认证的状态下,诱使用户点击恶意链接或访问恶意网页,从而触发已登录用户的操作。攻击者通过伪造请求,使用户在不知情的情况下执行了非自愿的操作。例如,攻击者可以通过发送包含恶意请求的图片链接或者钓鱼网站来实施CSRF攻击。CSRF攻击的关键在于利用了用户的身份认证信息。 综上所述,XSSCSRF的主要区别在于攻击的目标和实现方式。XSS攻击主要针对网页应用中的漏洞,注入恶意脚本代码;而CSRF攻击则利用用户已登录认证的状态下,伪造请求进行非自愿的操作。为了防范这两种攻击,开发者需要在编写代码时注意输入验证、输出编码以及限制权限等安全措施。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值