社交网络巨头Facebook,是人们分享生活、联系交流的重要平台。
作为最大的照片分享站点,Facebook每天上传的照片高达上亿张。
然而这些上传的JPEG图像文件也有可能成为攻击者的利器。
Facebook的HHVM出现漏洞
早前,Facebook服务器中发现了两个高危漏洞,恶意攻击者会利用这些漏洞远程上传JPEG图像文件,以此来获取用户的敏感信息或者直接导致拒绝服务。
这些漏洞存在于HHVM(HipHop Virtual Machine)中。
HHVM是Facebook开发的高性能开源虚拟机,用于执行用PHP和Hack编程语言编写的程序。HHVM使用一种即时(JIT)编译器在实现Hack和PHP代码的卓越性能的同时保持PHP语言提供的开发灵活性。
由于受影响的HHVM服务器应用程序是开源且免费的,因此这两个问题也可能影响使用HHVM的其他网站,包括Wikipedia,Box,尤其是那些允许其用户在服务器上上传图片的网站。
下面列出的这两个漏洞,当传入一个特定的无效JPEG输入时,HHVM的GD扩展中可能存在内存溢出,从而导致越界读取,这也就使得恶意程序能够读取来自分配内存范围之外的数据。
CVE-2019-11925:在GD扩展中处理JPEG APP12标记时,会出现边界检查不足的问题,攻击者通过恶意制作无效JPEG输入越界访问内存。
CVE-2019-11926:在GD扩展中处理来自JPEG头文件的M_SOFx标记时,会出现边界检查不足的问题,攻击者通过恶意制作无效JPEG输入越界访问内存。
影响版本及解决
这两个漏洞影响的HHVM版本较多,包括如下版本:
目前,Facebook已经修复了这两个漏洞,HHVM团队发布了HHVM版本4.21.0、4.20.2、4.19.1、4.18.2、4.17.3、4.16.4、4.15.3、4.8.4和3.30.10。
如果您的网站或服务器也使用HHVM,强烈建议您将其更新到软件的最新版本。