移动安全开发指南

释放双眼,带上耳机,听听看~!

我们NowSecure花了很多时间攻击移动应用 – 黑客,破解加密,查找缺陷,渗透测试,并寻找存储不安全的敏感数据。 我们这么做是为了帮助开发人员提高应用程序的安全性。 本文件代表了我们与客户和合作伙伴共享的一些知识。 我们致力于推动全球移动应用安全。

使用本指南

本指南提供了在开发过程中使用的具体建议。 本报告中对攻击和安全建议的描述并不全面或完美,但您将获得实用的建议,您可以使用它们来提高应用程序的安全性。

我们定期修订我们的最佳做法,并欢迎您的贡献。 我们同时会定期从被接受到主存储库中更新本指南并发布在这里

要了解攻击者可能在您的应用程序上使用的所有攻击方法,请阅读我们的移动安全入门.

目录

移动安全入门

编码实践

2.1 增加代码复杂性和使用混淆

2.2 避免简单逻辑

2.3 测试第三方库

2.4 实施防篡改技术

2.5 在内存中安全的存储敏感数据

2.6 安全的删除数据

2.7 避免敏感数据的查询字符串

敏感数据处理

3.1 实现安全数据存储

3.2 使用Cookie的安全设置

3.3 完全验证SSL / TLS

3.4 防止SSL降级攻击

3.5 限制使用UUID

3.6 谨慎处理地理位置数据

3.7 本地会话超时机制

3.8 使用增强/双因素身份验证

3.9 保护应用程序设置

3.10 隐藏帐号并使用令牌

3.11 使用安全的网络传输方法传输敏感数据

3.12 验证来自客户端的输入

3.13 避免将应用程序数据存储在备份中

缓存与日志

4.1 避免缓存应用程序数据

4.2 避免崩溃日志

 4.3 限制缓存用户名

介绍

4.4 谨慎管理调试日志

4.5 注意键盘缓存

4.6 注意复制和粘贴

Webviews

5.1 防止frame劫持和点击劫持

5.2 使用表单令牌保护CSRF

iOS

6.1 谨慎使用keychain

6.2 避免缓存应用程序快照

6.3 保护针对缓冲区溢出的攻击

6.4 避免缓存HTTP(S)请求/响应

6.5 应用ATS(App Transport Security)

6.6 正确应用Touch ID

Android

7.1 谨慎配置file permissions

7.2 谨慎实现 Intents

7.3 检查 Activities

7.4 谨慎使用 Broadcasts

7.5 谨慎实现 PendingIntents

7.6 保护应用程序服务

7.7 避免 Intent 嗅探

7.8 谨慎实施content providers

7.9 遵循WebView最佳实践

7.10 避免存储缓存的摄像机图像

7.11 避免GUI对象缓存

7.12 签名 Android APKs

Servers

8.1 实施正确的Web服务器配置

8.2 正确配置服务器端SSL

8.3 使用合适的会话管理

8.4 保护和执行Web服务的渗透测试

8.5 保护内部资源

人已赞赏
安全工具安全教程

Python打造强大渗透工具(目标机监听控制端)

2019-10-23 14:29:27

安全工具安全教程

移动安全开发指南-移动安全入门

2019-10-24 15:25:32

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索