Application security feature

Mobile man-in-the-middle attack prevention

Otukan hardens how your mobile app trusts its connections, spots interception on the device and keeps working on legitimate corporate networks.

  • Android
  • iOS
  • Flutter
  • React Native
Intercepted connections is met at the connection trust boundary before it reaches the appIntercepted connectionsConnection trustYour app
  • Defend the trust decision

    Interception rarely breaks encryption; it persuades the app to trust the wrong party. Otukan protects the moment your app decides whom to trust.

  • Guard the guard

    Otukan watches for hooks that switch off certificate checks, the usual first step in intercepting a protected app.

  • Built for real networks

    Corporate inspection, certificate changes and captive portals are planned with your team, so strong connection security never turns into an outage.

Connection attacks Otukan addresses

Select an attack to see how Otukan detects it, what the app does and what your backend learns.

Rogue certificate authority

  1. Detect

    Pinning compares the server's key with the ones your app expects, so a certificate from an added authority fails.

  2. Respond

    The connection is refused before any request or credential is sent.

  3. Report

    A pinning failure is recorded and reported once a trusted connection is available.

Intercepting proxy

  1. Detect

    Otukan reads the device's proxy and user-installed certificate settings the way each platform exposes them.

  2. Respond

    Sensitive flows can be restricted while ordinary browsing continues.

  3. Report

    Proxy context travels with requests for your risk decision.

Disabled certificate checks

  1. Detect

    Hooking detection watches the functions that validate certificates for replacement or bypass.

  2. Respond

    The session ends or sensitive actions stop, per your policy.

  3. Report

    Your backend receives a signal that the app's trust checks were tampered with.

Downgraded or plain connections

  1. Detect

    Otukan enforces encrypted connections for the app's own traffic and flags attempts to fall back.

  2. Respond

    Requests over an unencrypted path are not sent.

  3. Report

    The attempted fallback is recorded for your security team.

Manipulated sessions

  1. Detect

    Requests carry integrity signals, so your server can spot replayed or altered calls.

  2. Respond

    Your backend refuses the call; the app prompts the user to sign in again.

  3. Report

    Replay and alteration attempts are visible in your server logs.

Layers that work against interception

Interception has several routes, so Otukan combines several controls and reports what each one sees.

  • Certificate pinning

    Ties your app to the keys your servers use, with backup keys ready for rotation.

  • Proxy and VPN context

    Adds proxy, VPN and user-certificate settings as context for your policy without treating them as proof.

  • Connection hardening

    Enforces encrypted transport and strict certificate validation for the app's own traffic.

  • TLS session protection

    Gives your server signals to recognise replayed or altered requests within a session.

You choose the response

Set a response for each user flow. Start by observing, then tighten flow by flow as the signals prove themselves.

Observe

Signal sent to your backend

Rolling out a new policy and measuring real-world signals.

Warn

This device looks modified. Continue with care.

Conditions some genuine users create, such as developer settings.

Restrict

Payments are unavailable on this device.

Payments, stored data and account changes.

Terminate

Session closed for your security.

Clear tampering on a high-risk flow.

How it works

  1. Map your endpoints

    We list the hosts your app talks to, who controls their certificates and how often keys change.

  2. Plan pins and backups

    Primary and backup keys are chosen with your infrastructure team before anything is enforced.

  3. Protect the build

    Connection controls join your pipeline; nobody outside your team handles the signing keys.

  4. Test real networks

    The release is tried on home, mobile and corporate networks and through an authorised intercepting proxy.

  5. Rotate on schedule

    Key changes follow the plan agreed with your team, with backup keys already shipped.

Free for app publishers

Check your app's exposure

A passive review of your published app by an Otukan engineer. No files, no access to your systems. Findings go by email to the verified publisher.

You finish the request on the next page.

Your app reduces interception and connection-tampering risk by trusting only the servers it expects, by noticing when the device or the app itself has been set up to intercept, and by giving your backend a way to recognise altered requests. Otukan combines certificate pinning with backup keys, proxy and user-certificate context, hooking detection on the functions that validate certificates, and request integrity signals. It covers the app’s own connections on Android and iOS. Corporate networks that inspect traffic, certificate rotation and recovery are planned with your team, so legitimate users stay connected.

Connection threats

Interception takes different forms, and each one leaves different evidence.

ThreatHow it worksStopped by HTTPS alone?Where Otukan acts
Invalid certificateA network attacker presents a certificate the device does not trustYes, when the app validates properlyStrict validation for the app’s traffic
Added certificate authorityThe attacker persuades the user or an administrator to trust a new authorityNot alwaysPinning refuses keys you did not expect
Intercepting proxyTraffic is routed through a proxy that decrypts and re-encrypts itNot alwaysPinning, plus proxy and certificate context
Hooked trust checksA tool on the device replaces the app’s certificate checksNoHooking detection on validation functions
Manipulated sessionA captured request is replayed or alteredNoRequest integrity signals for your server

Most successful attacks on a protected app do not break encryption. They persuade the app to trust the wrong party. That is where Otukan concentrates.

Per-platform behaviour

On Android, apps built for current platform versions do not trust user-added certificate authorities unless they opt in, and each app declares its rules in a network security configuration. On iOS, App Transport Security requires encrypted connections by default, and profile-installed certificates need explicit user trust. Otukan’s checks follow each platform’s own rules; neither platform’s behaviour is assumed for the other.

Control layers

Each layer covers a gap the others leave.

  • Validation. The app’s own traffic uses encrypted transport with strict certificate checks, and fallbacks are refused. See connection hardening.
  • Pinning. The app accepts only the keys your servers use. See certificate pinning.
  • Integrity. Hooking detection and anti-tampering notice when pinning or validation is removed from the app or switched off while it runs.
  • Context. Proxy, VPN and user-certificate settings reach your backend as risk context. See proxy detection.
  • Server decision. Signals travel with requests, so your backend decides whether to serve a login or payment.

Traffic from third-party libraries inside your app is reviewed during onboarding, because not every library uses the app’s network stack.

Where the layers meet

A typical interception attempt shows how the layers support each other. An attacker installs a proxy certificate: pinning refuses it. They hook the pinning code: hooking detection reports the change. They patch the check out of the package: integrity checks see a modified release. At every step your backend hears about it, and the login or payment waits for a decision there.

Operations

Connection controls fail in public when they are not planned. Otukan treats operations as part of the product.

Legitimate enterprise networks

Some organisations inspect all encrypted traffic with their own certificates. You choose, per flow, whether such networks are allowed. Allowed networks proceed with the signal recorded; refused ones show users a clear message and a way forward.

Certificate rotation

Primary and backup keys are shipped together and changes follow an agreed schedule. Your infrastructure team knows which keys the app expects before any certificate is renewed.

Support and diagnostics

When a user reports that the app cannot connect, your support team needs to know why. Otukan records which layer refused the connection, whether pinning, validation or a policy on proxies, so support can tell a hostile network from a misconfigured one and give the right advice.

Recovery

If a key must be replaced urgently, the agreed plan says which backup takes over and how users on older releases are guided to update. Captive portals and expired certificates are handled with messages rather than silent failures.

Each control is verified in an authorised lab: an intercepting proxy and an added authority confirm the refusal and the signal, the same journey on a clean network confirms normal service, and install, update, sign-in and the payment or account flow are repeated, with versions, networks and the reviewer recorded. For wider context, return to mobile app security. For a structured way to evaluate options, see the man-in-the-middle prevention solution guide.

Common questions

  • Is HTTPS alone enough against man-in-the-middle attacks?

    HTTPS protects against someone on the same network who cannot make the device trust their certificate. It does less against an attacker who installs a certificate on the device, a hostile proxy the user was tricked into trusting, or a tool that hooks the app's certificate checks. Otukan adds pinning, device context and hooking detection for those cases.

  • Will pinning break our app for users behind a corporate proxy?

    It can, which is why Otukan plans it. Some organisations inspect encrypted traffic with their own certificates. You decide whether those networks are acceptable for your app, and we test the release on them. Where you allow inspection, the connection proceeds and the signal is recorded; where you do not, users see a clear message rather than a silent failure.

  • What happens when our server certificate changes?

    Otukan pins keys rather than a single certificate where possible and ships backup keys with the app, so a planned rotation does not lock users out. We agree a rotation plan with your infrastructure team, including what to do if a key must be replaced in an emergency.

  • Do Android and iOS handle certificates the same way?

    No. Android apps built for current platform versions do not trust user-installed certificate authorities unless the app opts in through its network security configuration. On iOS, a certificate installed through a profile is trusted for encrypted connections only after the user enables it in certificate trust settings. Otukan's checks follow each platform's rules.

On the mobile engineering team?

How protection fits your build, signing and release, platform by platform.

Keep your app's conversations private

Tell us the platform, the framework and where your users connect from, including any corporate networks that inspect traffic. We never ask you to share builds, signing keys or production credentials.

Or request a technical demo