实战|从XSS到远程代码执行

VSole2021-10-14 05:41:17

Opera浏览器有一个功能是My Flow,作用是计算机和手机之间的进行图片、视频、文件等共享。要连接到手机,只需扫描二维码,然后就可以在设备之间发送东西。

使用 Opera 中的开发人员工具,发现 My Flow 界面是从域web.flow.opera.com加载的,它只是一个普通的 HTML 页面,允许查看其源代码。

查看页面的源代码,发现该页面与浏览器扩展程序通信,但从浏览器扩展列表中的opera://extensions/ 中,什么也没有出现。经过一番研究,发现它实际上是一个隐藏的浏览器扩展,可以通过使用特殊标志–show-component-extension-options打开 Opera 来显示。打开带有该标志后,找到了名为Opera Touch Background的扩展程序,并且能够查看其源代码。

回到 web.flow.opera.com 页面,开始寻找 XSS 漏洞。引起我注意的是这段代码:

const html = e.dataTransfer.getData('text/html');
const src = html.match(//);
if (src && src[1]) {
   const parser = document.createElement("span");
   parser.innerHTML = src[1];}

此功能用于拖放,当用户将图像拖放到页面上时,代码会创建一个元素,并将其innerHTML 元素设置为图像的位置。但是,这样做有两个问题:

1、在浏览器中,可以将 dataTransfer 设置为任意值。

2、在浏览器中,如果你创建一个新元素并将其 innerHTML 设置为 标签,它仍然会在后台加载。

这意味着尽管屏幕上没有加载图像,但以下内容将导致一个警告框:

const parser = document.createElement("span");
parser.innerHTML = '<1img src=x onerror=alert(1)>';

考虑到所有这些,开始验证是否存在XSS。为了展示引起 XSS 是多么容易,我创建了一个网页,一旦你开始拖动图片,几秒钟后就会重定向到 web.flow.opera.com 页面。这意味着用户只需要开始拖动图片,然后简单地松开鼠标,XSS 就会发生。

然而,为了验证存在更大的影响,开始研究 Opera Touch Background 扩展实际上做了什么。事实证明,它具有更高的权限和访问本机函数的权限,例如opr.operaTouchPrivate,它是为与 My Flow 应用程序一起使用而开发的函数集合。查看可用函数,有两种情况引起了我的注意:SEND_FILE和OPEN_FILE。

SEND_FILE 函数检索有关用户提供的文件的信息并将其上传到 My Flow;它还将文件保存到用户计算机的Downloads/MyFlow 中。OPEN_FILE 用于 My Flow 的图片文件,但在测试时我注意到你可以打开任何类型的文件,而不仅仅是图片。

有了这两个功能,我们现在可以在目标计算机上写入和打开任意文件。为了创建一个真实的场景,首先创建一个包含calc的文件exploit.bat,然后打开该文件——这将导致它被执行,打开Windows计算器:

operaTouchBackground.port.postMessage({
   type: "SEND_FILE",
   name: 'exploit.bat',
   content: 'calc',
   file_type: 'image/png'
});

operaTouchBackground.port.postMessage({
   type: 'OPEN_FILE',
   localFileName: 'exploit.bat'
});

最后,通过单击(拖动)激活漏洞所需的用户界面,我演示了如何将简单的 XSS 转换为 My Flow 系统用户的远程代码执行。

此漏洞已修复,并获得了8000$。

xssopera浏览器
本作品采用《CC 协议》,转载必须注明作者和本文链接
XSS到RCE,终获8000美刀奖励~
Opera浏览器有一个功能是My Flow,作用是计算机和手机之间的进行图片、视频、文件等共享。要连接到手机,只需扫描二维码,然后就可以在设备之间发送东西。
基于chrome的谷歌浏览器的一个漏洞将允许攻击者绕过网站上的内容安全策略(CSP),以窃取数据和执行恶意代码。 据PerimeterX网络安全研究人员Gal Weizman称,该漏洞(CVE-2020-6519)存在于Chrome, Opera和Edge,以及Win...
前言工欲善其事,必先利其器,方便好使的浏览器插件可以大大提高我们渗透测试的效率。
近日Firefox用户被敦促使用Mozilla的最新更新,来堵住一个可能允许攻击者控制受影响系统的严重漏洞。在此之前,微软Edge、谷歌Chrome和苹果Safari浏览器都进行了类似的更新,所有这些浏览器都受到WebP代码库中一个漏洞的严重影响。
近期,安全研究人员发布了有关一系列MacOS恶意软件从多个应用程序中窃取登录信息的方法的详细信息,使其幕后操控者能够窃取账户,密码等敏感信息。
跨站请求伪造,也被称为“OneClick Attack”或者Session Riding,通常缩写为CSRF或者XSRF,是一种对网站的恶意利用。 一、CSRF介绍 CSRF(Cross-site request forgery) 跨站请求伪造,也被称为“OneClick Attack”或者Session Riding,通常缩写为CSRF或者XSRF,是一种对网站的恶意利用。
XSS 扫描工具 -- DalFox
2023-03-10 10:54:24
它配备了强大的测试引擎,为渗透测试提供了许多利基功能!
它的主要特性有:1、动态地语义分析网页中的JavaScript源码,Hook关键点,利用污点分析检出 Dom-Based XSS2、极低的误报率:通过监听浏览器对话框弹出事件等进行验证。--proxy value set proxy and all traffic will be routed from the proxy server through
VSole
网络安全专家