是否有工具可以将恶意软件应用沙盒甚至超过Android上授予的权限?


59

假设我想运行一些请求太多权限的程序。例如,从麦克风录音或阅读手机的IMEI。但是,除了数据挖掘以外,没有实际的解释说明为什么对于此特定应用需要从麦克风或IMEI号码进行记录。

我想尝试这个应用程序,但限制其权限。例如,如果读取IMEI,则应该获得随机IMEI(但每次都相同)。如果它尝试阅读麦克风,则应该保持静音。

其他一些有趣的权限:

  1. 电话簿的读/写访问权限-返回零个联系人,装作写正常,但实际上什么也没做。
  2. 发送短信-假装发送短信,但不执行任何操作。
  3. 获取可见的Wi-Fi网络列表-返回零个网络。

显然,该工具应该需要有根电话。有没有这样的工具?


1
我一直在stackexchange上问这个问题,但由于此站点的Android受众更广泛,因此被定向到此处。
丹尼斯·尼古拉连科

9
我从未见过这样的事情,但我不明白为什么无法完成。是个好主意。
马特2010年

1
您可以使用开发人员SDK中的模拟器来完成很多工作吗?
ale

5
基本上是。可以将模拟器用作沙箱。但是,如果我想在实体电话上运行某个应用程序却又保持隐私,该怎么办?
丹尼斯·尼古拉年科

我知道这个问题很古老,但是您能详细说明一下什么背景使您想要在自己的个人物理设备上测试某些恶意应用并回答虚假的个人数据吗?对我而言,当前的cyanogenmod解决方案(拒绝调用,不产生虚假数据)似乎就足够了。
斯特凡纳·古里科

Answers:


13

XPrivacyLua是Xposed框架的模块,可以完全满足您的需求。它是免费和开源的。在有根设备上运行。它是XPrivacy的继任者。

从这里安装Xposed:https : //forum.xda-developers.com/showthread.php?t=3034811

然后,您可以通过Xposed Manager应用程序从Xposed存储库下载XPrivacyLua模块,或从此处手动下载:

https://repo.xposed.info/module/eu.faircode.xlua

资源:

https://github.com/M66B/XPrivacyLua


如果您运行的是Android 5或更低版本,则可以使用旧版XPrivacy模块。


很好的工具。正是我想要的。
丹尼斯·尼古拉

19

Whisper Systems推出了具有此确切功能的自定义ROM:http : //www.whispersys.com/permissions.html。正如DarthNoodles所提到的,它必须在系统级别而不是应用程序级别完成,这是在WhisperCore中实现的方式。当前版本无法阻止Android上所有可用的权限,但它们正在努力支持更多权限。


1
源代码仅在购买后可用...
Denis Nikolaenko 2011年

链接已死。他们是否将名称更改为OpenWhisper Systems并启动Signal?还是那个不同的团体?
YetAnotherRandomUser18年

@YetAnotherRandomUser是的,差不多是同一组:signal.org/blog/welcome。Whisper Systems被Twitter收购。不久之后,Whisper Systems的创始人之一Moxie离开了Twitter,将一些旧的Whisper Systems应用程序分解为一个开源项目,该项目成为了Signal。
加里·派克

16

CyanogenMod 7.1完全具有此功能,但是如果应用程序访问API,则不会伪造数据,只会失败。伪造IMEI的提议遭到拒绝。伪造其他数据(例如联系人)目前正在讨论中。


1
史蒂夫·康迪克(Steve Kondik)解释了为何在本博文中拒绝它:plus.google.com/+SteveKondik/posts/iLrvqH8tbce摘录:“我拒绝了这些补丁程序,因为它们为应用程序创建了敌对的环境,这不是我希望CM走向的方向。(...)不想让其应用程序在不可预测的环境中运行的开发人员(...)我认为这些修补程序仅是更安全的解决方案,并不能真正解决问题。为什么要运行恶意应用程序无论如何?”
斯特凡纳·古里科

9

不是绝对解决您的问题的方法,但是android市场上有一款可以满足您需求的应用程序。它还必然需要更好地了解权限以及植根设备。

Permissions Denied是一款应用程序,可让您通过市场或其他来源有效控制安装在手机上的应用程序的权限。另请注意,拒绝应用程序所请求的权限可能会导致应用程序强制关闭。(因此需要您对如何使用它有更好的了解)

注意:此应用程序需要root访问权限。这个应用程式无法在所有装置上运作。


1
CyanogenMod在这方面仍然更好,该应用程序目前很脆弱。
丹尼斯·尼古拉连科

5

这不是沙盒应用程序,但如果您还没有听说过,也许对您来说也很有趣。

一些科学家启动了Taintdroid项目。Android的实时隐私监控




3

这是解决潜在问题和长时间困扰我的合理方法。

但是,您必须记住,适用于安全应用程序的任何解决方案也适用于恶意软件应用程序。如果安全应用程序可以阻止网络访问,则恶意软件应用程序也可以阻止网络访问,例如,阻止安全应用程序更新数据文件。

它需要在系统级别而不是作为另一个应用程序完成。

我的想法请看这里


4
如果您授予了此类工具的权限,则需要对电话具有root访问权限,并且应该对该工具具有最终的信任,例如“权限被拒绝”。如果您授予从市场上随机应用程序的根访问权限,那么您就只会开枪打死自己:)
Denis Nikolaenko 2011年





1

棉花糖(Android 6)具有新的权限模型。现在,可以将针对棉花糖的应用程序在运行时限制为较少的权限,并且这些应用程序应正常运行,而不是早期Android版本的“全有”权限模型。在棉花糖中,这是标准操作系统的功能,并且不需要生根或其他应用程序。


1
嗨,马特姆!如果您在这里深入了解,那就太好了。例如,新的权限模型没有对Internet权限进行任何控制。如有可能,请使用屏幕截图以更好的方式让我们了解您在说什么。
Firelord

-1

我相当确定您所寻找的工具尚不存在。但是你的想法很棒。不过一点点;

官方 应用可以自由读写自己的应用目录

提供伪造的读取权限:对于每种可能的读取(并且有很多应用可以尝试读取),应生成默认响应;工作很多但是可行

然而; 提供伪造的写访问权限要困难得多;如果它使用SD卡存储大的临时文件怎么办?就像位图一样 在无根电话上;只有地方应用程式可以写入的是SD卡;并使用内容提供商(用于联系人和日历之类的东西)。应用程序设计者并不期望写入数据失败。因此应用可能会崩溃。

好消息是,可能发生的最坏情况是应用程序可能崩溃。


为什么要投反对票?在2010年12月,这些工具还不存在。
丹尼斯·尼古拉
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.