mirror of
https://github.com/LawnchairLauncher/lawnchair.git
synced 2026-02-20 03:08:19 +00:00
Address SessionCommitReceiver vulnerability by validating intent.
Bug: 144081762 Change-Id: I28699d26abefc716e57c281c15699f15003229b2
This commit is contained in:
@@ -71,8 +71,13 @@ public class SessionCommitReceiver extends BroadcastReceiver {
|
||||
|
||||
SessionInfo info = intent.getParcelableExtra(PackageInstaller.EXTRA_SESSION);
|
||||
UserHandle user = intent.getParcelableExtra(Intent.EXTRA_USER);
|
||||
PackageInstallerCompat packageInstallerCompat = PackageInstallerCompat.getInstance(context);
|
||||
if (!PackageInstaller.ACTION_SESSION_COMMITTED.equals(intent.getAction())
|
||||
|| info == null || user == null) {
|
||||
// Invalid intent.
|
||||
return;
|
||||
}
|
||||
|
||||
PackageInstallerCompat packageInstallerCompat = PackageInstallerCompat.getInstance(context);
|
||||
if (TextUtils.isEmpty(info.getAppPackageName())
|
||||
|| info.getInstallReason() != PackageManager.INSTALL_REASON_USER
|
||||
|| packageInstallerCompat.promiseIconAddedForId(info.getSessionId())) {
|
||||
|
||||
Reference in New Issue
Block a user