安卓也中招!神秘黑点表情导致程序卡死崩溃,原因竟是 Unicode 把戏

2024-07-08
来源:网络整理

每隔一段时间,iOS 就会出现一些神秘的短信“代码”,发送相关短信会导致系统或聊天应用崩溃。还记得去年微信就出现一个 Bug,导致某些品牌的手机在发送“15 条短信”后死机。

其中大部分与系统或程序的文本渲染器有关,UP主Tom发现也受到了影响。

简单来说就是如图这个“黑点”表情,发送接收没有问题,但是点击它会导致当前程序卡死崩溃,这个主要是外国人的反馈。

Tom 分析了一下,发现这又是个花招,它是计算机之间传输文本的国际标准,包含数万个字符,支持 N 种语言。

安卓表情微信怎么弄_安卓表情微信怎么删除_安卓微信表情

但是有一些不可见的字符,比如定义宽度、从左到右(从右到左,在阿拉伯语/希伯来语中使用)、连接词和高低音的代码。这个黑点的诡计在于,在使用 OBJ 编码后,我们发现我们看到的黑点后面其实还有一长串字符,作者用宽度为 0 且顺序为左右的字符把它隐藏了起来。

当你点击时, 的文本渲染器需要确定你点击了哪一个。此过程中存在一个错误,导致程序崩溃。

所以严格来说,这是安卓系统的一个BUG,而且理论上任何安卓消息APP都是如此,不只这款;其次,那个黑点其实只是创作者使用的一个表情符号,如果理解了原理,这个表情符号是可以随意替换的。

分享