再看APP安全问题

堡垒最先从内部攻破。——列宁

最安全的地方,同时也是最危险的地方。最近的两次苹果安全危机,一次是因为iCloud服务器,一次是因为开发者使用的Xcode。

回顾XcodeGhost事件

发布在论坛中的毒链接

简单地说,整个XcodeGhost事件的流程是这个样子的:某个黑产团队在国内云盘中上传了一个带毒的Xcode编译器,然后大规模扩散该下载链接,在强大的宣传团队的努力下,这个下载链接被成功的扩散了出去。因为APP store链接的不稳定性,所以国内一些程序猿不喜欢去官方市场耗费时间下载编译器,于是转向论坛上找网盘资源。于是,那一批开发人员开发的APP就成功中招。

部分中招的APP

中招之后会发生什么呢?在写代码时,什么都不会发生,写出来的代码看起来干干净净,但是当开始使用编译器生成安装包后,编译器就向安装包中嵌入后门代码。按照公布出来的信息,这些代码负责向一个伪装成iclude的服务器发送用户信息、安装包信息、设备型号等等。看起来没什么威胁性,不是吗?并不是!尽管后来有人在微博中对这件事情负责、并道歉,说明自己并无恶意。但是你信吗?我不信。一个理由:维护这些用来搜集用户信息的海外服务器,每月耗资50万美金(数据出自腾讯安全中心估测)。如果是个人的无意行为,谁有能力、或者吃饱了撑的负担这么耗资的玩意儿?所以背后应该是有一个黑产团队在操作。虽然伪装成iCloud的服务器已被作者关闭,但是潜在危险还会持续一段时间:如修复速度很慢的12306,至今没有发布修复版本的安装包,中毒的安装包还在手机上孜孜不倦的发送着用户的信息。而只需要一个DNS伪装,就能成功捕获到这些数据。

回头看看这次安全事件:觉得会对用户造成威胁吗?好像不会啊,因为攻击者获取的都是一些基本的用户信息,敏感度也不高。但是有一个问题:植入的后门代码可以向指定服务器发送指定信息,而且用户根本不会怀疑,因为用户完全信任苹果的软件生态园,就等于这款中毒软件已经完全获得了用户的信任。那如果我弹出一个伪造iCloud的密码输入框怎么办?我弹出一个钓鱼网站链接怎么办?由于苹果自认为在iOS生态园中不需要安全软件,因为苹果已经将不安全的额软件置之门外了,所以没有安全软件的提示,一般用户很难察觉危险的存在。战斗堡垒就这样从内部被攻破了。就连开发者和苹果都没有意识到。开发者意识不到,情有可原。但是苹果为什么没有检测到呢?因为在上线审核时,苹果只审是否调用违规API,这些信息从未审查,所以就给感染病毒的APP提供了可乘之机。

对安全问题的反思

事情已经出了,移动互联网,特别是APP安全问题再一次的受到前所未有的关注。那,看看我们程序员在不安全方面都做了那些“贡献”呢?

将公司代码传至Github

别笑,是真的。github素来以开源出名,github建站之初的目的是借助git协议(版本控制协议,和svn协议作用一样,但是功能比svn强大)为程序员们提供一个分享代码、协同开发的平台,并不是提供给公司用作版本管理远程代码托管使用,虽然github提供了这项服务,不过是一项收费服务,新手并不清楚这一点,于是就大大方方的将公司代码交给github托管。在github上,只要出现一个商业项目,马上就会引来大量的fork,所以各位CTO们,快问问你的工程师有没有将代码弄到github上。

什么?自己很想使用git做版本管理工具?你可以自己搭建git服务器嘛。什么?自己不想维护?国内有一家叫oschina的平台提供代码托管服务,可以选择不公开代码。什么?用国内的low逼?好吧,土豪们请去github上购买一个付费账号,这样就可以使用github提供的私有代码仓库服务了。

使用宏定义将私钥放在代码中

这样看起来似乎没什么问题,不是吗?大家都是这么做的。好吧,如果服务器懒得和你配合,而且主管们觉得这么做没什么问题,那你就这么做吧。但是不得不提醒一下,如果反编译了你的app,是可以获取到这段宏定义的,这样,私钥就暴露了。妥善的处置方式是:APP中不要保存任何与服务器通信认证相关的内容(CA证书除外),所有的认证材料:私钥、时间戳等等都从服务器获取,服务器端不定时更新认证信息。这样防止APP被反编译后获取到敏感信息。

认为安全工作都是服务器团队做的

恩,在数据安全方面,服务器团队做的努力确实应该比移动开发团队做的努力多,因为一旦服务器被攻破,影响的是整个用户体系,而攻破了单个APP,看起来除了获取到某些用户的信息外,只能是获取到接口签名规则,然后发动DOS/DDOS攻击,这方面的安全措施还是在服务器端做的。但是。。。问题出现了:就像这次的安全事件,问题出在了APP,但是同样会影响所有的用户体系。

矛与盾,攻与防向来都是一对儿好基友。没有百分之百的安全措施,在选择安全措施的同时要考虑当前公司的业务状态和数据的敏感程度。做过网络安全的应该都会清楚的明白:安全程度越高,性能越差。在安全与性能方面的取舍,还得综合利弊。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,324评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,303评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,192评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,555评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,569评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,566评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,927评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,583评论 0 257
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,827评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,590评论 2 320
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,669评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,365评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,941评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,928评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,159评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,880评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,399评论 2 342

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 171,392评论 25 707
  • 很高兴又到了给好种子浇水施肥的时候了! 我99天的践行目标是家庭收入增加200万元。 业力伙伴赵琳的99...
    绚风阅读 186评论 2 3
  • 花钱,这事可是一门学问。不会为自己花钱的人,那肯定是不懂生活的人。不会为朋友花钱的人,定是人际关系薄弱的人。不会给...
    阿超有话说阅读 880评论 1 3