这两天说到的苹果软件中毒是个什么情况?

今天逛微博,看到了有人发现 apple 手机中的部分软件存在盗取账户信息的问题,网上搜罗了下信息,把大概的原因和处理方案说下。本文的阐述会比较浅显易懂。

如何被感染的

大家对这些盗取账户信息的行为称之为手机中毒,简单的说就是使用的软件中被非软件方通过某些手段植入了程序本不该有的代码,这些代码可以获取用户的信息,甚至会伪造对话,比如下载某个音乐的时候提示要输入 app store 密码方能下载。之所以会中毒源自信任。

我们都知道,开发一个软件,需要工具,写代码的工具、编译代码的工具等等。而开发苹果手机上的软件需要苹果提供的编译和执行代码的工具,它叫做 xcode。 xcode 文件比较大,由于苹果在中国(好像)没有服务器,程序员下载 xcode 的速度就会很慢,而这个文件跟普通电影似的,可以被放到各种网盘中。所以就有人把下载好的 xcode 放到了网盘或者其他国内下载速度很快的服务器上。

问题就出在这里,这个非官方下载的 xcode 可能就被人调包了,可能是在下载之前就已经调包,也可能是在下载之时调包的。工程师使用这种被调包的 xcode 编写程序,最后编译阶段会被植入恶意程序。

打个比方,网易云音乐的开发工程师从非官网渠道下载了一个 xcode,他们开发好 iphone 的网易云音乐播放器之后,上传到 app store,那么实际上,我们下载的网易云音乐就是包含病毒的,它能够窃取你在使用网易云音乐时的操作信息,当然,可以蹦出一个提示框,让你输入 app store 密码,甚至可以做出一些更加危险,比如获取你的信用卡资金等操作。

如何预防和防御

据了解,黑客把收集到的信息都上传到了一个网址为 init.icloud-analysis.com 的服务器上,目前这个网址已经被封了,但是不能判定黑客是否还保留了其他的渠道。

从上面的分析,我们可以知道,即便是 app store 上的软件也是不安全的,更不论有些童鞋是直接从非官方渠道下载的软件。所以:

  • 软件工程师在开发的时候一定要从官网下载 xcode,或者使用校验工具检查下 sha1 码是否准确,有问题的 xcode6.4.dmg 的 sha1 是 a836d8fa0fce198e061b7b38b826178b44c053a8,没有问题的是 672e3dcb7727fc6db071e5a8528b70aa03900bb0
  • 用户应该关注下安全信息,把存在问题的软件即时删除,或者下载官方确定的靠谱版本软件
  • 修改 app store 密码和信用卡密码

最好的防御是苹果公司能够提供抵挡这个程序运行的方案,比如快速提供一个新版的苹果系统让用户即时升级。

相关阅读

本文转自我的个人网站:http://www.barretlee.com/blog/2015/09/18/what-is-wrong-with-apple/

时间: 2024-10-05 04:45:35

这两天说到的苹果软件中毒是个什么情况?的相关文章

AD PCB中两个不同高度器件重叠 软件报警告变绿

这个问题遇到几次了,每次都要在网上搜索解决方法,今天记下来! 在规则里面不检查器件高度这项应该是最简单,也不影响其他规则的方法了! 具体操作: Design - rules - Component Clearance  ,把下图2的位置 勾选去掉! AD PCB中两个不同高度器件重叠 软件报警告变绿

两三年下来集合所有的软件信息

ASPENTECH_ASPEN_FLARENET_V2006 TracePro v7.04  LensVIEW 2003世界著名的光学设计数据库) MSC Mvsion Materials Databanks Q2(商业化的材料数据信息系统 Pro v18 + Abaqus IHS Petra v3.1 AutoTURN v6.0 Spt Olga v7.1 NTI.FENSAP-ICE.R1.0.Windows-SHooTERS QQ:16264558      TEL:13963782271

苹果软件的短连接地址

开发商主页 iOS:http://appstore.com/<公司名>,比如,http://appstore.com/smule Mac:http://appstore.com/mac/<公司名>,比如,http://appstore.com/mac/popcap 应用下载地址 iOS:http://appstore.com/<应用名>,比如,http://appstore.com/ocarina Mac:http://appstore.com/mac/<应用名&

关于传统的软件开发方法在实际软件开发过程中的使用情况

传统的软件开发方法主要有两大类:面向过程和面向对象,他们两者在实际的软件开发中其实是相互融合相互补充的.具体做法如下: 用面向过程的方法开发软件的过程中,需求分阶段一般通过建立功能模型来分析系统功能.面向过程的方法学中提供的功能模型的建模工具是数据流图,在这一阶段可以引入面向对象方法学中提供的用例图来建模,效果很好:用面向过程方法学开发软件过程中的详细设计阶段要为每个模块设计算法,这时可借用面象对象方法学中提供的活动图来进行算法的设计.用面向对象方法开发软件过程中的总体设计阶段本不需要建立软件结

在使用$attrs和$listeners两个跨层传输数据的时候事件及数据拦截情况

// 组件封装的时候,在使用$attrs和$listeners两个跨层传输数据的时候,中间层如果设置了props:['value'],则父组件绑定的value值是传输 // 不到孙组件,因为被子组件给拦截了, // 相反,孙组件向上级传递事件的时候,如果子组件中有@change="onChange",父组件也有@change="onChange"的时候,那么这两个事件都会被传递 // 出去,也就是说,onChange()函数会执行两次,一次父组件,一次子组件的 原文

只有某个浏览器能上网 其他软件均无法上网的情况

Winsock设置问题,利用下面语句 netsh winsock reset 或者 netsh winsock reset  catalognetsh int ip reset reset.log hit 即可

【转】appStore上传苹果应用程序软件发布流程

转载地址:http://blog.sina.com.cn/s/blog_68661bd801019uzd.html 首先确定帐号是否能发布, https://developer.apple.com/account,如果你打开Provisioning Portal,然后点击DisTribution看到的是下图中那样,再考虑按下面的方法弄 (1)图中加号是灰色,点击图中的加号,没有反应,说明你的帐号不能发布,找你们老大要帐号,正常情况是加号是黑色,点击会弹出一个创建证书界面. (2) 没有发布证书,

appStore上传苹果应用程序软件发布流程(之前都是同事发,复制一份备用)

首先确定帐号是否能发布, https://developer.apple.com/account,如果你打开Provisioning Portal,然后点击DisTribution看到的是下图中那样,再考虑按下面的方法弄 (1)图中加号是灰色,点击图中的加号,没有反应,说明你的帐号不能发布,找你们老大要帐号,正常情况是加号是黑色,点击会弹出一个创建证书界面. (2) 没有发布证书,如果有,是图中那样,如果你没有或者状态不对,则你需要新建证书,下面的内容会一步步介绍.(3)发布还需要用到Xcode

苹果三星新“机皇”遇冷,国产手机该高兴吗?

几年前这还是让人不敢想象的情景:安卓与iOs两大阵营的"机皇"---Note8和iPhoneX,在中国"手机春晚"的年度压轴表演,就真的仅仅是"表演"而已.整个中国手机产业界完全是冷眼旁观.这旁观不是羡慕和嫉妒,而是真的有点漠不关心. 原因简单明了:Note8与iPhoneX刚一发布就已经被所有人认定,在中国市场没有前途.而主流消费者几乎可以肯定地说,将会在一阵感慨之后立刻转身投入国产手机的怀抱. 手机市场的竞争,无非 硬件性价比 + 软件生态