Application security feature

Banking trojan detection

Otukan detects banking trojan behaviour inside your app, linking overlays, screen control and tampering on one session so your bank can act before money moves.

  • Android
  • iOS
  • Flutter
  • React Native
Banking trojan on device is met at the session correlation boundary before it reaches the appBanking trojan on deviceSession correlationYour app
  • The pattern, not one clue

    A trojan uses several techniques on one session. Otukan links overlay, screen control and tampering signals so the combined pattern stands out.

  • Harvest denied

    Login and approval screens are shielded while the trojan is active, so it has less to capture and its next move shows up on your backend.

  • The bank decides

    Linked signals reach your fraud engine with the login or payment request, where account history completes the picture.

Trojan techniques Otukan exposes

Select a technique to see how Otukan detects it, what the app does and what your bank's systems receive.

Fake login overlay

  1. Detect

    On Android, Otukan detects another window covering your login or card screen while the customer enters details.

  2. Respond

    The app blocks input under the covering window and asks the customer to return to your genuine screen.

  3. Report

    An overlay signal with the screen name arrives with the login attempt.

Screen control and code reading

  1. Detect

    On Android, Otukan identifies a non-assistive service reading one-time codes or pressing buttons on payment screens.

  2. Respond

    Code fields are shielded and payment approvals are held for a separate confirmation.

  3. Report

    Your fraud engine sees which step was driven by a service and when it started.

Trojan-friendly environment

  1. Detect

    Otukan flags rooted and jailbroken devices and instrumentation in the banking app, conditions some trojans need or create.

  2. Respond

    High-value steps are restricted while everyday banking continues.

  3. Report

    Environment status travels with every sensitive request.

Combined attack pattern

  1. Detect

    Otukan links signals that fire on the same session, such as an overlay at login followed by service-driven taps at transfer.

  2. Respond

    The session moves to your strictest policy for the rest of its life.

  3. Report

    A correlated session record shows the sequence to your fraud team.

Where trojan detection connects

Banking trojans reach the app through several routes; Otukan meets each with its own control.

  • Mobile app malware detection

    The broader behaviour set, from keylogging to remote control, that trojan detection draws on.

  • Phishing and smishing detection

    Addresses the text message and link that usually deliver the trojan in the first place.

  • Mobile RASP

    Keeps the banking app's own checks intact, so trojan signals come from code that has not been altered.

  • Android root detection

    Finds the modified system some Android trojans rely on to hide themselves and gain more control.

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 the trojan journey

    We follow a trojan from install to cash-out and mark the screens in your app it has to use.

  2. Add protection to releases

    Protection becomes part of your existing pipeline, with signing kept by your own team.

  3. Link the signals

    Overlay, service, environment and integrity signals are joined on each session as they occur.

  4. Score in your engine

    Your fraud engine weighs the linked session record alongside account history and payee risk.

  5. Guide affected customers

    Held steps explain what to remove, what to check and how to reach your bank safely.

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.

A mobile security team should evaluate banking trojan detection by whether it catches the trojan while it works inside the banking app, and whether it links separate techniques into one picture. Otukan does both. On Android it detects fake login overlays and services reading codes or pressing buttons on payment screens. On both platforms it flags rooted or jailbroken devices and instrumentation in the app. It then joins signals from the same session, so a trojan that overlays the login and later drives a transfer shows up as one attack. Otukan works from inside your app; identifying a trojan family or cleaning a phone belongs to device-level tools.

Attack behaviour

A trojan’s working day

A banking trojan usually arrives through a text message or a fake app listing, then asks the customer for accessibility access. From there it follows a routine. It waits for the banking app to open, shows a copy of the login screen to collect credentials, reads one-time codes as they arrive on screen and, when ready, opens the app itself to add a payee and approve a transfer. Each step uses a different technique, and each one passes through your app.

What the bank sees without app evidence

Without signals from the app, the bank sees a valid login from the customer’s usual device, a code entered correctly and a payment approved in the app. Server-side checks pass, because the trojan uses the customer’s own phone and session.

The victim journey, step by step

StageTrojan behaviourOtukan signalPlatform
LoginA copied login screen drawn over yoursOverlay on a protected screenAndroid
Code entryOne-time codes read from the screenNon-assistive service active on the code fieldAndroid
Payee creationFields filled without touch inputService-driven inputAndroid
ApprovalConfirm pressed by a service or a remote operatorService-driven gesture; screen sharingAndroid; screen sharing on both
ThroughoutModified system or hooked appRoot, jailbreak and instrumentationSeparate checks per platform

Detection limits

What the banking app can see

Otukan relies on signals the platform exposes to your app about its own screens, input and process. Those signals line up with the stages a trojan passes through inside your app, which is why correlation works: one stage may be subtle, but the sequence is distinctive.

What needs device-level tools

Scanning every installed app, naming the trojan family or confirming how it was installed needs access that ordinary apps do not have. Otukan’s session record supports that work by showing exactly which stages were observed and when, so investigators start from facts rather than a customer’s recollection.

Why the sequence matters

A single overlay can come from a legitimate app, such as a chat bubble. Linking it with a service reading codes and driving an approval changes its meaning. Otukan passes both the individual signals and the linked record to your fraud engine.

Response

Proportionate by stage

Everyday actions such as checking a balance can continue with shielded content. Code entry and approvals are where holds pay off. A correlated pattern moves the whole session to your strictest response. Each stage can run in observe mode first.

Support paths for customers

A customer with a trojan is a victim, often a frightened one. Otukan’s messages say what was noticed in plain language, ask them to remove apps they do not recognise and review accessibility settings, and point to your support number rather than any number shown on screen. Assistive tools, password managers and chat bubbles are included in testing so genuine customers are not held.

What changes for the trojan operator

Trojans are run as a business. Every held approval, shielded code and blocked overlay costs the operator time on a device they may lose at any moment. When your app stops rewarding that routine, your customers become a less attractive target.

Proven in the lab

Otukan’s engineers rebuild each stage with a purpose-made test trojan inside an authorised lab, run the identical journey on a clean phone to confirm silence, and then walk through install, update, sign-in and a complete payment again. For banking-wide controls, see banking app security. Banking trojan detection is one of the controls in mobile fraud prevention.

Common questions

  • Does Otukan name the trojan family on a device?

    No. Naming a family needs access to other apps on the phone, which ordinary apps do not have. Otukan detects what trojans do to your app, which stays useful as families change their names and code. Your team receives the behaviour, the step and the sequence, which is what a fraud decision needs.

  • Are banking trojans only an Android problem?

    The classic techniques, overlays and accessibility-driven control, are Android techniques, because Android offers those capabilities to third-party apps. On iOS, attackers lean on jailbroken devices, instrumentation and social engineering. Otukan runs Android-specific overlay and service signals on Android and its own integrity signals on iOS, and never presents one as the other.

  • What if a customer's trojan is still installed after a held payment?

    The session stays under your strictest policy, and the customer is guided to remove unknown apps and review accessibility settings before trying again. Your fraud team sees the correlated record and can contact the customer through a trusted channel. The next session starts fresh, and repeat signals show the device is still affected.

On the mobile engineering team?

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

Catch the trojan in the act

Tell us the platforms, the app framework and the banking steps trojans target in your app, such as login, payee changes or transfers. We do not ask for malware samples from customers, binaries, signing keys or production credentials.

Or request a technical demo