CodeQL 文档

通过 ResultReceiver 泄露敏感信息

ID: java/android/sensitive-result-receiver
Kind: path-problem
Security severity: 8.2
Severity: error
Precision: medium
Tags:
   - security
   - external/cwe/cwe-927
Query suites:
   - java-security-extended.qls
   - java-security-and-quality.qls

点击查看 CodeQL 存储库中的查询

如果 ResultReceiver 是从不受信任的来源获得的,例如导出的组件接收到的 Intent,请勿向其发送敏感数据。否则,信息可能会泄露给恶意应用程序。

建议

不要向不受信任的 ResultReceiver 发送敏感数据。

示例

在以下(错误)示例中,敏感数据被发送到不受信任的 ResultReceiver

// BAD: Sensitive data is sent to an untrusted result receiver 
void bad(String password) {
    Intent intent = getIntent();
    ResultReceiver rec = intent.getParcelableExtra("Receiver");
    Bundle b = new Bundle();
    b.putCharSequence("pass", password);
    rec.send(0, b); 
}

参考

  • ©GitHub, Inc.
  • 条款
  • 隐私