急性蜂窝质炎

注册

 

发新话题 回复该主题

iPhone诡异Bug导致WiF [复制链接]

1#

iPhone又出现诡异的Bug了!

安全研究人员

CarlSchou在推特上公布了自己的发现,当iPhone连接经过特殊构造的SSID(无线网络名称)时,会导致iPhone无线网络功能出现异常。

这个特殊的SSID为%p%s%s%s%s%n。

小编尝试将无线路由器的SSID修改为这个名称,使用iOS14.6系统的iPhone12mini测试。

结果与CarlSchou描述的一致,无线局域网功能无法开启,无法正常上网,需要用到WiFi功能的隔空投送操作也无法进行。

包括iOS14.4.2系统也会出现这一问题,不过小编使用已经升级iOS15测试版的iPhone连接这个网络,会直接提示无法连接,没有引发异常。

iPhone连接这个奇葩的SSID出现Bug,可能的原因是iPhone对SSID名称错误的解析导致。

学习过编程的小伙伴应该了解,“%”在C等语言中不仅仅表示百分号,它还有格式化字符串的作用,iPhone连接“%p%s%s%s%s%n”的SSID后,系统代码内没有将其理解为普通字符串,而是理解成代码进行解析,这就会导致任意的内存写入和缓冲区溢出,从而破坏内存数据。而iOS看门狗机制会终止该进程,导致Wi-Fi功能被禁用。

iPhone错误日志记录

目前已经有工程师定位到会引起Bug的代码:

解决方法

经过测试发现,无法通过重启iPhone来恢复正常,目前唯一有效的方法是还原iPhone网络设置。

在系统设置-通用-还原中,点击还原网络设置,输入iPhone密码会自动重启,进入系统后无线网络功能便恢复正常。

需要注意的是,还原网络设置会清除以前连接过的Wi-Fi和密码、蜂窝网络设置等。

iPhone出现诡异的Bug这已经不是第一次了,最近的一次是在年,一组由意大利国旗Emoji和信德语组成的文字会引起iOS系统闪退或死机。

当时这个Bug被许多人利用来恶搞,不仅影响到了所有的iPhone,连iPad、AppleWatch也未能幸免。

这次出现的特殊WiFi名称导致iPhone无线网络被禁用的Bug,苹果应该会在下一个iOS系统更新中进行修复,在此之前大家看到类似名称(含有多个%百分号)的WiFi尽量不要加入。

iOS

分享 转发
TOP
发新话题 回复该主题