当前位置: 首页 > 科技观察

Android和iOS如何防御恶意应用

时间:2023-03-19 01:06:27 科技观察

在刚刚过去的世界移动大会上,Android负责人SundarPichai也现身会场。由于各种关于Android被恶意软件占领的新闻经常出现在媒体上,因此有关Android和iOS安全的问题自然而然地抛给了SundarPichai。作为谷歌的高级副总裁,皮查伊当然表示Android相当安全。而在这个问题的背后,Android和iOS是如何抵御恶意软件的?作为一个移动操作系统,其安全性涉及到很多方面,但正如苹果在iOS安全白皮书中所说——应用程序已经是现代移动操作系统安全架构中最关键的元素之一,所以本文从Let's开始看看Android和iOS在应用层的安全机制。我们先来看安卓。在GooglePlayStore还叫AndroidMarket的时候,Google发布了代号为“Bouncer”的服务。Bouncer会自动扫描AndroidMarket上的所有现有应用程序,以分析它们是否包含潜在的安全威胁。通过内置在云端的模拟器,Bouncer可以模拟应用程序在安卓设备上运行的状态,从而发现隐藏的恶意行为。此外,Bouncer还会扫描开发者帐户,以防止恶意软件开发者再次向Google提交恶意应用程序。通过此举,谷歌已经基本可以保证GooglePlayStore上应用程序的安全。在系统层面,Android在4.2及之后的版本中加入了应用验证机制。当用户从第三方渠道安装应用程序时,验证机制会向谷歌的服务器发送验证信息以确认其安全性。如果返回结果是否定的,系统将阻止用户继续安装。为了丰富自己的数据库,除了GooglePlayStore,谷歌还扫描了互联网上的各种APK文件。而在下一步,谷歌还将对应用验证机制进行升级。升级后,应用程序验证机制将能够在后台运行,以监控那些已安装的应用程序是否存在不当行为。预计相关功能会随着GooglePlayServices的下一次更新悄悄推送给Android2.3及以上的用户。通过此举,谷歌也大大降低了用户安装第三方渠道应用的风险。在系统底层,Android也刻意限制应用程序调用一些API。例如,Android不提供直接操作SIM卡的API。当第三方应用程序调用与地理位置、摄像头、蓝牙、短信等相关的“受保护的API”时,需要获得用户的额外许可。在数据保护方面,第三方应用只有在通过Android系统权限检查后才能访问个人信息、敏感数据输入设备、设备元数据等相关信息。再看iOS,由于iOS用户获取应用的方式比较单一,苹果可以从源头上控制应用的安全。事实上,苹果正是这样做的。iOS系统要求所有的可执行代码都必须使用Apple颁发的证书进行签名,当然也包括各种第三方应用程序。想要获得苹果颁发的证书的应用程序开发者必须向苹果注册,才能加入iOS开发项目组。这样一来,所有获得证书并有权向AppStore提交和发布应用的开发者都提前通过了苹果的验证,苹果可以轻松识别出每个应用背后对应的公司或个人信息。用苹果的话说,这对那些恶意应用开发者有很好的震慑作用。事实上,应用签名在Android上也是强制性的。苹果之所以能在这个环节更好的控制应用的安全,是因为它可以要求所有开发者都使用苹果的证书来签名,这在安卓上基本是行不通的。在Android上,没有“中央权威”来控制所有应用程序的签名。运营商、原始设备制造商和第三方市场都可以签署申请。在系统层面,苹果也做了很多限制措施。例如,当第三方应用需要读取应用本身以外的信息时,只能使用iOS系统提供的API来读取信息;需要后台处理能力的应用只能使用系统提供的API;并且因为整个OS分区是只读挂载的,所以API不允许应用不断升级权限去修改其他应用或者iOS系统本身。在保护应用内数据方面,iOS软件开发包提供了一套API帮助开发者提高数据安全性。此外,由于iOS系统的硬件也由苹果控制,苹果还利用ARM处理器的“no-executebit”安全技术来防止应用程序作恶。综上所述,虽然谷歌和苹果对各自系统的控制能力不同,但在系统访问层面、应用未到达设备端时、应用已经到达设备端时,双方对于Android和iOS都在其可控范围内。在设备端运行。提供保护措施。由于Apple可以控制硬件,因此iOS具有额外的处理器级保护层。但Android是开源的,因此它可以从社区中吸取经验以提高其安全性,Google也是如此。所以两者可以说各有千秋。与iOS相比,Android确实给了用户更多的选择,让用户自己去选择。这在某些时候确实会带来隐患,但Android的安全并不像媒体和一些非独立安全机构经常宣传的那样脆弱。所以如果你使用新的安卓系统,从官方渠道下载应用,那么下次再看到“99%的安卓设备都会感染病毒”的消息时,你就不用恐慌,更不用担心了。立即派安全供应商。去买单。