V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
miclushine
V2EX  ›  问与答

现在大家 Android 开发怎么做安全措施,混淆应该都是标配了,加固和数据库加密之类的用的多吗,实际效果有多大?

  •  
  •   miclushine · 2017-05-26 11:16:07 +08:00 · 2194 次点击
    这是一个创建于 2745 天前的主题,其中的信息可能已经有所发展或是发生改变。
    1:破加固看 51pj 和看雪上都不少了,看大神写的思路真是感觉加固很鸡肋,不过我也不是搞安全的,不是很懂。
    2:数据库加密,像 sqlcipher 就是用密钥解密数据库后使用,貌似微信也是用这个。拉出来暴力破解会容易攻破吗,或者数据库这个密钥要存在哪,存 apk 里面总有办法找到生成或者取得密钥的方式感觉。之前还看过一个老外的文章是分析微信的漏洞的,就包括数据库的密钥生成方式,不过文章好几年前了。
    3:还有就是关键代码放 so 文件里执行,这个破解难度应该比 java 要麻烦。
    4:现在网上各种反编译工具都很多了,不知道大家平时是否研究同行的 apk ?

    欢迎大家讨论。
    3 条回复    2017-05-26 15:25:51 +08:00
    nicevar
        1
    nicevar  
       2017-05-26 12:01:56 +08:00
    也不是做安全的,大致有些了解
    1.没有绝对的安全,挡住大多数人就行了,混淆只能挡住最初级的,加固能中高级的了
    2.早期的微信数据库都没加密,直接 sqlite 就能读取出来,现在微信数据库还有几个人能搞定?
    3.so 也能挡住一部分人,就是那些不熟悉 c/c++及汇编的,但是对熟悉的人来说裸的 so 作用不大,扔到 ida 里面很多东西就暴露出来了,有些 apk 自己做 loader 再加壳,以前见过有个 ariplay 的 apk 就是这样的
    4.没研究过同行,以前做的应用没有
    viator42
        2
    viator42  
       2017-05-26 14:43:14 +08:00
    业务逻辑全放到服务端执行,App 只做展示和交互
    总有人为了减轻服务器压力把业务代码写到客户端感觉跟捡了多大便宜似的
    miclushine
        3
    miclushine  
    OP
       2017-05-26 15:25:51 +08:00
    @viator42 我们业务要求能离线使用,哎。业务放服务端,客户端只做交互和显示显然是最保险的。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2843 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 09:00 · PVG 17:00 · LAX 01:00 · JFK 04:00
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.