首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android \如何使用IsolatedProcess

Android \如何使用IsolatedProcess
EN

Stack Overflow用户
提问于 2016-05-03 17:08:03
回答 1查看 4.4K关注 0票数 4

据我所知,IsolatedProcess在这里运行不受信任的代码。

但是,如果IsolatedProcess基本上是一个没有任何权限的进程,那么如何将不受信任的代码(例如类)发送到IsolatedProcess?

我的意思是,IsolatedProcess无法访问设备中的文件、互联网或其他任何东西。

那么,向IsolatedProcess发送不可信代码的方法是什么呢?

我试图将构造函数传递给IsolatedProcess,以便他能够安全地启动这个不受信任的类,但是进程之间的所有通信都必须与可序列化对象通信,而构造函数不是可序列化对象。

EN

回答 1

Stack Overflow用户

发布于 2017-07-07 21:03:23

你误解了isolatedProcess的目的。它不提供API来做您想做的事情,因为它不是打算使用的方式,这样使用它将不是一个好的安全实践。它旨在提供一层安全,一旦攻击者通过利用漏洞获得远程代码执行,就需要绕过该层安全层。您根本不应该运行不受信任的Java代码,因为Android的设计并不能做到这一点。它仍然可以在isolatedProcess中访问本地API,包括内核的系统调用等。isolatedProcess放弃了几乎所有的特权(获得唯一的UID / GID并在isolated_app SELinux域中运行),但它本身并不是一个很好的沙箱。如果您决心这样做,那么在isolatedProcess中做它比在它之外做要好,但是您将为它滚动您自己的代码。

isolatedProcess的主要用户是Chrome。每个站点实例都由一个单独的isolatedProcess服务提供。它不运行不受信任的Java或本机代码。攻击者需要远程代码执行漏洞来获得对isolatedProcess的控制。Chrome也不仅仅依靠isolatedProcess来进行第二层防御。它采用严格的seccomp滤波器,大大减少了内核的攻击面.

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37010237

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档