这一系列文章将为咱们展现如安在单页或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缝隙大多发生在 *** 富应用上。
DOM型XSS缝隙是根据文档目标模型(Document Objeet Model,DOM)的一种缝隙。DOM是一个与渠道、编程言语无关的接口,它答应程序或脚本动态地拜访和更新文档内容、结构和款式,处理后的成果能够成为显现页面的一部分。DOM中有许多目标,其间一些是用户能够操作的,如uRI ,location,refelTer等。客户端的脚本程序能够经过DOM动态地查看和修正页面内容,它不依赖于提交数据到服务器端,而从客户端取得DOM中的数据在本地履行,假如DOM中的数据没有经过严厉承认,就会发生DOM型XSS缝隙。
Sboxr
Sboxr是一个用于测验和调试Web应用程序的东西,尤其是那些具有很多JavaScript的应用程序。Sboxr处在阅读器和服务器之间运作,并注入它自己的 *** 代码(被称为DOM传感器),来监控 *** 运用,源,接收器,变量分配,函数调用等。然后,它会经过其Web操控台展现用户操控的数据的视图。
设置 Sboxr 和 Chrome
这儿我运用的体系为Ubuntu 18.04,阅读器为Chrome 72。你能够遵从以下过程进行设置:
获取Sboxr – https:// *** oxr.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)GoogleChromeApplicationchrome.exe" -incognito --ignore-certificate-errors --proxy-server=http=http://localhost:3331;https=http://localhost:3331 --user-data-dir="C:Users%Username%AppDataLocalTempTestChromeProxy"
DOM XSS 的检测和运用
下面我将为咱们展现前两个DOM型XSS的小操练。
Exercise 1
翻开https://domgo.at/,然后单击左边选项栏中的Exercise 1。
切换到Sboxr操控台,并单击Sboxr侧栏中的Code Execution
[1] [2] 黑客接单网
...
2019年11月,Chafer要挟小组针对土耳其政府从头运用他们在2019年早些时候运用的基础设施(Clearsky报导的活动中),特别是域名win10-update [.] com。尽管咱们没有见到...
eval是Python用于履行python表达式的一个内置函数,运用eval,能够很便利的将字符串动态履行。比方下列代码: >>> eval("1+2") >>>...
在2019年对csp研讨过一阵,发现能够经过其他的dom向存在CSP的dom注入javascript协议,来到达绕过CSP的安全防护。 众所周知,CSP(内容安全战略)有两种方法来设置,一种是经过浏览...
简化、优化你的补丁办理 许多进犯机制,都是针对未修补的体系。所以,不论你的网络是否对外开放,都应该定时更新操作体系和应用程序。尽管这个主张归于陈词滥调,但从另一个旁边面也说明晰该主张的重要性。 关于W...
APT34被认为是一个为伊朗的国家利益服务的黑客安排,首要侧重于网络间谍活动,至少从2014年开端就一向处于活泼状况。这个安排现已广泛地针对各个职业,包含金融、政府、动力、化工和电信,而且首要会集在中...