用途
mobile-security-coder 是一个面向移动端安全编码的专家技能,用于在移动应用开发过程中提供安全实践指导、最佳实践与检查清单。它聚焦于“动手写安全代码”,而非高层安全审计。
适用场景包括:
- 移动安全编码任务或工作流
- 需要移动安全编码的指导、最佳实践或检查清单
不适用场景包括:
- 与移动安全编码无关的任务
- 需要该范围之外的其它领域或工具
与安全审计的分工
- 使用本技能:动手移动安全编码、实现安全移动模式、修复移动端特有漏洞、配置 WebView 安全、实现移动认证。
- 使用 security-auditor:高层安全审计、合规评估、DevSecOps 流水线设计、威胁建模、安全架构评审、渗透测试规划。
- 关键区别:本技能专注于编写安全的移动代码,security-auditor 专注于审计和评估安全态势。
主要能力
通用安全编码实践
- 输入验证与净化:移动端特有输入验证、触摸输入安全、手势验证
- 注入攻击防护:移动数据库 SQL 注入、NoSQL 注入、移动环境命令注入
- 错误处理安全:移动端安全错误消息、崩溃报告安全、调试信息保护
- 敏感数据保护:移动数据分类、安全存储模式、内存保护
- 密钥管理:移动凭据存储、Keychain/Keystore 集成、生物识别保护的密钥
- 输出编码:移动 UI 上下文感知编码、WebView 内容编码、推送通知安全
移动数据存储安全
- 安全本地存储:SQLite 加密、Core Data 保护、Realm 安全配置
- Keychain 与 Keystore:安全凭据存储、生物识别认证集成、密钥派生
- 文件系统安全:安全文件操作、目录权限、临时文件清理
- 缓存安全:安全缓存策略、缓存加密、敏感数据排除
- 备份安全:敏感文件备份排除、加密备份处理、云备份保护
- 内存保护:内存转储防护、安全内存分配、缓冲区溢出防护
WebView 安全实现
- URL 白名单:可信域限制、URL 验证、协议强制(HTTPS)
- JavaScript 控制:默认禁用 JavaScript、选择性启用、脚本注入防护
- 内容安全策略:WebView 中 CSP 实现、script-src 限制、unsafe-inline 防护
- Cookie 与会话管理:安全 Cookie 处理、会话隔离、跨 WebView 安全
- 文件访问限制:本地文件访问防护、资源加载安全、沙箱化
- User Agent 安全:自定义 User Agent 字符串、指纹识别防护、隐私保护
- 数据清理:定期清理 WebView 缓存与 Cookie、会话数据清理、临时文件移除
HTTPS 与网络安全
- TLS 强制:仅 HTTPS 通信、证书固定、SSL/TLS 配置
- 证书验证:证书链验证、自签名证书拒绝、CA 信任管理
- 中间人防护:证书固定实现、网络安全监控
- 协议安全:HTTP Strict Transport Security、安全协议选择、降级防护
- 网络错误处理:安全网络错误消息、连接失败处理、重试安全
- 代理与 VPN 检测:网络环境验证、安全策略执行
移动认证与授权
- 生物识别认证:Touch ID、Face ID、指纹认证、回退机制
- 多因素认证:TOTP 集成、硬件令牌支持、基于短信的 2FA 安全
- OAuth 实现:移动 OAuth 流程、PKCE 实现、深链安全
- JWT 处理:安全令牌存储、令牌刷新机制、令牌验证
- 会话管理:移动会话生命周期、前后台切换、会话超时
- 设备绑定:设备指纹、基于硬件的认证、root/越狱检测
平台特定安全
- iOS 安全:Keychain Services、App Transport Security、iOS 权限模型、沙箱
- Android 安全:Android Keystore、Network Security Config、权限处理、ProGuard/R8 混淆
- 跨平台考量:React Native 安全、Flutter 安全、Xamarin 安全模式
- 原生模块安全:桥接安全、原生代码验证、内存安全
- 权限管理:运行时权限、隐私权限、位置/相机访问安全
- 应用生命周期安全:前后台切换、应用状态保护、内存清理
API 与后端通信
- API 安全:移动 API 认证、速率限制、请求验证
- 请求/响应验证:模式验证、数据类型强制、大小限制
- 安全头:移动端特有安全头、CORS 处理、内容类型验证
- 错误响应处理:安全错误消息、信息泄露防护、调试模式保护
- 离线同步:安全数据同步、冲突解决安全、缓存数据保护
- 推送通知安全:安全通知处理、载荷加密、令牌管理
代码保护与混淆
- 代码混淆:ProGuard、R8、iOS 混淆、符号剥离
- 防篡改:运行时应用自保护(RASP)、完整性检查、调试器检测
- root/越狱检测:设备安全验证、安全策略执行、优雅降级
- 二进制保护:防逆向工程、加壳、动态分析防护
- 资源保护:资源加密、内嵌资源安全、知识产权保护
- 调试保护:调试模式检测、开发功能禁用、生产加固
移动端特有漏洞
- 深链安全:URL scheme 验证、intent filter 安全、参数净化
- WebView 漏洞:JavaScript 桥接安全、file scheme 访问、通用 XSS 防护
- 数据泄露:日志净化、截屏保护、内存转储防护
- 侧信道攻击:时序攻击防护、基于缓存的攻击、声学/电磁泄露
- 物理设备安全:录屏防护、截屏阻止、肩窥防护
- 备份与恢复:安全备份处理、恢复密钥管理、数据恢复安全
跨平台安全
- React Native 安全:桥接安全、原生模块验证、JavaScript 线程保护
- Flutter 安全:平台通道安全、原生插件验证、Dart VM 保护
- Xamarin 安全:托管/原生互操作安全、程序集保护、运行时安全
- Cordova/PhoneGap:插件安全、WebView 配置、原生桥接保护
- Unity 移动:Asset Bundle 安全、脚本编译安全、原生插件集成
- 渐进式 Web 应用:移动端 PWA 安全、Service Worker 安全、Web Manifest 验证
隐私与合规
- 数据隐私:GDPR 合规、CCPA 合规、数据最小化、同意管理
- 位置隐私:位置数据保护、精确位置限制、后台位置安全
- 生物识别数据:生物识别模板保护、隐私保护认证、数据保留
- 个人数据处理:PII 保护、数据加密、访问日志、数据删除
- 第三方 SDK:SDK 隐私评估、数据共享控制、供应商安全验证
- 分析隐私:隐私保护分析、数据匿名化、退出机制
测试与验证
- 安全测试:移动渗透测试、移动端 SAST/DAST、动态分析
- 运行时保护:运行时应用自保护、行为监控、异常检测
- 漏洞扫描:依赖扫描、已知漏洞检测、补丁管理
- 代码审查:安全导向代码审查、静态分析集成、同行评审流程
- 合规测试:安全标准合规、监管要求验证、审计准备
- 用户验收测试:安全场景测试、社会工程抵抗、用户教育
使用方式
该技能以指导性方式工作,典型流程包括:
- 明确目标、约束和所需输入。
- 应用相关最佳实践并验证结果。
- 提供可执行步骤和验证方法。
响应方法通常包括:评估移动安全需求(含平台约束与威胁模型)、实现移动端输入验证、配置 WebView 安全、设置安全数据存储、实现认证与生物识别、配置网络安全与证书固定、应用代码保护、处理隐私合规、使用移动端测试工具验证安全控制。
示例交互包括:
- “实现带 HTTPS 强制和 CSP 的安全 WebView 配置”
- “设置带安全回退机制的生物识别认证”
- “为敏感用户数据创建加密的安全本地存储”
- “为 API 通信安全实现证书固定”
- “配置带 URL 验证和参数净化的深链安全”
- “设置带优雅安全降级的 root/越狱检测”
- “实现原生与 WebView 之间的安全跨平台数据共享”
- “创建符合隐私合规的分析,包含数据最小化和同意”
- “实现带输入验证的安全 React Native 桥接通信”
- “配置带消息验证的 Flutter 平台通道安全”
- “设置带程序集保护的安全 Xamarin 原生互操作”
- “实现带沙箱的安全 Cordova 插件通信”
适用场景
- 移动应用安全编码与实现
- 移动端特有漏洞修复
- WebView 安全配置
- 移动认证与生物识别实现
- 安全数据存储与加密
- 网络安全与证书固定
- 跨平台框架安全加固
- 隐私合规与数据处理
限制
- 不适用于与移动安全编码无关的任务。
- 不适用于需要该范围之外其它领域或工具的场景。
- 高层安全审计、合规评估、DevSecOps 流水线设计、威胁建模、安全架构评审、渗透测试规划应使用 security-auditor。
- 资料未提供具体安装命令、价格、平台支持列表或效果数据。