【问题标题】:Can a hacker avoid detection when changing the SharedPreferences object even though I checked it?即使我检查了它,黑客在更改 SharedPreferences 对象时是否可以避免检测?
【发布时间】:2017-05-29 10:20:09
【问题描述】:

我的应用基于不同角色。例如老师、家长等。所以不同的用户会看到不同的活动并拥有不同的权限。如果设备是root,SharedPreferences 对象可以被修改。

当他登录时,我将用户的角色保存在 SharedPreferences 对象中(我从数据库查询中收到他的角色)。

例如,他可以轻松地将自己的角色更改为教师并拥有更多权限。他可以删除所有数据。

经过一番研究,我发现了这个:How to detect if changes were made in the preferences?

我现在的问题是:即使我在上面的示例中检查了对象的值,黑客是否可以在更改对象的值时避免检测?

【问题讨论】:

  • OnSharedPreferenceChangeListener 甚至不起作用,因为黑客会直接在应用程序上下文之外更改文件。

标签: android sharedpreferences roles


【解决方案1】:

是的。如果您想要安全,请在每次发出请求时检查服务器上的权限,并且不要发送他不应该看到的任何内容。那么他能做的最好的就是得到一些额外的按钮,当按下时会抛出错误。

【讨论】:

  • 但是我需要知道他的用户名才能向他提供他的权限/活动(我需要这个进行查询)。您将如何存储这些信息?
  • 查看基于令牌的身份验证。您不需要在每个请求中发送用户名/密码。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-12-01
  • 1970-01-01
  • 1970-01-01
  • 2020-06-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多