为什么3232位换64位系统统的iOS设备不会受到1970年问题的影响,64位的Android设备所设置的最早时

作为用于移动设备的操作系统,仅就Google的 Android 系统和苹果的 iOS 系统而言,综合来说哪一个更为优秀?具体原因有哪些?_知识号
说三道四 最新新闻话题新闻专题评论
> 新闻内容
作为用于移动设备的操作系统,仅就Google的 Android 系统和苹果的 iOS 系统而言,综合来说哪一个更为优秀?具体原因有哪些?
请就架构、运行效率、能耗控制、安全性、用户友好度等方面尽可能详细地说明。iOS苹果公司(AppleInc.)移动操作系统Objective-CAndroidiOSvs.Android知乎用户,贫僧法号"梦遗"...INTP知乎app居然不能答题只能评论''只好网页版来回答了。苹果ios系统相较于其他智能手机系统''最牛在于,
请就架构、运行效率、能耗控制、安全性、用户友好度等方面尽可能详细地说明。iOS苹果公司(AppleInc.)移动操作系统Objective-CAndroidiOSvs.Android知乎用户,贫僧法号"梦遗"...INTP知乎app居然不能答题只能评论'只好网页版来回答了。
苹果ios系统相较于其他智能手机系统'最牛在于易用性和设计感的结合'我曾亲眼看见10岁'8岁'3岁'的娃儿拿起来就晓得手势操作'乱耍一通很快就能发现唯一的按钮就是退出键。从开始一款app'到退出它'这个完整的流程仅凭"直觉"就能走下来,这种易用程度的交互设计'是相当可怕的。反观安桌等系统(除了界面花哨)在这点上差的不是一点半点(没有冒犯之意)。
貌似只提到了"用户友好度"一个方面'这该是ios老少通吃的一个重要原因吧。司健帅,傻逼一个,一无所成,但我很善良你喜欢哪个哪个就更好钢盅郭子,iZhihu 2.10 专栏:/izhihu取个侧面——iOS 是苹果在操作系统领域积累十多年的成果Android 连 Java 源码都直接照搬,只是靠虚拟机天生的跨平台特性占据了更多份额知乎用户,原Linux脑残粉, 现懂点点iOS/Mac开发..为什么没人提及maemo / meego?简直就是一个完整的linux...Nathan,iPhone Project ManagementAndriod所谓开放平台免费体验,而Apple iOS的明确收费的方式相比之下,真正有实力的大的游戏公司(Game Loft/EA等)更愿意倾力开发iOS平台的App,以从App Store的下载分成中获得70%的收益。如Angry Bird这样的几人团队小公司就是在iOS的疯狂下载中获得巨大收益而逐渐壮大的。免费的Andriod就面临着App资源缺乏和高质量App严重不足的现象。于此同时,Andriod的开发平台,导致同样的系统面对大量配置,显示,机型完全不同的多样化终端,难于在各个平台都展现出最佳的效果和用户体验,易出现不稳定的现象。而iOS的终端为Apple自身定制,专一为自己产品设计的iOS将能更好的在终端上展现其最佳的用户体验。神之疯神,电力专业本科生,对消费电子领域相当关心iOS只要一个优点就能秒杀Android:稳定性Android只能在通用性和功能性上寻求反击机会Brian Bravo,中英笔译ios是设立了一套很好的、高度安全的(不越狱前提下)、交互性非常强的系统,然后装载于一套外表非常富有美感的机器之中,让其软件硬件相得益彰。所有用户可以想到的已经有人帮你提前想好了,用户拿到手之后需要记忆的东西也不是很多,非常容易上手,基本不用刻意去学习,最高权限也不是轻易获得的。各种各样的app也是经过严格审查过后才可以上架(甚至达到严苛的地步),供用户去玩耍的。一旦发现排名有问题,或者是无法通过审查,马上就可以让app下架处理。反观android最明显的标签就是自由开放。源码公开,各个硬件厂商都可以轻易给自己的设备安装这套工具。用户就像是进了一个大观园,各种各样参差不齐的东西都有待于你去开发,去探索 etc……只要你有胆量。所以很多手机厂商也推出自己的UI设计,比如说MIUI、华为的EmotionUI 等等。可以说android的出现,也给很多智能手机创造了便利的机会。比如说罗永浩演讲最后还感谢了google~~~但是安卓让用户非常反感的地方就是用于平板的app和用于手机的app不能无缝适配于各种智能设备。苹果可以把自己的屏幕分辨率和ppi固定,有利于开发者对app进行开发维护等等,然后有的app是专门用于iphone,有的是专门适用与ipad。这样一来,苹果的界面美感完胜android的界面。营造一整套的操作系统就像一套生态圈一样,光有内核不行,还需要海量的app支持。这两大阵营能够逐渐成熟起来并不是一朝一夕的事情。冰冻三尺非一日之寒啊。根据题意,安全性和交互体验上,苹果的ios是具备绝对优势的,而且ios和mac os也有很多改进之处是两者相互学习的成果。android属于探险者的乐园。想要单独测试android的能耗控制恐怕非常麻烦,因为安卓阵营过于庞大,不同的硬件厂商不同的电池质量等等因素都需要考虑在内。
浏览:63发布: 22:53:59
浏览:164发布: 22:32:58
浏览:120发布: 1:49:48
浏览:130发布: 11:51:20
浏览:39发布: 17:06:34
浏览:120发布: 15:39:33
浏览:100发布: 22:50:39
浏览:145发布: 16:41:33
浏览:180发布: 9:54:25
浏览:189发布: 6:03:04iPhone调到1970年变砖的原因及详细解决方案(组图),iphone4最适合ios版本,iphone5升级ios9,iphone6可以升级ios9.2吗,ios9.2有什么bug,ios版圣安地列斯bug
iPhone调到1970年变砖的原因及详细解决方案(组图)
时间:日11:36 来源:中金在线网
原标题:iPhone调到1970年变砖的原因及详细解决方案(组图)
  iPhone中文网最近在网上沸腾的iOS时间bug闹的沸沸扬扬,据说是将iOS系统时间修改为,重启后系统将永远无法开机。那么这个事情是真的吗.如果是真的有什么合理的解释吗.想要真正了解这一bug,您可能需要以下知识。  在确认这件事情的真假前,你需要了解的一个知识是Unix时间戳。  iOS系统时间使用Unix时间戳(Unix epoch)表示(time_t数据类型)。在系统中,使用系统位数个二进制位储存时间。  Unix时间戳规定,UTC时区的日 0点0时0秒的值为0,以秒为单位,即每过一秒,二进制数字加1。  不能往前调,那我把时间往后调  有些好奇的朋友拿出了自己手机,心想:既然我不能往回调,那我要是把时间使劲往后调能怎样.  细心的朋友发现了一个问题,iOS系统可以设置的最大时间是日,并不能再往后设置。苹果一定考虑到了这个问题,为什么这么说呢.  我们拿32位系统举例。在32位系统中,time_t是长度为32位的,有符号整数(signed int)类型。首个二进制位是符号位,用来储存正负。正数则为以后的时间,负数反之;其余的31位用来记数。当时间到达日 3时14分08秒时,数值位全部向前进1,导致符号位被置1,其余31位为0。介时,将出现『时间回归』的情况,系统时间变为日 20时45分52秒,系统将会出现错误。  所以为了避免这种问题导致的错误发生,将最大时间期限定在了日 23时59分59秒。这样即使超出这个范围,在18天内也不会有太大问题,况且32位设备到那个时候基本都已经淘汰了。  64位系统会不会受到这个影响呢.通过计算我们可以得到,292,277,026,596年12月04日 15时30分08秒是64位系统可以表示的最大时间。  如果你想了解更多关于32位系统在2038将出现的问题,请移步: Year 2038 problem。  64位处理器的『时间回归』问题  有了刚才的知识储备,现在我们回到正题,开始探讨搭载64位处理器设备的时间bug。  我们说到了以UTC时区的日 0点0时0秒为界限,数值为0,时间正常流逝为正数,反之为负数。不过各位需要留意的是,时间受到时区的影响。  假设一种情况,我原来是北京时区,假设将时间设置到了日 0点0时0秒,那么我将这个时间转换为UTC时间,公式:北京时间 = GMT+8 = UTC+8,那么UTC时间则为日16时0分0秒。这样就会出现时间负值,即时间回归bug触发,系统启动卡在Kernel阶段,时间错误,无法继续进行启动。  触发bug条件与表现  满足以下条件,『  时间回归』bug被触发:  系统版本:  iOS 8.0 ~ iOS 9.3 beta 3  硬件设备:搭载64位处理器的设备(即处理器为A7~A9X的设备)  进入『设置』-『通用』-『时间与日期』,关闭『自动设置』,并将时间修改为日,分秒任意。  修改时间后,需要重启设备。  Bug触发表现:iOS设备启动时,卡在苹果Logo,无法继续启动。  解决方案  针对所有64位处理器的iOS设备  拆机并拆出电池,放置10分钟后重新安装。  电量充足的情况下,等待数小时,当Unix时间戳的数值大于等于0,系统时间生效,可正常开机。  针对已越狱设备的防范  1、添加Cydia源 /  2、并安BrickingDate插件  注意:此插件只可以防止人为修改时间,并无法防止代码恶意篡改时间(安装效果如下图)。黑客可以利用此bug通过无线局域网发出范围性攻击。  当iOS设备连接到公共网络时,iOS系统将会使用NTP服务对时区、时间进行校准。如果黑客恶意的NTP攻击,将iOS系统时间校准至UTC &0的时间,那么所有用户设备均会受到此bug影响,在重新启动设备后无法使用设备。  作者:佚名来源网络)
本文相关推荐
16-02-1216-02-0516-02-0516-01-2916-01-2315-12-28谁培育了iOS系统最大的安全威胁_平说-爱微帮
&& &&& 谁培育了iOS系统最大的安全威胁
墙、感染、信任和欺骗霍炬 & 歪理邪说(wxieshuo)最近XcodeGhost导致的严重安全问题,相信大家已经从各个渠道知道了。简单概括一下,有人在中国网盘和论坛上传播了一个修改过的Xcode,这个版本的Xcode会在编译出来的App上面加一些可以被远程控制的代码,并且发送数据到某个服务器上。这是iOS出现以来,未越狱系统遭遇的最大安全威胁,在此之前苹果的Sandbox模式几乎没遇到过挑战,iPhone用户甚至大量iOS开发者都认为系统固若金汤,不可能遇到问题。在XcodeGhost开始被媒体报道的时,很多人大大低估了它的风险。我在乌云报道这个问题的当天,在朋友圈上建议大家先把中招的app都删掉,并且立刻修改iCloud密码,开两步验证。甚至遭到了不少人反对,还有好几位iOS开发者告诉我这件事没什么大问题,因为iOS有Sandbox,不会造成什么伤害。当时网易也发了一个关于云音乐被感染的说明,也是类似不痛不痒的口气。这些说法当然都是大错特错的,会有这种想法,是因为只会站在程序员角度看问题,如果对安全问题稍微有一点敏感性,就会立刻意识到这是极严重的威胁,稍微发挥一些想象力就会被吓着。所谓安全威胁,大部分都是在获取到非常有限资源的情况下,利用社会工程学(俗称:骗)来达到目的。比如,你觉得让别人看到你的通讯录有什么问题吗?很多人会认为虽然不舒服,但不会有什么威胁。实际上,骗子会从通讯录里面挑出来你父母的电话,打电话去骗他们。所以,这和iOS有没有sandbox,能不能保护系统安全没关系,只要我获得了一个机会,能控制你信任的App上弹出对话框,我就可以利用这个对话框来骗你输入系统的重要密码。程序员应该想象力再丰富一点,不要把目光局限于“系统给了我什么权限”,而是要扩展到“如果我被完全信任了,我能进行什么样的欺骗”。我不打算在这里讲太多直接的安全问题,毕竟已经很多人分析过了,在好几篇非常不完善,极大低估这次事件威胁的分析文章之后,腾讯给出了一篇相当详细的分析,比较符合我的观点,也把问题的严重性说的非常清楚。在腾讯的分析里面,说可以利用OpenUrl来操作用户拨打电话,同样又有iOS开发者说“OpenUrl不能控制iPhone打电话”。事实上,OpenUrl可以弹出一个带有固定电话号码的弹窗,上面有“拨打”和“取消”两个按钮,这确实不算直接拨打了电话,但如果给一千万个用户在某个特定环境下弹出一个这样的窗口,其中有多大比例的人会去点“拨打”呢?如果程序员不去提高想象力,总把安全问题和功能局限在系统文档提供的“能做什么”这个范围内,软件的安全性实在让人难以信任。具体的安全问题有更专业的人去普及,本文不多说,在这里我更想谈谈关于信任的问题。在这次事件中,也有一些人想起了Ken Thompson大神(Unix系统/C语言的前身B语言/Go语言的直接贡献者,称作Unix之父也不过分)在1984年的一次演讲,在那次演讲中中,Ken讲了他在70年代在贝尔实验室捉弄同事的一次恶作剧,在那段时间里面,实验室里面所有的Unix系统,Ken都可以随便以最高权限登录,而同事反复检查用户,权限,甚至是当时使用的Unix代码,都没查不到后门,百思不得其解。14年之后,Ken在这次演讲里面才公开,后门其实隐藏在他写的编译器中,当用编译器编译Unix系统的时候,后门就被放在了编译出来的系统里面,但Unix本身的代码是干净的,所以同事无论如何也查不到问题。Ken的演讲所提到的核心问题并不是如何入侵一个操作系统,而是信任。其标题“Reflections on Trusting Trust” (我翻译为&深入思考我们信任的可信&,以下简称RoTT)开宗名义,明确强调这一点。在80年代曾经有很多人用这样的办法给开发工具加各种外壳和后门,但当时联网条件并不好,很难产生大规模影响。很多案例是发生在相对封闭的企业内网和教育网中,Ken捉弄同事的原始案例也可以看作是企业内网上的传播。可以说,RoTT能产生的影响一直被人们低估,因为在现实世界想要具备适合它的条件,实在是太难了。历史上,虽然有很多底层代码Bug导致的安全事件(比如之前的OpenSSL心脏出血漏洞,可以参考我的另外一篇文章,点阅读原文可见),但直接通过这种在基础工具上制造的后门,从而衍生的大规模安全事件,从来没有真正发生过。这种手法一般是用在有限范围的网络上,比如在早年的教育网上或者企业网络里面,那时候在内网上传递一个被下了毒的软件,很容易传播开。在互联网上,如果要重现Ken的案例,首先需要找到一个可信的源头感染,这本身就已经是极其困难的事了。用这次的事件做例子的话,在正常情况下,用户是通过Mac App Store来下载Xcode的,在下载安装的过程中,OS X本身会替用户进行加密签名校验,保证下载的东西确实是苹果原始分发的软件,这样才能被安装到用户的机器上。如果想把在Xcode中嵌入一个后门,你得先找到Apple服务器的漏洞,才能有机会把自己改过的包上传上去,而且还要弄到苹果的私钥去进行签名,才能装到用户计算机上。但如果同时具备了这两个条件,已经是荣华富贵唾手可得,有的是更可靠,获利更大的做法,谁又肯去舍近求远感染一个Xcode呢?所以,只有在相对封闭的网络环境下,才有可能玩这个把戏。80年代,网络远远没有今天发达,人们更多的下载和网络活动是分布在各大机构自己的网络里面的,比如大型企业的内部网络,相对于互联网,这些内部网络网络速度会快的多,人们通常更倾向于从内部网络获得软件。这就给了入侵者(通常是商业间谍)通过替换内容软件来侵入公司内部的机会。但内网又造成了另外一个问题,在封闭网络下,入侵者获得的数据也没这么容易拿走,必须还要回到内网才有机会拿到之前的战果。这些特性造成了这种做法始终在小范围内有效,在公众网络上性价比不高。这次XcodeGhost事件会给很多人启发,中国目前的网络环境类似于80年代的企业内网,但规模又比当年的内网大的多,而且不像那么难以进入。 于是,一些80年代流行但没造成大规模影响的办法,有机会可以在中国环境下重新应用了,并且造成巨大影响。以前的创业是Copy to China,现在同样可以复制30年前的安全问题。Ken的演讲最后指出,你没办法信任那些不是自己写的代码。80年代达到这个目标尚且有可能,那时候的软件规模还很小。而今天,任何工作都需要建立在大量的现成软件基础之上,换句话说,你必须去信任其他人,才有可能制作出产品。如今的可信任环境就变得更加重要。但在中国,因为GFW和相关政策的存在,要获得一个可信环境变得非常困难。在这个环境里面,大量国外网站不能访问或者难于访问,非常多怕麻烦的人会使用国内替代品,这次的事件之所以影响巨大,就是因为通过苹果官方渠道升级Xcode速度太慢,少则10多个小时,多则几十个小时,其间还有可能中断和重新下载。从国内随便下载一个Xcode用当然是错的,但在这样的环境下也不是完全不能理解,考虑一下互联网的下载速度只有50K,企业内网速度能高达10M的时候,谁会不从内网下载呢?用一个现实世界的例子做个比喻吧,前面说了骗子拿到你父母的电话之后,会打电话去骗他们,比如跟你父母说你出了车祸,急需用钱。要让这个骗术成功,一个前提条件是要阻止你父母去找你验证真假,所以骗子同时会用各种办法来骚扰你的电话,迫使你不堪其扰关机或者始终占线。这样你父母和你的联系就断开了,他们没法找你验证了,此时骗子的话就更容易被相信。在这次事件里面,GFW让人们无法访问国外的可信网站,或者访问速度极慢,它起的作用就如同迫使你占线或者关机,从而让人们只能从不可信的地方获取软件。GFW让中国本来开放的互联网环境,变成了一个巨大的企业内网,或者叫做中国局域网。除了速度和难以访问的影响,各种各样的DNS投毒,电信运营商干扰也是严重问题,你拿回来的DNS结果往往也未必是可信的,而运营商试图在HTTP请求中插入广告的行为,又经常会导致正常的应用表现不正常,而这些乱七八糟的毛病还经常变化,今天你可以这样对付,下周可能就需要换一个办法。要维持一个可信的软件环境,需要付出巨大的精力,能愿意付出这个代价的人越来越少。在这个环境中,我们能信任的什么呢?网络链接不可信,运营商不可信,DNS不可信,大企业不可信。最后这一点更荒唐,如果是在正常的网络环境下,你很难相信苹果或者Google会坑害自己的用户,因为这和他们的利益直接相关,他们总是要尽量保护自己的用户。但在中国,如果你敢信任百度,基本意味着你生活各方面都会出问题,用百度查个搬家公司,骗死你没商量,用百度查个快递电话,骗死你也没商量,用百度查个医院,你猜会怎么样?那是真要骗死你没商量,这里的骗死都不再是比喻了。你要信任百度的软件,更好玩了,它莫名其妙就给你把百度出的所有软件都装在你机器上了,人们管这个不请自来的大礼叫做百度全家桶。如此致力于坑害自己用户的大公司,在中国之外还真是罕见。在中国的网络环境下,这次事件产生的危害本身也更加危险。事件发生时,我告诉朋友们立刻删除所有被感染的软件,直至问题被修复。有人说,黑客自己的网站已经关闭了,没什么危险。这么说当然是错的,因为遍布中国各处的DNS投毒和劫持,创造一个一样域名的网站再简单不过了。比如到游客聚集的区域,带一个路由器,创建一个没有密码的WIFI热点,等着人们连上来,在这个热点上劫持XcodeGhost使用的域名,就可以利用已经中毒的app来骗iCloud密码了。这些都是非常容易实现的办法,千万不要低估安全问题能造成的后果,尤其是在中国特殊的网络环境下。目前中国的网络环境和食品安全有诸多共同之处,你没法信任路边的小饭馆,但同时你也没法信任昂贵的大饭馆。你没法信任菜市场买的肉,但超市买的肉也并不那么可靠。在一切的背后是土壤和水的全面污染,可能一家好的饭馆未必打算毒害自己的顾客,但他们也很难保证自己原材料的供货商可靠,要保证使用的所有材料可靠,这是一家饭馆不可能具备的能力。比如,奶粉的三聚氰胺事件之前,一家有追求的饭馆大概会觉得,我不用来路不明的奶粉,我用大品牌的三鹿,伊利,这算是对顾客负责了吧?可惜,这些大品牌一样出问题。这绝非饭馆所希望的,他们也是受害者,就像是这次事件中的网易云音乐,他们确实没打算坑自己的用户,不过网易、腾讯这样的大公司一样中招了。相对封闭的iOS尚且如此(单一开发工具,单一软件分发渠道,独家封闭系统iOS,独家硬件iPhone)尚且能出这么大问题,想想Android会怎么样?Android官方网站几年前就被封了无法访问,大部分开发者都是从国内渠道下载的开发工具。App的安全可靠吗?国内无数家忙着改Android皮肤就称自己是“操作系统”厂商,他们能保证自己的定制Android版本是安全吗?他们有真正的操作系统厂商级别的能力吗?进一步,他们能保证自己使用的开发工具安全吗?每家手机厂商都恨不得做自己的Android app下载渠道,他们能保证这些渠道上分发的app安全吗?甚至,他们能保证自己的下载市场安全吗?请大家继续联想吧。有朋友跟我说,你想多了,Android哪需要这么麻烦啊,本来国内环境就是木马遍地了。真实情况恐怕只能用惨烈来形容。顺便说一声,传说Google要把Play Store进入中国,提供一个受审查的版本,很多人说这是Google妥协了,我看这根本不是妥协了,是中国内部的Android环境太糟糕,已经威胁全球生态了,Google不得不自己出手解决这个问题。所以,一旦Google Play真的进了中国,请大家记得立刻把Play Store做为自己唯一的Android软件下载渠道,哪怕它不好用,不中国国情,甚至显得有点傻里傻气…千万记得,安全比方便更重要。在这些前提下,重新认真考虑Ken的演讲提到的观点就显得更加重要,深入思考我们信任的可信。到底什么是可信的呢?开发工具可信吗?操作系统可信吗?你觉得下载来之后验证一下md5或者sha512总应该可信了,但你用来计算sha的工具是哪下载来的?你又如何知道这个工具本身是可信呢?在一个封闭的,难以和真正源头沟通的环境下,根本没办法谈所谓的信任。在中国目前的环境下,难以直接套用成熟的软件开发和管理流程,除非保证团队所有人都必须翻墙,必须用Google查资料,必须不信任国内网站。你的团队中有一个习惯用百度查资料,顺着国内论坛的链接从百度网盘或者迅雷下载工具的人,就不知道会惹出来多大麻烦。这次事件充分证明了这一点,我起初认为腾讯应该不会有问题,因为我知道腾讯内部有极好的网络环境,但最终不幸的是微信也中招了。我们的恶劣环境已经改变了工程师的习惯,甚至改变了教育,就算是在腾讯内部这么好的网络环境下,仍然有人会去百度查资料,用百度网盘下载开发工具。就像很多留学生到了美国仍然用百度搜索一样,环境的改变并不能直接逆转已经完成的用户习惯。比较讽刺的是,在中国特色的现实世界反而又制约了出现大规模安全灾难的可能性。比如,中国有相当严重的网络监控、审查和实名制、以及互联网公司必须保存(而且要向有关部门开放)的各种用户数据,并且互联网和世界半隔绝,在出现这种问题的时候,要抓到始作俑者又相对简单。现实世界中,只要在论坛发个贴,去你家查水表就是分分钟的事情。这大概算是“不幸+不幸“互相抵消之后产生了一点点微小的幸运吧。很多年前,我说招聘工程师有几个原则,比如,必须使用Google而不是百度,必须翻墙而不是用国内替代品,必须优先使用国外的工具。经常有人认为这种要求过于苛刻,甚至认为是装逼。这次事件告诉了我们,这些良好的习惯确实是工程师的第一道防线,融入世界主流,可以让你少遭遇很多中国特色的麻烦。虽然保持这些良好的习惯需要付出不小的代价,但事实证明这些代价是值得的。这样的网络环境,是我们这一代工程师的耻辱,但我们如此愤怒于此 ,又如此无能为力,这是这个时代最令人悲哀的事情。我们对此有多么无能为力呢?我写这篇文章的时候就在想,大家应该赶快传播它,因为我觉得它很快会被删掉。这就是无能为力的具体表现。顺便说一句,1996年,受Ken的案例启发,我写过一篇科幻小说,大意是一种病毒把编译器做为感染的源头,最终感染了操作系统。在这个操作系统上,它会判断用户指令对它是否会造成伤害,如果是有害的指令,就假装执行一下,实际并不真执行,从而可以躲过杀毒软件和人工清除。这同样是信任问题,在这个环境下,没有任何可信的东西,这种病毒将会在操作系统中永存,并且把自己附着于任何在这台计算机上制造的软件中。在一个计算机一开机就无线联网的时代,病毒可以借此高速传播,最后人类已经找不到一台干净的计算机可以去编写真正干净的操作系统了。90年代还没有无线网络,那时候甚至连有线网络都没普及,Sun还在号称网络就是计算机,那时候一台随时联网的计算机简直太奢侈了,但如今看来…世界确实已经发展到了这样,想找一台不联网的计算机倒是不容易了。不知道这种幻想中的病毒什么时候会真正出现……其实,前几年工信部推行绿坝的时候,我当时就觉得那简直是创造这种病毒的一个非常好的机会,还好最终绿坝计划被放弃了。中国网络和政策环境的特殊性,将来真的有可能制造出适合这种病毒生存的环境,就像这次因为GFW的正面和潜在影响,让70年代Ken设想的RoTT在2015年大规模流行,40多年的时间跨度……著名科幻作家韩松说过:“中国的现实变得比科幻还要科幻”。深以为然。iOS超级病毒是怎么被发现的 王付娇 & 界面一个Xcode漏洞搅翻了iOS开发者们的周末。9月17日早上9点左右,iOS工程师唐巧像往常一样到公司上班。他打开了自己组建的iOS技术群,想看看有没有什么新动态,无意间看到群里有人说,“自己家的App中了木马”,另一家已上市互联网公司则说刚刚收到国家互联网应急中心发来的邮件。邮件大意是,开发人员如果使用非苹果官方渠道下载的Xcode,可能会导致恶意程序植入。简单来说,Xcode是iOS系统下程序员最常用的开发工具,由苹果官方提供给开发者。但有些程序员选择非官方下载途径的原因简单地令人不敢相信——苹果电脑上用于更新应用的官方商店下载太慢了,所以就干脆转投百度网盘或者迅雷。唐巧马上意识到事情可能有点严重。9点45分,他发了一条微博公布了群里关于Xcode漏洞的讨论结果,并附上了软件是否包含Xcode恶意代码的检验方式。后来,这一举动带来的影响远远超出了他的预料。唐巧是猿题库iOS开发工程师,之前在网易开发过有道云笔记,有定期写博客的习惯,是《iOS开发进阶》作者。唐巧喜欢分享,邀请了国内喜欢分享的iOS开发者加到一个名为“真·iOS开发”群里面一起交流。经过三年的积累和维护,这个群囊括了全国最顶尖的iOS开发者,大约60余人,分别来自百度、腾讯、新浪、搜狐、网易等公司。群内经常讨论关于iOS各方面的问题,这里可以算是Xcode漏洞发现的来源地。在随后的两天内,这条微博波及800多个App,影响数千万用户的互联网安全大事件,让无数程序员在刚刚过去的这个周末加班熬夜打补丁。其中涉及的知名应用包括微信、滴滴出行、高德地图、同花顺等。由于唐巧在iOS圈内的影响力,他的微博迅速被阿里移动安全资深工程师蒸米(化名)关注,蒸米告诉界面新闻记者,“在看到这条消息后的第一反应是:这个黑客有想法啊,这种投毒方式也能想得出来。”并希望能第一时间拿到病毒样本进行分析,“因为这一定是一个很严重的事件。”有个形象的比喻是,“炒菜的锅都不干净,还能指望端上桌的菜没有问题吗?”蒸米马上着手开始研究。9月17日下午1点53分,蒸米马上从乌云网作者群群主手里拿到了病毒样本,并开始进行初步分析,在和同事迅迪讨论后,他们决定给这个样本起名为“XcodeGhost”,并于当天下午5点43分写成了业界第一篇分析报告《XCode编译器里有鬼——XCodeGhost样本分析》发表在了乌云网上。这个如鬼魅一般的Xcode后台漏洞萦绕在众多App上。乌云网是位于厂商和安全研究者之间的漏洞报告平台。经过乌云的曝光,这件原本只在互联网安全圈子里的事件发酵开来,后有媒体开始介入报道,甚至有部分用户开始产生恐慌情绪。蒸米回忆说,“当时仅仅是针对病毒样本进行分析,并不知道有那么多的App被XcodeGhost感染了。”9月18日,美国硅谷的palo alto networks安全公司也分析完了XcodeGhost样本,并发表了Novel Malware XcodeGhost Modifies Xcode,Infects Apple iOS Apps and Hits App Store分析报告,并在报告中提到网易云音乐等多家App被感染。苹果官方已经向波及的开发商通知这是非常严重的病毒感染事件,并在第一时间下架所有受感染的应用。9月19日上午,苹果要求开发者用官方Xcode重新编译确保去除掉病毒后才允许重新上架。在开发者们忙着递交App修补版本时,苹果也改掉了往日慢悠悠的性子,加快了审核速度。目前网易云音乐、滴滴出行、微信等App都发布了漏洞修补版本。经过周末的加班之后,周一又有更多的应用发布了更新版本。在所有人忙得焦头烂额的时候,病毒的始作俑者却还没有被找到。9月19日凌晨4点,一个名为“XcodeGhost-Auther”的新注册微博号自称为病毒的作者,并发文澄清,“所谓的XcodeGhost只是苦逼iOS开发者的一次意外发现”,“出于私心,我在代码中加入了广告功能”。这种“公关文”的说法遭到了唐巧的质疑。先不说此文的公关风格老练,“从服务器域名、到木马代码、再到个人身份的隐藏,再到这个木马所体现的强大能力,都不像是实验,更像是一次有目的黑客行为。”乌云作者群里的@onevcat算了一笔账:“微信用户总数5亿日活70%。每天每人就算5个POST请求,每个请求300Byte,日流入流量就接近500G,以及17.5亿次请求。据说服务器在亚马逊,那么资费算一下每个月应该是存储$450,请求$260K。这还只是单单一个微信,再算上网易云音乐等等,每月四五十万刀仅仅是苦逼iOS开发者的个人实验?”在公开的文章中,XcodeGhost作者称,“XcodeGhost能做的事情不多,基本上只限于获得基本的App信息:应用名、应用版本号、系统版本号、语言、国家名、开发者符号、App安装时间、设别名称和设备类型。”据唐巧介绍,该木马能下发指令的类型基本就是弹对话框,或打开一个网址或下载一个App,并且已经在Github上公开了源码。媒体过度渲染的“个人信息被窃取”、“密码曝光”等都没有证实。用户能做的除了更改苹果账号密码、等待受感染应用升级外,也不必过度恐慌。“我觉得任何一个黑客,他的目标都不是破坏,而是利益。并且这种利益应该是相对安全的。”唐巧认为,投放弹窗广告通常是比较安全的回报方式。换句话说,黑客不会进行无利益的攻击行为。即使用户去点那个引导对话框、去下App,个人信息也不太容易被窃取。苹果有一个叫做“沙盒”的安全机制,能限制授予App的代码访问权限,保证App store的个人账户安全。这次事件的影响最大的一点是,它动摇了人们对于苹果安全的信心。过去几年也没有发生过严重的iOS病毒事件,这次XcodeGhost作者从编译器下手,把苹果可能存在的安全问题暴露在公众视野中。蒸米认为,“XcodeGhost也给国内的移动App开发者拉响了警报,网络安全从来不能依靠单点,需要全链路加固,有纵深防御,才是万全之策。”这种在编译器上装病毒的手法并不稀奇,它的学名叫做“源码病毒”,病毒代码附着在编译器中。在Win32时代已经出现过,例如感染delphi编译器的SysConst.dcu;早在1984年,Ken Thompson就曾在图灵奖演讲中提到过,如何在UNIX gcc编译器中动手脚的恶作剧。如今,当年的恶作剧已经变成了现实。
点击展开全文
罗昌平主编
您的【关注和订阅】是作者不断前行的动力
本站文章来自网友的提交收录,如需删除可联系QQ ,
(C)2014&&版权所有&&&|&
京ICP备号-2&&&&京公网安备34}

我要回帖

更多关于 32位系统怎么换64位 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信