Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Test for Implicit Intent Injection (MSTG-PLATFORM-2) #2056

Merged
merged 11 commits into from
Jan 31, 2023

Conversation

LukasMarckmiller
Copy link
Contributor

This PR is related to #2052 and covers the implicit intent part but the part about broadcast receiver changes in Android Oreo, mentioned in the closed issue #941 is still open.

Copy link
Collaborator

@cpholguera cpholguera left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just a comment for now. Sorry about the long wait @LukasMarckmiller, we are working on the MASVS refactoring for a couple of months already and that's getting all of our time. Thanks for your PR and for your patience!

@@ -407,8 +407,151 @@ public boolean isAlphaNumeric(String s){

An alternative to validation functions is type conversion, with, for example, `Integer.parseInt` if only integers are expected. The [OWASP Input Validation Cheat Sheet](https://www.owasp.org/index.php/Input_Validation_Cheat_Sheet "OWASP Input Validation Cheat Sheet") contains more information about this topic.

#### Implicit Intent Injection
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does this fix the problem? If yes, we should include this.

https://developer.android.com/about/versions/13/behavior-changes-13#intent-filters

@LukasMarckmiller
Copy link
Contributor Author

@cpholguera

unfortunately this feature does not fix the problem since the receiving app is the malicious part anyway. The core problem is not the hijacking of the intent but the improper handling of its return value.

@LukasMarckmiller
Copy link
Contributor Author

Just a comment for now. Sorry about the long wait @LukasMarckmiller, we are working on the MASVS refactoring for a couple of months already and that's getting all of our time. Thanks for your PR and for your patience!

No problem! Im happy to contribute to the project so i can give something back to you guys! 😄

@TheDauntless TheDauntless self-assigned this Jun 24, 2022
@TheDauntless TheDauntless self-requested a review June 30, 2022 08:17
Document/0x05h-Testing-Platform-Interaction.md Outdated Show resolved Hide resolved
Document/0x05h-Testing-Platform-Interaction.md Outdated Show resolved Hide resolved
Document/0x05h-Testing-Platform-Interaction.md Outdated Show resolved Hide resolved
Document/0x05h-Testing-Platform-Interaction.md Outdated Show resolved Hide resolved
Document/0x05h-Testing-Platform-Interaction.md Outdated Show resolved Hide resolved
Document/0x05h-Testing-Platform-Interaction.md Outdated Show resolved Hide resolved
Document/0x05h-Testing-Platform-Interaction.md Outdated Show resolved Hide resolved
Copy link
Collaborator

@TheDauntless TheDauntless left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved, but can you please fix this one typo before merging?

@@ -407,8 +407,151 @@ public boolean isAlphaNumeric(String s){

An alternative to validation functions is type conversion, with, for example, `Integer.parseInt` if only integers are expected. The [OWASP Input Validation Cheat Sheet](https://www.owasp.org/index.php/Input_Validation_Cheat_Sheet "OWASP Input Validation Cheat Sheet") contains more information about this topic.

#### Implicit Intent Injection

[Implicit intents](https://developer.android.com/guide/components/intents-filters#ExampleSend "Implicit intents") are useful when the user want to use an external functionality of another app without requiring the developer to specify a particular app in the intent. For example, if the user clicks on an e-mail address within an app, an e-mail app should open and prepare a draft to the given e-mail address. However, the calling app does not want to specify a concrete e-mail app but leaves this choice to the user.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
[Implicit intents](https://developer.android.com/guide/components/intents-filters#ExampleSend "Implicit intents") are useful when the user want to use an external functionality of another app without requiring the developer to specify a particular app in the intent. For example, if the user clicks on an e-mail address within an app, an e-mail app should open and prepare a draft to the given e-mail address. However, the calling app does not want to specify a concrete e-mail app but leaves this choice to the user.
[Implicit intents](https://developer.android.com/guide/components/intents-filters#ExampleSend "Implicit intents") are useful when the user wants to use an external functionality of another app without requiring the developer to specify a particular app in the intent. For example, if the user clicks on an e-mail address within an app, an e-mail app should open and prepare a draft to the given e-mail address. However, the calling app does not want to specify a concrete e-mail app and leaves this choice to the user.

@cpholguera cpholguera merged commit c7b1d26 into OWASP:master Jan 31, 2023
@cpholguera cpholguera changed the title Issue #2052 - Implicit Intent Injection Add Test for Implicit Intent Injection (MSTG-PLATFORM-2) May 8, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants