靶场科普 | XSS靶场之实战DOM型

发表时间:2022-01-26 09:00

本文由“东塔网络安全学院”总结归纳


图片
靶场介绍

XSS靶场之实战DOM型


图片

今天,给大家介绍一下“东塔攻防世界”其中的一个靶场:XSS靶场之实战DOM型”。

一、实验介绍

1.原理

XSS又叫CSS,跨站脚本攻击,它是指攻击者利用网页开发时留下的漏洞,恶意攻击者往web页面插入恶意Script代码,当用户浏览该网页之时,嵌入其中的Web里面的script代码会被执行,从而达到恶意的特殊目的。

2.XSS危害

1)窃取管理员帐号或Cookie,入侵者可以冒充管理员的身份登录后台。使得入侵者具有恶意操纵后台数据的能力,包括读取、更改、添加、删除一些信息。

2)窃取用户的个人信息或者登录帐号,对网站的用户安全产生巨大的威胁。例如冒充用户身份进行各种操作。

3)网站挂马。先将恶意攻击代码嵌入到Web应用程序之中。当用户浏览该挂马页面时,用户的计算机会被植入木马。4)发送广告或者垃圾信息。攻击者可以利用XSS漏洞植入广告,或者发送垃圾信息,严重影响到用户的正常使用。

3.DOM型XSS

DOM-basedXSS漏洞是基于文档对象模型(Document Object Model)的一种漏洞。这种XSS与反射型XSS、持久型XSS在原理上有本质区别,它的攻击代码并不需要服务器解析响应,触发XSS靠的是浏览器端的DOM解析。客户端上的JavaScript脚本可以访问浏览器的DOM并修改页面的内容,不依赖服务器的数据,直接从浏览器端获取数据并执行。在客户端直接输出DOM内容的时候极易触发DOM型XSS漏洞,如document.getElementByld(“x’).innerHTML、document.write)等。

4.可能触发DOM型XSS的属性

document.referer属性
window.name属性
location属性
innerHTML属性
documen.write属性


二、实验目的

1.   深入理解跨站脚本攻击概念;

2.   掌握DOM型XSS原理;

3.   掌握对跨站脚本的绕过方式。


三、实验步骤

1.打开实验地址,查看实验环境,根据实验要求进行相应的操作

2.在时间内完成xss绕过操作,并做好总结,思考其他绕过xss攻击的方式


四、防御方式

DOM型XSS主要是由客户端的脚本通过DOM动态地输出数据到页面而不是依赖于将数据提交给服务器端,而从客户端获得DOM中的数据在本地执行,因而仅从服务器端是无法防御的。

其防御在于:

(1)避免客户端文档重写、重定向或其他敏感操作,同时避免使用客户端数据,这些操作尽量在服务器端使用动态页面来实现;

(2)分析和强化客户端JS代码,特别是受到用户影响的DOM对象,注意能直接修改DOM和创建HTML文件的相关函数或方法,并在输出变量到页面时先进行编码转义,如输出到HTML则进行HTML编码、输出到则进行JS编码。