WhatsApp发布安全更新修复此前可被利用安装恶意应用的漏洞
此前WhatsApp存在0day漏洞,此漏洞可被攻击者利用在受害者的手机上安装恶意应用。
此事件是金融时报最先报道的,攻击者在五月初时试图通过WhatsApp的语音电话功能呼叫用户来在他们的手机上安装恶意应用。
WhatsApp在周一发布的安全通告中证实了此消息,确认此漏洞为WhatsApp VOIP栈中的缓冲区溢出漏洞,并第一时间发布了安全更新。此漏洞可通过向目标用户发送特制的SRTCP(安全实时传输协议)包实现远程代码执行。
WhatsApp发言人表示此次攻击水很深,与部分公司和政府有莫大牵扯,并拒绝透露影响人数等具体事件细节。
虽然WhatsApp并未指出“部分公司”具体是哪些,但金融时报报道称此事件中的恶意应用是由NSO集团开发。
部分安全人员称此漏洞可能会用于攻击记者、律师等敏感职业,并称近期已经捕获到一些攻击样本。
此漏洞影响WhatsApp Android 2.19.134之前的版本、WhatsApp Business 2.19.44之前的版本、WhatsApp iOS 2.19.51之前的版本、WhatsApp Business iOS 2.19.51之前的版本、WhatsApp Windows Phone 2.18.348之前的版本以及WhatsApp Tizen 2.18.15之前的版本。
用户应及时检查自己使用使用最新版。
Checkpoint关于此漏洞(CVE-2019-3568)简要定位
Facebook技术人员称此漏洞为SRTCP协议造成的缓冲区溢出漏洞,因此通过Android新版WhatsApp的补丁中此部分修复代码进行分析:
长度检查1
此处为RTCP处理函数,修复代码将检查长度参数,最大大小为1480字节。
此函数为RTCP模块主要功能之一,在应答语音呼叫前即会调用。
长度检查2
下图中蓝色方框部分为新加入的长度检查代码,用来验证数据包的长度字段不会超长并且小于等于1480字节。