Skip to content

MASWE-0058: Insecure Deep Links

Content in BETA

This content is in beta and still under active development, so it is subject to change any time (e.g. structure, IDs, content, URLs, etc.).

Send Feedback

Placeholder Weakness

This weakness hasn't been created yet and it's a placeholder. But you can check its status or start working on it yourself. If the issue has not yet been assigned, you can request to be assigned to it and submit a PR with the new content for that weakness by following our guidelines.

Check our GitHub Issues for MASWE-0058

Initial Description or Hints

e.g. use of URL Custom Schemes, unverified AppLinks/Universal Links, not validating URLs. Deep Link parameters offers a wide range of possibilities. A malformed URI or parameter value, if not sanitized, may trigger an injection in different points of the application. For example, CWE-939 prevents the exploit of the URI checking the source and CWE-917 prevents the exploit of the URI checking the content.

Relevant Topics

  • URL Custom Schemes
  • AppLinks
  • Universal Links
  • URL validation
  • Check for OS version. e.g. deep link are more secure after Android XX

References

MASTG v1 Coverage

No MASTG v1 tests are related to this weakness.

Tests

MASTG-TEST-0393: Use of Unverified App Links MASTG-TEST-0394: Missing Input Validation in Custom URL Scheme Handlers MASTG-TEST-0370: Missing Input Validation in Custom URL Scheme Handlers MASTG-TEST-0371: Missing Source Validation in Custom URL Scheme Handlers

Best Practices

MASTG-BEST-0070: Verify Android App Links with autoVerify and Digital Asset Links MASTG-BEST-0071: Validate Input Parameters in Deep Link and Custom URL Scheme Handlers MASTG-BEST-0045: Limit Sensitive Data Exposure Through iOS IPC Channels MASTG-BEST-0054: Validate Input Parameters in Custom URL Scheme Handlers MASTG-BEST-0055: Validate Source Application in Custom URL Scheme Handlers