Application security feature

Keylogging detection

Otukan keylogging detection guards PIN and password fields in Android and iOS apps. How to evaluate it: input routes to test, app-visible signals and responses.

  • Android
  • iOS
  • Flutter
  • React Native
Captured keystrokes is met at the input path checks boundary before it reaches the appCaptured keystrokesInput path checksYour app
  • Guard the input path

    Otukan watches the three routes keystrokes leak through, keyboards, accessibility events and screen capture, on the fields you mark as sensitive.

  • Proven on your journeys

    Every keylogging signal is demonstrated on a test journey your team can repeat, with a clean device alongside as the control.

  • Typing stays normal

    Controls tighten on the few fields where a leaked character costs money, such as PINs, passwords and one-time codes. Everyday typing is left alone.

Keystroke capture routes Otukan handles

Select a capture route to see what Otukan observes, how the field is protected and what your backend learns.

Malicious keyboard apps

  1. Detect

    On Android, Otukan identifies when a non-system keyboard is the active input method on a sensitive field.

  2. Respond

    The app can switch the field to protected entry, warn the customer or hold the action, as you choose.

  3. Report

    Your backend receives the keyboard context with the login or payment request.

Keyboard extensions on iOS

  1. Detect

    Otukan identifies sensitive fields, such as PIN, card and one-time code fields, that a third-party keyboard extension could still serve.

  2. Respond

    Your app declines third-party keyboard extensions, so sensitive entry goes through the system keyboard.

  3. Report

    The keyboard policy in force is recorded with the session for audit.

Accessibility text capture

  1. Detect

    On Android, Otukan lists accessibility services able to observe text entry and separates assistive tools from unknown ones.

  2. Respond

    Sensitive fields are withheld from non-assistive services where Android allows it.

  3. Report

    The class of service active during entry is reported to your fraud team.

Recording while typing

  1. Detect

    Otukan notices screen recording, mirroring or casting while a sensitive field is on screen, using each platform's capture state.

  2. Respond

    The field and its surrounding screen are hidden from capture until entry finishes.

  3. Report

    A capture-during-entry signal travels with the request that follows.

Predictive text leakage

  1. Detect

    Otukan checks that sensitive Android fields carry the settings that keep keyboards from storing or suggesting what was typed.

  2. Respond

    Fields missing that protection are flagged in testing, before the release ships.

  3. Report

    A field-exposure finding appears in the release evidence your team reviews.

What keylogging protection draws on

Keystroke defence combines input controls with signals Otukan already collects elsewhere in the app.

  • Accessibility abuse detection

    Tells screen readers and switch access apart from services that harvest text, so assistive users keep working.

  • Screen capture protection

    Keeps typed digits and masked passwords out of recordings, screenshots and mirrored displays.

  • Hooking detection

    Finds instrumentation that reads input straight from your app's memory after the keyboard hands it over.

  • Credential theft prevention

    Links keystroke signals to the login journey, where stolen passwords turn into account takeover.

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. Inventory the fields

    Together we list every PIN, password, one-time code and card field in the app.

  2. Harden the release

    Otukan joins your current build and release pipeline without taking custody of your signing keys.

  3. Simulate the capture

    An authorised lab keylogger, keyboard and recorder confirm each signal on a test device.

  4. Run the clean control

    The same journey on an unmodified phone with common assistive tools must stay silent.

  5. Enforce field by field

    Responses move from observe to protect on the fields where the evidence justifies it.

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 keylogging detection by testing each route keystrokes can leak through inside the app, on the fields that matter, with a clean device alongside as a control. There are three routes: the keyboard that receives the input, accessibility services that observe text, and screen capture while the customer types. Otukan watches all three on the fields you mark as sensitive and applies the response you set, from recording a signal to hiding the field. It works on Android and iOS separately. Confirming or removing an infection on the whole device is a job for device-level tools, not for an app.

Attack behaviour

Keylogging on mobile rarely looks like the desktop version. There is no hidden driver recording every key. Instead, malware borrows capabilities the operating system offers for good reasons.

The victim journey

A customer installs an app that promises a themed keyboard, a battery saver or a parcel tracker. It asks them to enable a keyboard, or an accessibility service, or to allow screen recording. From then on it waits. When the customer opens your banking app and types a PIN, the text travels through a component the attacker controls. The attacker does not need to break your app. They sit on the path between the customer’s fingers and your field.

Observable behaviour, route by route

Capture routeWhat the attacker gainsAndroidiOS
KeyboardEvery character typed into fields it servesThird-party keyboards can serve most fieldsPassword fields use the system keyboard; other fields may use extensions
Accessibility eventsText changes and screen contentServices can observe much of the interfaceNot available to third-party apps
Screen captureDigits as they appear, masked-field previewsRecording and castingRecording and mirroring
InstrumentationInput read from app memoryHooks on rooted devicesHooks on jailbroken devices

Where the stolen characters end up

A captured PIN is rarely used on the same phone straight away. It is sent to the attacker, who signs in from another device, resets a password or passes a one-time code to a remote operator. That is why Otukan’s keylogging signals travel with the login or payment request: your backend can link the risky entry to the session that follows and step up authentication before the stolen value is replayed elsewhere.

Detection limits

A good evaluation separates what an app can observe from what only the operating system or a device scanner can.

What your app can see

From inside your app, Otukan sees the input path of your own fields. It knows which keyboard is active on a sensitive Android field. On iOS, it lets your app decline third-party keyboard extensions. It can tell which Android accessibility services are able to read text, and whether the screen is being recorded or mirrored during entry. It also detects instrumentation hooked into your process. These are app-visible facts, and each one can be tested and reproduced.

What stays outside the app

Listing every installed app, scanning files or proving that a particular keyboard is malicious needs permissions an ordinary app does not hold, and on iOS the sandbox rules it out. Otukan reports what it saw in the session and leaves incident confirmation to your fraud analysts. That focus is what makes each signal precise, reproducible and defensible in a fraud case.

The implementation side is covered on protecting Android and iOS apps from keylogging malware.

Proportionate response

The goal is to protect a password without making the app feel hostile.

Match the control to the field

A search box needs nothing. A card number needs protection from capture. A PIN or password needs the strongest treatment: system keyboard on iOS, no learning or suggestions on Android, hidden from recording on both. Otukan lets you set the response per field, so everyday typing stays exactly as the customer likes it.

Keep a support path open

When a field is locked down, the customer should know why. Otukan’s message explains that a keyboard or service was paused for this step and how to continue. Your support team sees the same signal, so the conversation starts from facts. Customers who rely on assistive keyboards or screen readers are recognised in the baseline and are not blocked by default.

Prove it before enforcing

Run the positive test in an authorised lab, the clean-device control and a regression pass across install, update, sign-in and payment. Record OS versions, devices and the reviewer. Only then move a field from observe to protect.

Keylogging detection is one of the controls covered on mobile fraud prevention. Screen capture and snooping are covered on anti-spyware for mobile apps.

Common questions

  • Can an app see every keylogger on the phone?

    An app sees its own input path, and that is where Otukan works. It knows which keyboard receives a field, which Android accessibility services can observe text and whether the screen is being captured. Confirming that a device is infected, or cleaning it, is a job for device-level tools and your incident process. Otukan gives your fraud team the in-session evidence that matters for the transaction.

  • Why does the answer differ between Android and iOS?

    The platforms expose different capture routes. Android lets users install keyboards and accessibility services with wide reach, so Otukan inspects both. On iOS, password fields already use the system keyboard and third-party keyboards run in a tighter sandbox, so Otukan focuses on declining third-party keyboard extensions and on screen capture. Each platform is tested on its own.

  • Will customers lose their favourite keyboard?

    Only where you decide it is worth it. Most apps protect a short list of fields, such as the PIN, the password and the one-time code, and leave chat, search and address fields untouched. Starting in observe mode shows how many customers use third-party keyboards before any field is locked down.

  • How do we evaluate a keylogging detection product fairly?

    Ask for a behaviour-to-signal matrix, then test it. Reproduce each capture route in an authorised lab and confirm the signal. Repeat the journey on a clean device with common assistive tools and confirm silence. Then check install, update, sign-in and payment still work. Record OS versions, devices and the reviewer for every result.

On the mobile engineering team?

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

Keep PINs and passwords out of reach

Tell us the platform, the app framework and which fields matter most, such as PINs, passwords or card numbers. We do not ask for binaries, keystroke data, signing keys or production credentials.

Or request a technical demo