Ubuntu系统中居然存在任天堂红白游戏机的漏洞 |
发布时间:2016-11-22 09:32:05 浏览次数: |
信息来源:FreeBuf
最近安全研究人员Evans在Ubuntu系统中发现了一个很有意思的漏洞,这个漏洞还跟任天堂当年的8位游戏机(NES,或者叫FC)有关。Evans表示,在Ubuntu 12.04.5版本的多媒体框架中存在一个漏洞,该漏洞可以被红白机播放的声音文件(NSF文件)利用——红白机和Ubuntu系统有什么关系? 这个漏洞的根源实际上在于音频解码器libgstnsf.so,这个解码器原本是用于支持gstreamer 0.10播放NSF格式文件的——而红白机的音乐文件就是.NSF格式——Ubuntu系统在播放这种文件的时候,会实时创建红白机的6502处理器和音频硬件的虚拟环境。这样讲来也很容易理解,漏洞的影响并不算深远,研究人员也只是觉得很有趣才做了深入观察。 Evans表示:“该漏洞一定程度上依赖于默认安装过程。”因为在Ubuntu安装过程中,系统会询问“你是否期望系统能正确播放mp3文件? 用户当然会选择“是”。这样一来,系统就会安装包括streamer-1.0-pliugins-bad(包含libgstnsf.so)在内的各种包。 如果你对NSF文件感兴趣,可以点击这里下载cv2.nsf(这是游戏《恶魔城:暗影之王》的BGM)。这类文件都很小,要包含样本其实也有难度,但如果要搞点小动作还是可以的。有兴趣的同学可以点击这里下载漏洞利用文件,如上图所示。 要说攻击代码,实际上和红白机的6502处理器的确是有关的。6502 CPU是一个传奇的存在,出现在各种各样的传奇系统中,如任天堂红白机,Commodore 64,BBC微型计算系统等。这个漏洞的代码正是攻击者用据说非常晦涩的6502语言编写的,它依靠虚拟的6502处理器来解析此代码,并提供恶意指令进行攻击。Evans说,这个漏洞利用NES处理存储寄存器之间的切换,在Linux用户桌面上运行代码。详情可移步Evans的博客。 要利用该漏洞,可以采取以下方法:
虽说这是个0day漏洞,但它造成的影响并不是很严重。 而且该漏洞只存在于Ubuntu 12.04.5系统版本中,这是一个比较老的版本了。要避开这个漏洞也非常容易,只要删除libgstnsf.so即可。而且还不会引起功能的缺失,因为在NES中还有另外的解码器可以播放NSF音乐。 如果各位对6502感兴趣,欢迎点击下面的链接去研究,灰常有趣~~ |
新葡的京集团35222 版权所有