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

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

欢迎大家讨论。
2190 次点击
所在节点    问与答
3 条回复
nicevar
2017-05-26 12:01:56 +08:00
也不是做安全的,大致有些了解
1.没有绝对的安全,挡住大多数人就行了,混淆只能挡住最初级的,加固能中高级的了
2.早期的微信数据库都没加密,直接 sqlite 就能读取出来,现在微信数据库还有几个人能搞定?
3.so 也能挡住一部分人,就是那些不熟悉 c/c++及汇编的,但是对熟悉的人来说裸的 so 作用不大,扔到 ida 里面很多东西就暴露出来了,有些 apk 自己做 loader 再加壳,以前见过有个 ariplay 的 apk 就是这样的
4.没研究过同行,以前做的应用没有
viator42
2017-05-26 14:43:14 +08:00
业务逻辑全放到服务端执行,App 只做展示和交互
总有人为了减轻服务器压力把业务代码写到客户端感觉跟捡了多大便宜似的
miclushine
2017-05-26 15:25:51 +08:00
@viator42 我们业务要求能离线使用,哎。业务放服务端,客户端只做交互和显示显然是最保险的。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/363949

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX