1. beplay体育能用吗网络安全学院
  2. CSRF
  3. XSS vs CSRF

XSS vs CSRF

在本节中,我们将解释XSS和CSRF之间的差异,并讨论是否是否CSRF令牌可以帮助防止XSS攻击。

XSS和CSRF有什么区别?

跨站脚本(或XSS)允许攻击者在受害者用户的浏览器中执行任意JavaScript。

跨站点伪造(或CSRF)允许攻击者诱使受害者用户执行他们不打算执行的操作。

XSS漏洞的后果通常比CSRF漏洞更严重:

  • CSRF通常仅适用于用户能够执行的操作子集。许多应用程序一般实施了CSRF防御,但忽略了一两个被暴露的动作。相反,成功的XSS利用通常可以诱导用户执行用户能够执行的任何操作,而不管漏洞出现的功能如何。
  • CSRF可以描述为“单向”漏洞,因为攻击者可以诱使受害者发布HTTP请求,但他们无法从该请求中检索响应。相反,XSS是“双向”,因为攻击者的注入脚本可以发出任意请求,读取响应并将数据渗透到攻击者选择的外部域。

CSRF令牌防止XSS攻击?

确实可以通过有效使用CSRF代币来防止某些XS攻击。考虑一个简单反映XSS可以这样利用的脆弱性:

https://insecure-beplay体育能用吗website.com/status?message= >

现在,假设弱势函数包括CSRF令牌:

https://insecure-beplay体育能用吗website.com/status?csrf-token=ciwnznlr4xbisjf39i8ywnwx9wx9wx4wfoz&message= /script>/script>/script

假设服务器正确验证了CSRF令牌,并且拒绝没有有效令牌的请求,则令牌确实可以阻止对XSS漏洞的利用。这里的线索是:“跨站点脚本”,至少在其反映表格,涉及跨站点请求。通过防止攻击者提出跨站点请求,该应用程序可以防止XSS漏洞的微不足道剥削。

这里出现了一些重要的警告:

  • 如果一个反映XSS在不受CSRF代币保护的函数中,该位点上的其他任何地方都存在脆弱性,然后可以以正常方式利用XSS。
  • 如果可剥削的XSS漏洞在站点上的任何地方都存在,则可以利用该漏洞来使受害者用户执行操作,即使这些操作本身受到CSRF代币的保护。在这种情况下,攻击者的脚本可以请求相关页面以获取有效的CSRF令牌,然后使用令牌执行受保护的操作。
  • CSRF令牌不能防止存储的XSS漏洞。如果由CSRF令牌保护的页面也是A的输出点存储的XSS漏洞,然后可以以通常的方式利用XSS漏洞,并且当用户访问页面时,XSS有效负载将执行。

免费注册以跟踪您的学习进度

通过Portswigger的网络安全学院工作的好处beplay官网可以赌beplay体育能用吗
  • 练习在现实目标上利用漏洞。

  • 记录您从学徒到专家的发展。

  • 看看您在我们的名人堂中排名。

已经有一个帐户?在此登录