不过,我又被打脸了。
iOS 又出问题了 就在最近,有位安全研究员发现自己的 iPhone 在加入一个名为“%p%s%s%s%s%n”的 Wi-Fi 网络后,Wi-Fi 功能就再也打不开了。
恐怖的是,当 Wi-Fi 功能被禁用后,不管是改变 Wi-Fi 的 SSID,重启手机还是路由器都起不到任何作用。手机连不上 Wi-Fi 有多痛苦应该不用我多说了吧。(不要去尝试,也不要去整蛊身边的苹果用户)
而蓝牙功能不会被这段代码所影响,初步猜测是因为蓝牙可以被随意更改名称,并不会出现上述提到的 Bug。
还有网友表示在尝试后不但连不上 Wi-Fi,甚至连 AirDrop 都被禁用了,重启也没有任何效果,那到底咋整呢?
解决方法其实很简单,重置一下网络即可(重置手机当然也是可以,但卡贴机重置之后就要重新黑解,不得不说这是卡贴机的杀手)。 具体的操作就是,打开你 iPhone 中的设置菜单,选择【通用】进入最下方的【还原】选项,然后选择【还原网络】设置,输入你的手机密码即可完成恢复过程。这个操作主要是将网络环境还原到出厂默认状态。 等网络还原完成后,你的 iPhone 就会恢复正常。不用担心手机资料丢失,此操作只会让 iPhone “忘记”之前保存的 Wi-Fi 密码,其他不受影响。
不过对于大部分用户来说,Wi-Fi 信息被完全消除后还是挺麻烦的,每到一个地方都要重新连接 Wi-Fi,烦人。
其实不只是 iOS 出现这一类问题,国外还有某些“手贱”的网友,非要拿这段代码去测试一下除了 iOS 之外,其他的苹果设备会不会受影响,然后他的 iMac 就变成了这副模样。
其实仔细想想,这个 Bug 还是蛮恐怖的,假设一个安卓用户在公共场所打开了一个名为“%p%s%s%s%s%n”的热点,苹果用户一连接,手机的 Wi-Fi 功能就瘫痪了。
设想一下,万一是个心怀不轨的黑客呢,会不会就通过这个 Bug 去获取这些用户的内部信息呢?
一串代码就崩溃了? 可能有很多人包括我自己都好奇,为什么就这么一个看起来很“正常”的 Wi-Fi,会让 iPhone 出现问题。
国外某些工程师认为,是 iOS 对 Wi-Fi 名称的解析出现了一些问题,最终导致无法开启 Wi-Fi 功能。而主要原因就是名称中的这个“%”。 有专业人士分析,可能是由于 C 语言中 %n 用于在字符串中插入变量,而上述的 %p%s%s%s%s%n 正是以 %n 结尾,因此导致了 iPhone 无法识别到具体变量,即iOS错误地将“%”后面的字母解释为字符串格式的指定符,而不是标准文本。
所以说 iPhone 没有把“%p%s%s%s%s%n”理解成普通文字,而是当成了特殊字符串来处理,由于担心这段字符串会影响手机的安全,于是彻底关闭了 Wi-Fi 功能。
至于为什么要起这么一个奇葩的 Wi-Fi 名称,发现者表示他只是想用来发现 iOS 中的 bug..... 苹果不请你去找 bug 真是屈才了。 其实这也不是 iOS 第一次被特殊符号所影响了。
最有名的,那就是 2018 年爆发的“死亡短信/微信”时间,当时只要 iPhone 收取到一段带有某个链接的文字时,手机就会直接死机,除了强制重启别无选择。
官方解释是,因为手机在收到链接时会自动开启预览图,因为这条链接的数据量过大,无法承受,所以才会导致死机。 并且在重启后,还必须通过一些操作才能彻底消除这段文字所带来的副作用,更让人抓狂的是,修复过后很有可能会清空手机中所有的短信内容,无法找回。
我至今仍记得,当时有很多网友故意去整蛊别人,把这些特殊文字发给他之后,半小时之内他都回复不了你(忙着找原因去了),别问我为什么这么清楚,我就因此错过了一个几千万的订单。
除此之外,还有什么让 iPhone 无法进入 WhatsApp 啊、让邮件功能报废啊、不能使用地图功能啊、Safari 不能连接网络什么的,每一年基本都会爆发一次。
虽然苹果每次都会尽快对其修复,但我还是想说,专门去转发这些信息的人,你们真是闲得*疼。 不过这些错误听起来真不像是一个科技巨头所搞出来的低级错误,而且每年都出现好几次,不禁让我怀疑苹果内部是不是真出内鬼了。
木秀于林,堤高于岸,苹果本身就像是一个科技界的耀眼太阳,耀眼而又引人关注。一举一动都会有大量用户关注,一点点小小的失误都会被放大,也希望苹果能够重视下自己的 iOS 系统,这两年的体验可真不咋地啊。
最后奉劝用 iPhone 的小伙伴们,别乱搞骚操作,或升级最新版系统,尤其是开发版这种处于测试阶段的玩意。
不然一着不慎,坑到你喊妈。