WaTF-Team/WaTF-Bank
GitHub: WaTF-Team/WaTF-Bank
一个包含三十余个故意设计漏洞的移动银行示例应用,用于在受控环境中训练安全开发与渗透测试技能。
Stars: 141 | Forks: 41
[](https://opensource.org/licenses/MIT)
更新 iOS Swift!
What-a-Terrible-Failure Mobile Banking Application (WaTF-Bank),使用 Java、Swift 4、Objective-C 和 Python(Flask 框架)编写,并以后端服务器形式运行,旨在模拟一个包含超过 30 个漏洞的“真实世界”网络服务型移动银行应用程序。
本项目的目标:
- 应用程序开发人员、程序员和架构师可以通过研究存在漏洞的应用程序(WaTF-Bank)在 Android 和 iOS 平台上的表现,了解并思考如何创建安全的软件。
- 渗透测试人员可以练习安全评估技能,以识别并理解存在漏洞的应用程序所带来的影响。
## 漏洞列表
| OWASP Mobile Top 10 2016 | 漏洞名称 |
| :------------ |:-------------|
| M1. 不当平台使用 | - 过度的应用程序权限
- 允许安装不受支持的操作系统版本
- 无限制备份文件
- Android 内容提供者缺陷
- Android 广播接收器缺陷
- API 输入验证问题(SQL 注入、负值)
- 通过 API 响应消息泄露信息
- API 交互频率控制不足
- 不安全的应用程序本地存储
- 不安全的 Keychain 使用
- 未加密的数据库文件
- 应用程序后台时的敏感信息
- 通过设备日志泄露信息
- 复制/粘贴缓冲区缓存
- 键盘输入缓存
- 缺乏敏感信息屏蔽
- 不安全的 SSL 验证
- 基于客户端的认证缺陷
- 账户枚举
- 账户锁定策略
- 弱密码/PIN 策略
- 生物识别认证误用
- 会话管理缺陷
- 硬编码加密密钥
- 弱加密算法
- 自定义加密协议
- 不安全的直接对象引用
- 业务逻辑缺陷
- 内容提供者的 SQL 注入
- 不安全的 URL 方案处理
- 未经授权的代码修改(应用程序补丁)
- 弱 Root/Jailbreak 检测
- 方法混淆
- 缺乏代码混淆
- 应用程序可调试
- 隐藏端点暴露
标签:Android, API安全, API密钥检测, CVE监控, DSL, Flask, iOS, JSON输出, JS文件枚举, Objective-C, OWASP Mobile Top 10, Python, SQL查询, SSL验证, Swift, Web服务, 不安全本地存储, 不安全的密钥存储, 不安全的认证, 不安全的通信, 事件响应, 信息泄露, 内容提供器, 反取证, 备份安全, 复制粘贴缓存, 安全漏洞, 安全评估, 客户端加密, 平台滥用, 广播接收器, 开放策略代理, 开源, 弱密码策略, 教学实验, 无后门, 日志泄露, 未加密数据库, 移动应用安全, 移动银行, 请求拦截, 负面值测试, 负面案例, 账户枚举, 输入验证, 过度权限, 逆向工具, 银行应用, 键盘缓存