跳过内容

MASTG-TEST-0014: 测试加密标准算法配置

此测试即将更新

此测试目前可使用,但将作为新的 OWASP MASTG v2 指南 的一部分进行全面修订。

帮助我们提交PR:MASTG v1->v2 MASTG-TEST-0014: 测试密码标准算法的配置 (android)

发送反馈

概述

静态分析

识别代码中所有密码原语的实例。 识别所有自定义密码实现。 您可以查找

  • Cipher, Mac, MessageDigest, Signature
  • 接口 Key, PrivateKey, PublicKey, SecretKey
  • 函数 getInstance, generateKey
  • 异常 KeyStoreException, CertificateException, NoSuchAlgorithmException
  • 使用 java.security.*, javax.crypto.*, android.security.*android.security.keystore.* 包的类。

确认对 getInstance 的所有调用都使用安全服务的默认 provider,而不指定它(这意味着 AndroidOpenSSL 又名 Conscrypt)。 Provider 只能在 KeyStore 相关代码中指定(在这种情况下,KeyStore 应作为 provider 提供)。 如果指定了其他 provider,则应根据情况和业务案例(即 Android API 版本)进行验证,并且应检查 provider 是否存在潜在漏洞。

确保遵循“移动应用密码学”章节中概述的最佳实践。 查看 不安全和已弃用的算法常见配置问题

动态分析

您可以使用 方法追踪 在密码学方法上,以确定输入/输出值,例如正在使用的密钥。 在执行密码学操作时,监视文件系统访问,以评估密钥材料写入或读取的位置。 例如,通过使用 RMS Runtime Mobile SecurityAPI 监控器 监视文件系统。