Ostorlab 的不安全 Flutter 应用:学习和测试移动安全的练习场
Ostorlab 开源了两个 Flutter 应用,它们被刻意设计为不安全,用于测试和教学。其中一个是 iOS 原生应用,另一个是 Java/C++/Flutter 应用,展示了多种常见的移动应用漏洞。这两个应用采用 Apache-2.0 许可证发布,是了解 Flutter 安全的实用资源。
我们很高兴地宣布开源两个不安全的 Flutter 应用,用于测试和教学。
第一个应用是一个 Flutter 原生应用,聚焦于 iOS 漏洞。
第二个应用是一个 Java/C++/Flutter 应用。
两个仓库均托管在 GitHub 上,并采用 Apache-2.0 许可证发布。
关于该仓库
Ostorlab Insecure Flutter App 是一个刻意设计为存在漏洞的 Flutter 应用,用于安全测试和教学。 该应用旨在展示移动应用中常见的 各类安全漏洞。因此,它是测试和学习各种 Flutter 安全 漏洞的理想练习场。
演示的漏洞
该应用演示了多种漏洞,包括但不限于:
- 生物识别 None
CryptObject:展示生物识别身份验证中因实现不当或缺少 加密保护而产生的漏洞。 - ECB 加密模式:说明在加密算法中使用 ECB(Electronic CodeBook,电子密码本)工作模式的 弱点。
- 不安全的命令:演示从应用中执行不安全命令或系统命令时产生的漏洞。
- 反射 API:提供不安全使用反射 API 的实例。
- TLS 流量:解释使用未加密或加密不当的传输层安全(TLS) 流量时可能面临的安全威胁。
- 明文流量:强调通过明文流量传输敏感数据的相关风险。
- URL 中的硬编码凭据:演示在 URL 中硬编码敏感凭据的风险。
- 不安全的随机数:展示在敏感操作中使用不安全随机数生成器所带来的问题。
- Oracle Padding:说明 Oracle Padding 漏洞的潜在危险。
- SQLite 数据库调用:展示与 SQLite 数据库调用相关的不安全做法。
- Webview 不安全设置:演示 WebView 不安全设置可能引发的漏洞。
- 命令执行:展示执行系统命令时可能出现的问题。
- 哈希调用:演示哈希函数的不当使用。
- 不安全的 Shared Preferences:展示 Shared Preferences 处理不当的相关风险。
- 路径遍历:展示路径遍历漏洞的潜在危险。
- 静态 IV:演示在加密中使用静态初始化向量的 安全风险。
如何参与贡献
我们始终欢迎并感谢您为 Ostorlab Insecure iOS App 做出贡献。您可以通过以下几种方式参与:
- 报告缺陷:如果您遇到缺陷或任何看起来不对劲的地方,请在 GitHub 仓库中创建 issue 进行报告。
- 改进建议:如果您对如何改进该应用有想法,欢迎创建 issue 详细说明您的建议。
- 贡献代码:提交 pull request 来改进该应用。贡献内容可以是修复缺陷、 改进 UI、添加新的待演示漏洞,或完善文档等。
- 您的贡献不仅有助于改进该应用,还能帮助更广泛的社区 加深对移动应用安全的理解。