近日,一张二维码的照片在网上流传,使用 微信扫描二维码 或打开该图片将导致微信出现闪退。如果出现多次闪退,微信将进入安全模式,账号被强制登出。

微信扫描二维码

目前,用户已经发现,导致该问题的是微信扫码引擎中的一个内存读写Bug,此类恶意制作的图片,将会通过无效的内存访问导致wechat_qrcode模块崩溃。

具体来说,该问题出现在DecodedBitStreamParser::decodeByteSegment中。

如果传入的参数bits_是内容为空,但长度非零的ByteSegment,此时bits.available () 将返回0,而count也将被更新为0。

但与此同时,nBytes并没有更新,而是保持非0,这将导致后续的append函数访问空指针readBytes读取nBytes数据,导致程度异常终止。

微信扫描二维码

目前,已经有用户在提交了该Bug的代码修复,预计微信官方将在下个版本整合用户的修复补丁。

虽然闪退并不会对微信的使用造成严重影响,但基于使用安全考虑,在微信官方修复问题前,最好还是不要在微信中打开或扫描存在问题的二维码。

免责声明:素材源于网络,如有侵权,请联系删稿。