欢迎来到 黑吧安全网 聚焦网络安全前沿资讯,精华内容,交流技术心得!

使用Sboxr实现DOM XSS漏洞的自动挖掘与利用

来源:本站整理 作者:佚名 时间:2019-04-15 TAG: 我要投稿


这一系列文章将为大家展示如何在单页或JavaScript富应用上,使用Sboxr实现DOM XSS漏洞的自动挖掘与利用。我们将以https://domgo.at靶场中的10个DOM XSS的小练习为例,并为检测到的问题创建简单的PoC。
本文包含了前两个练习的设置说明和解决方案。其余的我们将在后续的文章中陆续为大家呈现。我们还将在Appsecco books发布一个gitbook,其中包含了所有练习的解决方案,网址为https://appsecco.com/books/。
什么是 DOM XSS/Client XSS
纵观XSS的历史,DOM或客户端XSS在测试者和开发人员的心中都占有着特殊的地位。使用标准的XSS检测技术往往很难检测到它们,这种XSS漏洞大多发生在JS富应用上。
DOM型XSS漏洞是基于文档对象模型(Document Objeet Model,DOM)的一种漏洞。DOM是一个与平台、编程语言无关的接口,它允许程序或脚本动态地访问和更新文档内容、结构和样式,处理后的结果能够成为显示页面的一部分。DOM中有很多对象,其中一些是用户可以操纵的,如uRI ,location,refelTer等。客户端的脚本程序可以通过DOM动态地检查和修改页面内容,它不依赖于提交数据到服务器端,而从客户端获得DOM中的数据在本地执行,如果DOM中的数据没有经过严格确认,就会产生DOM型XSS漏洞。
Sboxr
Sboxr是一个用于测试和调试Web应用程序的工具,尤其是那些拥有大量JavaScript的应用程序。Sboxr处在浏览器和服务器之间运作,并注入它自己的JS代码(被称为DOM传感器),来监控JS使用,源,接收器,变量分配,函数调用等。然后,它会通过其Web控制台展示用户控制的数据的视图。
设置 Sboxr 和 Chrome
这里我使用的系统为Ubuntu 18.04,浏览器为Chrome 72。你可以遵循以下步骤进行设置:
获取Sboxr – https://sboxr.com/
Sboxr需要.NET Core SDK的支持,你可以按照https://dotnet.microsoft.com/download/linux-package-manager/ubuntu18-04/sdk-current上的说明,在Linux上进行安装。如果是Windows,请按照https://dotnet.microsoft.com/download上的说明进行操作
安装完成后,通过运行dotnet Sboxr.dll启动Sboxr
这将在3333端口上启动Sboxr Web界面(用于管理和分析发现的问题),端口3331为代理端口。
如果你希望使用Burp或其他代理,请浏览到http://localhost:3333/console,并单击HTTP Sensor设置上游代理(例如Burp或OWASP ZAP)的IP地址和端口。

设置完成后,我们还需要配置浏览器向Sboxr发送流量(然后可以转发到Burp或OWASP ZAP)。

Sboxr目前尚不支持SOCKS代理,因此你需要使用Burp或OWASP ZAP拦截流量。
如果是HTTPS站点Sboxr可能无法正常工作,因为没有要导入的证书。因此,我们使用带有–ignore-certificate-errors标记的Chrome忽略证书错误。
在Linux上,命令如下:
mkdir -p ~/.chrome;/opt/google/chrome/chrome -incognito --ignore-certificate-errors --proxy-server=http=http://localhost:3331\;https=http://localhost:3331 --user-data-dir=~/.chrome
在Windows上,操作如下(假设为默认安装路径):
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" -incognito --ignore-certificate-errors --proxy-server=http=http://localhost:3331;https=http://localhost:3331 --user-data-dir="C:\Users\%Username%\AppData\Local\Temp\TestChromeProxy"
DOM XSS 的检测和利用
下面我将为大家展示前两个DOM型XSS的小练习。
Exercise 1
打开https://domgo.at/,然后单击左侧选项栏中的Exercise 1。
切换到Sboxr控制台,并单击Sboxr侧栏中的Code Execution

[1] [2]  下一页

【声明】:黑吧安全网(http://www.myhack58.com)登载此文出于传递更多信息之目的,并不代表本站赞同其观点和对其真实性负责,仅适于网络安全技术爱好者学习研究使用,学习中请遵循国家相关法律法规。如有问题请联系我们,联系邮箱admin@myhack58.com,我们会在最短的时间内进行处理。
  • 最新更新
    • 相关阅读
      • 本类热门
        • 最近下载