首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >这是DOM-XSS还是self-XSS,还是两者兼而有之?

这是DOM-XSS还是self-XSS,还是两者兼而有之?
EN

Stack Overflow用户
提问于 2020-06-11 09:53:32
回答 1查看 607关注 0票数 0

场景:

网页使用以下javascript行显示错误登录页

代码语言:javascript
复制
<script>
    let queryParams = new URLSearchParams(window.location.search);
    document.getElementById("message").innerText = queryParams.get("message");
    let link = document.getElementById("link");
    link.innerText = queryParams.get("linkText");
    link.href = queryParams.get("linkUrl");
</script>

最后一个javascript行允许我将javascript隐藏在网页中的链接中,如下面所示。

https://vulnerablewebsite.com/folder/custom.html?message=not+correct?&linkUrl=javascript:alert(1)&linkText=click+here+to+shine

1)用户单击此链接的缩短版本

2)用户点击“点击这里发光”

3)警报打开

我受到了这篇关于portswigger https://portswigger.net/web-security/cross-site-scripting/dom-based的文章的启发。

尤其是在这个例子中

如果正在使用JavaScript库(如jQuery ),请注意可以更改页面上DOM元素的接收器。例如,jQuery中的attr()函数可以更改DOM元素的属性。如果数据是从用户控制的源(如URL )读取,然后传递给attr()函数,那么就有可能操纵发送给XSS的值。例如,这里有一些JavaScript,它使用来自URL的数据更改锚元素的href属性:

$(function(){ $('#backLink').attr("href",(new URLSearchParams(window.location.search)).get('returnUrl')); });

您可以通过修改URL来利用此漏洞,以便location.search源包含恶意JavaScript URL。在页面的JavaScript将这个恶意URL应用到反向链接的href之后,单击反向链接将执行它:

?returnUrl=javascript:alert(document.domain)

问题:在我看来,是一种类似的攻击,但有人告诉我这是一种自我XSS。不管怎么说,我看到self期望用户在他的控制台中自粘贴javascript代码。所以我很困惑,我想知道是哪种类型的。另外,是否可以认为是中等/高度严重的漏洞?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-06-11 17:47:47

命名并不重要,但是

  • 这绝对是一个漏洞,根据CVSSv3,它可能是一个媒介,但您可以为这个特定的情况计算自己。
  • --它不是self xss,您自己通过一个链接展示了一种方式,如果攻击者发送给受害者会使页面变得脆弱。
  • --因为它完全在javascript中,所以没有必要进行服务器往返。--
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62321652

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档