Last updated: April 29, 2026
Deep links let other apps invoke yours. Misimplemented, they become attack vectors: open phishing pages, leak tokens, hijack flows.
Two patterns
- Custom URL schemes (myapp://login) — any app can register; squatter wins. Insecure.
- Universal Links (iOS) / App Links (Android) — domain-verified via well-known file. Only your app handles the URL.
App Links setup
Android: android:autoVerify="true" in manifest + /.well-known/assetlinks.json on your domain.
iOS: com.apple.developer.associated-domains entitlement + /.well-known/apple-app-site-association.
Attack patterns
- DDL hijacking — malicious app registers same custom scheme
- Intent redirection — your app forwards intent to internal component without validation
- WebView with deep links — JavaScript triggers your custom scheme; bypass auth
Defender
- Use App Links / Universal Links exclusively
- Validate every input from deep link
- Scope sensitive operations to manual user gesture
Module Quiz · 6 questions
Pass with 80%+ to mark this module complete. Unlimited retries. Each question shows an explanation.
Custom team training + practitioner advisory
Beyond the free academy — we run private workshops, vCISO advisory, and red-team exercises tailored to your stack. For Indian SMBs scaling past their first hire.