- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ios与android安全架构对比
IOS与Android安全架构对比
1、 防止应用的恶意行为
IOS和Android都采用 所有应用必须签名、应用在沙盒内运行以及应用权限管理等技术,不过在细节上有所不同。
关于应用签名
IOS平台上,所有开发者向苹果申请开发者证书,这些证书都是苹果颁发的,苹果享有控制权。在应用上传到应用商店时,苹果会对其进行详细的测试。
Android上,对签名的证书没有要求,用户可以自己申请证书,对应用签名目的不是为了追责或回溯,而只是为了区分应用。并且应用在上传到应用商店时,google并不会详细的进行检测。
关于应用权限管理,Android与Google采用了不同的策略。
IOS中,开发者并不需要对应用的权限进行声明,IOS会保护相应的资源,在应用请求相应资源时弹框,并且在Setting中按照资源来分别设置应用的权限。
Android中,开发这需要在manifest.xml中声明所需要的权限,在软件安装时会提示用户该软件都申请了哪些权限,在以后应用运行时,就不会再有提示。在Android 4.3中,增加了敏感功能弹框的提示,已经增加了一个应用Permission Manager,来设置应用的权限。
值得注意的是,在设置应用的权限时,IOS是以资源来索引,而Android中是以应用为索引。
2、 防止系统被Root
在Android的早期版本,运行一些恶意代码由于代码漏洞从而获得root权限的方法。为此IOS和Android采用了相应的方法。
IOS中采用了下列技术:
A) 所有3rd应用以非特权的“mobile”账户运行。
B) 禁掉不必要的服务,API不允许应用提权
C) 采用ASLR(Address space layout randomization protects)和XN(ARM’s Execute Never)技术
Android采用了下列技术:
A) ProPolice to prevent stack buffer overruns (-fstack-protector)
B) safe_iop to reduce integer overflows
C) Extensions to OpenBSD dlmalloc to prevent double free() vulnerabilities and to prevent chunk?consolidation attacks. Chunk consolidation attacks are a common way to exploit heap corruption.
D) OpenBSD calloc to prevent integer overflows during memory allocation
E) Format string vulnerability protections (-Wformat-security -Werror=format-security)
F) Hardware-based No eXecute (NX) to prevent code execution on the stack and heap
G) Linux mmap_min_addr to mitigate null pointer dereference privilege escalation (further enhanced in Android 4.1)
H) Address Space Layout Randomization (ASLR) to randomize key locations in memory
I) PIE (Position Independent Executable) support
J) Read-only relocations / immediate binding (-Wl,-z,relro -Wl,-z,now)
K) dmesg_restrict enabled (avoid leaking kernel addresses)
L) kptr_restrict enabled (avoid leaking kernel addresses)
M) FORTIFY_SOURCE?for system code
3、 防止系统被重烧
Root设备的一个方法就是,烧一个带有Root权限的Image。
IOS的方法:
A) Boot Rom以只读的形式内置在芯片中,其包含了Root CA证书,其是被信任的。
B) Low-Level Bootloader (LLB)、iBoot、iOS kernel都需要被证书签名。
C) 如果签名不对,将会进入recovery 模式。
Android的方法:
Android采用了d
文档评论(0)