第一次开发app就上手~铐?研究生因两年前已下架的app遭警方搜索

一名研究生Lin Chen在脸书社团“Android Developer开发读书会”分享亲身经历指出,他因为两年前开发现在已下架的app遭到警方搜查,原来是该app被有心人士改造植入后门,再盗用他人账号在Google Play重新上架,因账号被盗者控告“妨害电脑使用”而被牵连。此事也在网络上引发讨论。
根据Lin Chen的说明,7月30日侦九队持搜索票上门要求配合搜查,使他一头雾水。经过警方的说明终于了解,原来是他曾在2013年前开发的记账app惹祸,这是他第一次在Google Play上架的app,该app经过两次更新后,2013年底已从Google Play下架。
但警方告知,这个app还在网络上流传,且被人盗用他人账号重新上架到Google Play。因被盗用账号者提告,警方依“妨害电脑使用”展开搜调行动,Lin Chen推论警方可能是以多年前参加app比赛的资料循线追查上门。另外,当初app下架后未取消使用的广告ID,警方怀疑他因此获利和盗用账号的犯罪者有关。
警方比对Lin Chen的原始APK档和重新上架版本,发现重新上架版本和原版的package name只差了一两个字母,而且被嵌入了后门程式,每隔20到60秒就会传送手机资讯(帐密或个资)到后端服务器,追查服务器IP地址来自中国。
换言之,这款下架的app被人盗用,并且改造嵌入后门程式以窃取使用者手机内的资料,警方好心提醒Lin Chen可使用ProGuard混淆代码保护app,但最后该案还是被移交地检署侦办。
对于该案例,记者询问刑事局侦九队想了解事件的前因后果,但侦九队以侦查不公开回应。
网友:混淆代码避免app遭盗用,警方应从Google Play着手调查
这个案例引发不少网友的讨论,有人建议除了ProGard外也可使用dexguard混淆代码,或是利用NDK来隐藏字串,提高app的防护性,降低被盗用的可能。
网友Kny Chen则认为ProGuard混淆代码只能提高盗用app难度,旧的app要重新的Google Play上架需要新的package name,而且需账号才能申请上架,相关的信用卡、连线纪录等等。他认为警方应从Google Play调查幕后的黑手,而非透过Lin Chen。
另外,Kny Chen在自己的贴文分享这个案例指出,Lin Chen当初没有取消广告ID,所以被怀疑重新上架app谋取广告利益,他建议app开发时应慎选广告套件,不要乱挂广告套件或接受奇怪的合作案,轻者违反平台政策被下架,重则可能因广告公司违法而受到调查牵连。
趋势科技:盗用app盛行,开发者宜自保、养成良好习惯
在Lin Chen的案例中,实际上他的app被人盗用改造为含有后门的程式,他也是受害者,被不法份子盗用其app,再盗用第三者账号重新在Google Play上架而受到牵累。
事实上,趋势科技去年公布研究资料显示,Google Play前50大热门免费app有近8成都有山寨版本,山寨app以假乱真吸引使用者安装,而且51%含有恶意程式,即使没有恶意程式,可能也含有越权的广告程式。
这些山寨app不少来自改造正版app,将其重新包装后嵌入恶意程式,让使用者误以为是正版app下载安装,不法者就能窃取使用者手机内的资料,或是可能在使用者未察觉的情形下,偷偷使用高额的电信服务获利。先前造成热门的游戏Flappy Bird曾被作者下架,不法者就趁此机会推出木马版本,诱骗不知情的使用者下载。
就Lin Chen的案例,趋势科技建议开发者自保之道,一方面可从app的保护着手,可利用代码混淆增加盗用者人工分析的难度,或是Packer对app加上一层保护壳,保护原始可执行文件使其不容易被读取,也可以在软件中加入唯一特征,使执行时自动校验软件的合法性。
另一方面,已经下架的app应取消或关闭相关服务,像是广告ID、支付类服务等等,以避免产生不必要的麻烦。以Lin Chen的app被盗用后,盗用者没有关闭广告ID来看,即使开发者已将app下架仍应继续关注使用的广告账户,如果发现有异常的金额出入,代表app可能被改造重新散布,开发者应提高注意。
开发者选择SDK时,往往考虑方便性居多,但趋势科技认为也要考虑法律风险,如果开发者选择了一个具恶意行为的SDK,对其用户造成影响,不论开发者有意或是无意,连带负担一些责任,同时还影响到开发者本身信誉,因此最好选择信誉好、规模大的第三方SDK,建议可以参考相关资料。
法律专家:多举证证明清白
这个案例是因为被盗用Google账号者提告,警方依“妨害电脑使用”进行调查,因而循线找上app的原始作者Lin Chen,而经过比对发现原始app被改造含有后门程式,且package name不同,Lin Chen的app被盗用改造,他自己也是受害者。
对此,益思科技法律事务所律师赖文智表示,被盗用账号者提出违反刑法第358条“无故输入他人账号密码、破解使用电脑之保护措施或利用电脑系统之漏洞,而入侵他人之电脑或其相关设备者,处三年以下有期徒刑、拘役或科或并科十万元以下罚金。”告诉,该案件由侦九队协助初步侦查,由于有心人士盗用开发者账号上架app为Lin Chen开发但已下架的app,所以侦九队将该名网友列为嫌疑人,通知网友到案说明。
他认为从个案来看,这是单纯的账号盗用案件,只要找到实际盗用的“行为人”案情就能水落石出,但“行为人”并不易找到,因此警方先怀疑该网友是“行为人”,这在犯罪侦查上是正常的程序,依犯罪嫌疑人一一调查排除。问题是警方是否认识到上架到Google Play的app,其他人要取得APK档并不困难,所以除了该名网友,其他人也可能是盗用账号的真正“行为人”,警方有责任依其他线索继续调查,例如依行动广告追查受益者身份,善尽调查责任。
至于网友认为警方应该从Google Play等其他方向调查,不应由该名网友自己证明清白,赖文智表示,虽然依照“无罪推定原则”,被告确实没有自证清白的义务,若检察官无法确认犯罪嫌疑人确实参与犯罪,则应为不起诉处分。但还是建议该网友尽量提出对自己有利的证明,如app的广告收益受益人另有其人、自己没有犯罪动机、找寻专家证人证明他人容易取得APK档修改等等,以免成为他人犯罪的替罪羔羊。
至于广告ID没有取消,且被插入后门程式,网友可向检察官说明真正犯罪者的目的并非取得广告收益,而是窃取他人个资或控制他人手机等等,但不能证明自己没有参与犯罪,因为网友自己也可能从事此行为。他建议还是找专家证人证明不是改造版app开发者,依无罪推定原则来处理这个案件。先前曾有著作权侵害案件,检察官找来中华电信人员证明家中无线AP若未设保护措施,可能遭他人盗用从事侵害著作权的行为,因为没有办法证明著作侵害行为是该AP管理者所为,最后做出不起诉处分。
