开发者社区> 问答> 正文

怎么保证数据的安全 热:操作报错

得到token 得到api 服务器没有发觉token泄漏 app登陆成功之后   会将用户令牌token保存在本地  盗窃者破解app和数据库/缓存文件后  获取了token和相关api
而服务器没有发觉token已经泄漏  我怎么防止盗窃者利用token+api的方式  获取和修改该用户的数据

比如   http://blog.csdn.net/androidsecurity/article/details/8666954

手机淘宝是通过本地DES加密   再把密码保存到本地文件里的   如果拿到ROOT权限  能破解出密码明文

请自动将密码转成token阅读  谢谢

注    不考虑再次确认口令这种方式

补充  评论我全部看完了   谢谢大家的参与  不过感觉部分人有些误会

问题的原意是  在移动应用领域  如何有效的保护用户数据

展开
收起
kun坤 2020-06-04 13:20:56 550 0
1 条回答
写回答
取消 提交回答
  • token是用于跨域和跨连接/会话的一种权限认证方式。
    而你本地破解泄露是属于本地漏洞。
    这是两码事。
    混在一块考虑没有意义。 ###### 我觉得没有办法   最多复杂化求解  想了几种方式  均告失败
    1  对token进行对称加密   密钥发送给服务器   使用时  请求服务器获取密钥  解密
       漏洞   盗窃者也可以请求服务器获取密钥  解密
    2   client端和server端共同维护一个字符表  client端得到的token在表中的序列值  使用时  根据序列值还原token
        漏洞   盗窃者可以破解该表 ###### 3    token定期失效   要求用户重新登入
          漏洞   token有效期内问题依然存在   同时会导致用户体验不佳 ######

    引用来自“张山疯”的评论

    token是用于跨域和跨连接/会话的一种权限认证方式。 而你本地破解泄露是属于本地漏洞。 这是两码事。 混在一块考虑没有意义。

    谢谢科普  不过我的问题你没有回答
    我是问  在移动应用领域  如何有效的保护用户数据  说token只是一个引子  希望大家能更好的理解  谢谢 ###### 1. token 与本地IP,或者user agent做关联,具体可以取如手机硬件参数等,这样可以防止拿token到其它地方用的问题,但还是不能解决全部,因为理论上来说,客户端所有东西都可以伪造成和原来的一模一样
    2. 就是对于一些敏感操作,如转帐,改密等,需要进行密码或者令牌的二次确认

    ######不要明文发,在本地通过一定的规则加密后再发。######拿到ROOT权限 就不安全了 问题里提到的手机淘宝案例 你可以看看######  我也有这样的困惑。 有什么好的建议么? 上HTTPS 也不是一个绝对保险的办法######

    引用来自“shijacky”的评论

    1. token 与本地IP,或者user agent做关联,具体可以取如手机硬件参数等,这样可以防止拿token到其它地方用的问题,但还是不能解决全部,因为理论上来说,客户端所有东西都可以伪造成和原来的一模一样
    2. 就是对于一些敏感操作,如转帐,改密等,需要进行密码或者令牌的二次确认

    1   漏洞   盗窃都也可以获取本地IP  use agent等相关数据   再通过分析apk代码  解密
    2   这是一个好方法   不过此处只讨论没有第三方输入的情况 ###### 昨晚灵泉涌现   想到一个解决方案   早上来不及洗刷   电脑一查  果然OK
    4   client端获取token后   通过native代码获取app签名文件内容   此处指android  app打包时的签名文件  ios wp8请自行对照  结合token+签名内容+S  使用公钥加密后发送给server端验证  OK
        漏洞  无
    签名文件内容必须在app运行之后才可以得到  分析apk原文件无法得到
       注   S为随机数  server端维护 ######回复 @欣儿 : 是的 所以下面我评论了 本来我以为这个内容第三方获取不到 既然能获取就没有意义了 这个方案里的内容 必须要满足私有 值固定 系统级 才可行######这个,还是可以破解吧,安卓的可以获取运行时数据,就是说,只要运行,签名这些也可以得到######果然是我高兴的太早 经过验证 第三方同样可以通过native代码获取签名内容 所以这个方案存在漏洞######我记得是:签名是可以通过apk 的pakageInfo获取到的。如果查询所有的安装包的签名信息,找出包名一样的签名信息。会不会就破解了呢?######你说的签名文件内容是什么?sha1?######家门钥匙丢了,自己却不知道,此时如何防盗?######你这个比喻不恰当 client和server的通信 是联机操作 不是单机操作 单机操作当然没有安全可言

    2020-06-05 14:25:22
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
事务、全局索引、透明分布式 立即下载
面向失败设计 立即下载
低代码开发师(初级)实战教程 立即下载