一次 xss 意外通杀了整个爱奇艺主站

Andrew 2020-10-30
专栏 - 事件 发布于 2020-10-30 18:31:36 阅读 684 评论 0

0x01 xss类型:

1.反射型XSS (你提交的数据成功的实现了XSS,但是仅仅是对你这次访问产生了影响,是非持久型攻击)

2.存储型XSS (你提交的数据成功的实现了XSS,存入了数据库,别人访问这个页面的时候就会自动触发)

3.DOM型XSS(通过js来触发xss攻击)

0x02 XSS能做什么?

1.盗取Cookie(用的最频繁的)

2.获取内网ip

3.获取浏览器保存的明文密码

4.截取网页屏幕

5.网页上的键盘记录

0x03 怎么检测是否存在XSS?

啊哈哈,见到框框就插呗,想办法让浏览器弹窗(alert, 例如:

1.最经典的弹窗语句:

<script>alert(1)</script>

一般证明XSS是否存在,就是在正常页面传参,然后构建参数让网页弹窗。如果弹窗成功,就存在XSS。
XSS所执行恶意代码实际上是JS语句,我们一般需要构建一对闭合标签 (这个是定义Js的标签) 但是也是有其他可以执行的语句,具体如下:

2.伪协议弹窗经典代码:

<iframe src=javascript:alert(123)>

3.事件型弹窗经典语句

<img src='a' onerror=alert(1) /> 事件也是可以执行JS的:例如: onerror=alert(1)  该句的意思就是在加载文档或图像时发生错误时,会执行alert(1)  

一次xss意外通杀了整个爱奇艺主站

0x04 漏洞挖掘

1. Self xss ?

刚开始在登录界面扫码登录的时候,我是很惊讶的,因为我也不知道xss是在哪触发,而且在edu群上看到某个大佬说:”他们团队挖到好几个爱奇艺的漏洞”,这让我更深信不疑地认为是碰巧触发了他们payload。可是我又很好奇在哪里触发的,于是开始功能点审查。

后来在昵称处发现了xss语句。

忽然脑海里浮现出一个月前我在app端写过xss语句,那时候APP端并没有弹窗,可是今天阴差阳错在web端触发了。

啊哈哈,这时候我才知道,原来触发的是我自己的payload,就这样开开心心拿去提交了。

啊哈哈,这时候我才知道,原来触发的是我自己的payload,就这样开开心心拿去提交了。

不过这样提交,爱奇艺src还是不收,他们觉得这是self-xss危害不大,直接驳回了我的漏洞。

2. 不仅仅是 self xss

之后过了几天,我也没找到能让其他账户访问个人中心的办法,但我觉得不能放弃这么一个存储型xss。

于是我又对功能点进行排查,发现进入查看粉丝列表、圈子、视频、订阅处这几个位置也弹窗了。

这时候只要我们只要把页面链接,发送给其他人,让对方访问即可弹窗(触发恶意代码)。

再次证实这里存在存储型xss。

3. 更多xss

参考前面思路:爱奇艺主站昵称处没有过滤,导致其他功能点都触发xss,并且各分站都存在反射xss,那么我们可不可以在视频上传处,上传个xss视频呢,于是我把经典xss语句打入上传视频的标题处,然后保存。

不过这时候并没有弹窗:

接下来我们访问数据管理-》查看粉丝列表-》点击视频,这时候出现了弹窗,因为这里我上传了四个测试视频,于是弹窗四次。

而且重新访问也依旧弹窗。

说明存在存储型xss。

https://www.iqiyi.com/paopao/u/1676657674/...

这时候我们只要把页面链接发给其他人访问,即可窃取对方的cookie,而且上传视频标题处没有做任何限制。

利用起来危害极大。

啊哈哈,你以为就这样结束了,不不,后面还有惊喜。

这里还是和前面一样,先上传视频,把经典语句xss打入上传视频的标题处。

(漏洞已修复,目前不会弹窗)

这时候就需要寻找其他功能点,看看是否能访问视频就弹窗,这时候我发现了播单功能。

先新建播单,选择带有xss语句的视频等待审核通过。

这时候刷新发现弹窗了。

这里我选择了三个视频,所以弹窗三次。

这时候我们只要把链接发给其他人即可触发弹窗。

最后审核了一天半吧,下午安全开发哥哥审核了,然后我很愉快地获得70金币。整个页面似乎要全改版了。

其实我还发现其他地方的xss漏洞,这么一改,应该得重新找了。啊哈哈。

4. 大胆猜测

根据前面的昵称处和视频处的xss漏洞,我有个大胆的猜测,它可能并没有过滤xss语句,只是屏蔽了

于是我在点进播单里的视频,发现弹窗,并且这里有个很有意思的地方,只要加入url末尾处加?list=19rqxbpnta,任何视频都会弹窗

不过这个我并没有提交,最近这阵子被修复了,不知道被哪个孩子交了,挺心疼的。

除此之外,我今晚还发现一个更有趣的弹窗,这里的思路呢,主要是有一个xss疯狂追求者,一直在我xss视频下评论1

这时候我想到一个问题,如果把app的当前页面链接发送给别人,那么会不会也会造成xss攻击呢。

于是我在一个存在xss的视频下写好评论,并且在app端把评论当前的页面链接复制发送给其他人,访问后发现也会造成xss。

事实证明我的想法是正确的。http://m.iqiyi.com/m5/bubble/comment_c5706307029116621.html?platform=10&p1=2_22_222&social_platform=link![](https://mmbiz.qpic.cn/mmbiz_png/BwqHlJ29vcrwGvv2icWondic3EqM91suM8fQNhibXDm3h8UtyAlib3ZAJ8SE5S7V3U0V2DoRdl3nt2Gavu16LL1gTw/640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1)

0x05 结尾:

其实爱奇艺用户昵称和视频标题xss漏洞只是修复了我提交的页面,那些没有发现的页面依旧存在存储性xss,如果你有耐心的话,可以找一找。

例如web端昵称处一直没修复,导致各分站都存在反射型xss。

原创: 掌控安全-hpb1
原文链接:https://mp.weixin.qq.com/s/4Vkz_xrNcZICJwD...

本作品采用《CC 协议》,转载必须注明作者和本文链接
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!
请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!