- 谨慎实现 PendingIntents
- 详细描述
- 建议
- 参考
- CWE/OWASP
谨慎实现 PendingIntents
PendingIntent允许应用程序将Intent传递给第二个应用程序,然后可以执行该Intent,就像它是原始应用程序一样(即具有相同的权限)。
详细描述
使用PendingIntent,应用程序可以将Intent传递给第二个应用程序,然后可以执行该Intent,就像它是原始应用程序一样(即具有相同的权限)。 这允许其他应用程序回调到原始应用程序的私有组件。 外部应用程序,如果是恶意的,可能会尝试影响目标 和/或 数据/完整性。
建议
使用PendingIntents作为对私有BroadcastReceivers或broadcast activities的延迟回调,并在基本Intent中显式指定组件名称。
参考
- 示例代码 https://gist.github.com/scottyab/d5ab6a284622ebc46d5a
CWE/OWASP
- M8 - Security Decisions via Untrusted Inputs; M10 - Lack of Binary Protections
- CWE-927: Use of Implicit Intent for Sensitive Communication