NBU rules for the mobile banking app your customers use.

The National Bank of Ukraine asks banks for security requirements in development, vulnerability control, OWASP for web applications and periodic penetration tests. Its rules on strong customer authentication add limits on failed attempts, a ten-minute inactivity time-out, dynamic linking and protections against modified software on customers' phones. Ostorlab helps you test those controls in your app and its APIs, on every release.

  • Checks root and jailbreak detection, anti-tampering and anti-instrumentation, and what the app does when they trigger
  • Tests login, one-time codes, lockout and session time-outs with your test accounts
  • Follows the app into the payment APIs, even with TLS pinning
  • Proves each failure with bypass evidence or a replayable exploit
Scan your own appBook a demo

Free scan of your app from the App Store or Google Play. No login required.

Who it applies to
Banks in Ukraine; the authentication rules apply to payment service providers, including banks
Legal basis
NBU Board Resolutions No. 95 of 28 September 2017, No. 178 of 12 August 2022 and No. 58 of 3 May 2023
Focus
Penetration tests, vulnerability control, secure development, strong customer authentication
Reference
NBU information security, cyber protection and strong authentication regulations
Key dates

The NBU's security rules, date by date

The information security rules have applied since 2018, the cyber protection rules since 2022, and the 2025 amendments added incident reporting deadlines and a yearly self-assessment.

  1. 1 March 2018

    Information security regulation in force

    Resolution No. 95 sets mandatory minimum information security and cyber protection requirements for banks. Its Section V, with additional measures such as OWASP, applies from 1 September 2019.

  2. 20 August 2022

    Cyber protection regulation in force

    Resolution No. 178 sets the cyber protection system of the banking sector, rules for critical information infrastructure and the external information security audit. Some provisions apply from 1 January 2023.

  3. 10 May 2023

    Strong authentication regulation in force

    Resolution No. 58 sets authentication and strong customer authentication rules for payment service providers. Its Section V, on electronic interaction between providers, applies once the matching chapter of the Law on Payment Services takes effect.

  4. 1 March 2025

    Amendments on cyber protection and control

    Resolution No. 24 adds reporting of significant cyber incidents within 24 hours, an update within 72 hours and a final report within a month, and a yearly self-assessment report.

  5. Every year

    Self-assessment report

    Banks prepare a self-assessment of information security and cyber protection as of 31 March and submit it within one month. It asks whether a penetration test was run and whether critical and high vulnerabilities were fixed.

What the NBU asks

The NBU's security rules, applied to your mobile app

Resolution No. 95 sets the minimum information security measures, Resolution No. 178 the cyber protection system and external audit, and Resolution No. 58 the strong authentication rules. For each rule: what the text says, what it means for a mobile banking app, how Ostorlab helps, and what stays with your team.

  1. NBU Resolution No. 95, points 124 and 125

    Define security requirements when you build or buy

    What the text says

    The bank must define and document information security requirements for its information systems when they are developed, upgraded, including their components, or acquired. Development and testing must use a separate test platform on a dedicated network segment, and only anonymized data may be used as test data.

    Source:NBU Resolution No. 95, points 124 and 125

    What it means for your mobile app

    Each release of the app, and each SDK or vendor component it adds, needs security requirements and testing before it reaches the store, on an environment with no real customer data.

    How Ostorlab helps

    Mobile SAST analyses the APK, AAB or IPA directly, with no source code needed, including taint analysis across embedded SDKs. Mobile DAST runs the app, keeps authenticated sessions and captures traffic, stack traces and screenshots. On-premises scanning lets you test staging apps and APIs behind your firewall.

    What stays with you

    The requirements themselves, the test environment and anonymized test accounts.

  2. NBU Resolution No. 95, point 127; Resolution No. 178, point 18

    Control vulnerabilities in software

    What the text says

    During operation, the bank must document how it controls vulnerabilities in the hardware and software of its information systems. Its cyber protection measures must include vulnerability analysis, and receiving, testing and deploying software updates that remove vulnerabilities.

    Source:NBU Resolution No. 95, point 127; Resolution No. 178, point 18

    What it means for your mobile app

    The app and the third-party libraries inside it are software. Known vulnerabilities in them need to be found, and fixes shipped and checked.

    How Ostorlab helps

    SCA fingerprints statically compiled libraries that manifest-based scanners can miss, maps them to known vulnerabilities and tracks their closure from release to release. Findings are tracked as tickets in the platform or in Jira and ServiceNow, and retested once the fix ships.

    What stays with you

    Patching servers, networks and workstations, and the update process for the rest of your estate.

  3. NBU Resolution No. 95, point 143

    Use OWASP to build secure web applications

    What the text says

    The bank must use the standards, documents and guidelines of the Open Web Application Security Project (OWASP) to develop secure web applications.

    Source:NBU Resolution No. 95, point 143

    What it means for your mobile app

    The web services and APIs behind your mobile app are web applications. OWASP guidance for APIs and mobile apps is the natural baseline for testing them.

    How Ostorlab helps

    Ostorlab intercepts the app's traffic, even with TLS pinning, and tests the APIs for broken authorization (BOLA, BFLA, IDOR), misuse of tokens and sessions, and abuse such as enumeration, replay and automation, with request and response evidence for each finding.

    What stays with you

    Secure coding standards, developer training and code reviews.

  4. NBU Resolution No. 95, point 108; Resolution No. 4, Annex 2, as amended by Resolution No. 24

    Run periodic penetration tests

    What the text says

    The bank must check the effectiveness of its network perimeter protection by running periodic penetration tests. The yearly self-assessment asks whether a penetration test was run in the period, how and by whom, and whether the critical and high vulnerabilities it found were fixed.

    Source:NBU Resolution No. 95, point 108; Resolution No. 4, Annex 2, as amended by Resolution No. 24

    What it means for your mobile app

    The services customers reach from the internet, including the mobile banking backend, sit on that perimeter. You need pentest results and proof that serious findings were closed.

    How Ostorlab helps

    An AI-agent pentest tests the app and its APIs behind login, typically in a few hours, with a working exploit you can replay for each AI-agent finding. Retesting confirms whether each issue is resolved.

    What stays with you

    Network perimeter tests, the choice of testers and the self-assessment report.

  5. NBU Resolution No. 178, points 42 to 46, as amended by Resolution No. 24

    External information security audit, including pentests

    What the text says

    The bank sets how often its external information security audit takes place. The audit assesses the protection of cyber protection objects and the conformity of the information security management system with ISO/IEC 27001. Its methods include security analysis and penetration testing, and the bank sends the NBU the results and its approved remediation plan.

    Source:NBU Resolution No. 178, points 42 to 46, as amended by Resolution No. 24

    What it means for your mobile app

    The external audit is run by an audit firm the bank selects among Ukrainian resident legal entities. Findings about the app and its APIs will need a remediation plan.

    How Ostorlab helps

    Ostorlab helps you go into the audit with known app and API issues already fixed, and retest the app and API items of the remediation plan afterwards.

    What stays with you

    Choosing the audit firm, the audit programme, and reporting to the NBU.

  6. NBU Resolution No. 58, points 15 and 17

    Strong authentication, lockout and time-outs

    What the text says

    Payment service providers create an authentication code each time a customer accesses the account remotely or initiates a remote payment, subject to the exemptions the regulation allows. No more than five failed strong authentication attempts in a row are allowed before blocking, sessions must be protected, and inactivity after strong authentication must not exceed ten minutes.

    Source:NBU Resolution No. 58, points 15 and 17

    What it means for your mobile app

    Login, lockout and session time-out in the app are regulated controls. The server must enforce them, not only the app.

    How Ostorlab helps

    Ostorlab logs in with your test accounts, completes SMS, email or TOTP one-time codes, and tests login and logout, token refresh, timeouts, session invalidation and MFA enforcement, including step-up flows.

    What stays with you

    The choice of authentication factors, unblocking procedures and fraud monitoring.

  7. NBU Resolution No. 58, point 22

    Link each authentication code to the payment

    What the text says

    With dynamic linking, the payer sees the payee and the amount, the authentication code is linked to them, and any change to the amount or payee makes the code invalid and cancels the initiation.

    Source:NBU Resolution No. 58, point 22

    What it means for your mobile app

    An attacker who changes the amount or the payee between confirmation and execution should fail. That logic lives in the app and the payment APIs.

    How Ostorlab helps

    The AI-agent pentest tests the business logic of payment and account flows, and Ostorlab tests MFA enforcement and step-up flows, including how attackers try to manipulate them, together with the API calls behind them.

    What stays with you

    The cryptographic design of the authentication code and transaction monitoring.

  8. NBU Resolution No. 58, point 33

    Protect authentication on the customer's phone

    What the text says

    When authentication elements or codes are processed on a multi-purpose device such as a mobile phone, the provider must use separate secure execution environments, mechanisms that prevent the payer or a third party from changing the software, and measures that reduce the impact of unauthorized changes.

    Source:NBU Resolution No. 58, point 33

    What it means for your mobile app

    The app must resist tampering, repackaging and runtime hooking, and react when the device is rooted or jailbroken.

    How Ostorlab helps

    Mobile Shielding Scan runs the app in rooted and jailbroken environments, attempts bypasses of root and jailbreak detection, anti-tampering, anti-instrumentation and TLS pinning, and shows whether the app blocks the workflow, refuses to start or keeps running. You get a hardening score and bypass evidence.

    What stays with you

    The choice of shielding product and how the app responds to a compromised device.

  9. NBU Resolution No. 58, points 59 and 95

    Keep sensitive payment data confidential

    What the text says

    Sensitive payment data must be masked on display and not shown in full when entered. It must be stored, with its encryption keys, in a form protected from unauthorized viewing and modification, and protected by cryptography or made unreadable when transmitted.

    Source:NBU Resolution No. 58, points 59 and 95

    What it means for your mobile app

    Passwords, codes, keys and card data must not leak from the app's storage, logs, screenshots or traffic.

    How Ostorlab helps

    Ostorlab looks for session tokens and personal data in local storage, caches, logs and screenshots, checks for misconfigurations that weaken transport and session protections, and finds hardcoded API keys, tokens and credentials in the app package.

    What stays with you

    The key management methodology, approved by your management, and backend storage.

Summary of Ukrainian-language texts published by the National Bank of Ukraine, checked on 27 September 2026. The authentication rules apply to payment service providers, as noted. This page is not legal advice.

Mapping

NBU rules, control by control

The controls the NBU texts point to, how Ostorlab tests them in your app and its APIs, and the evidence you can keep.

NBU rules, control by control
ControlHow Ostorlab helpsEvidence you keep
Security testing when systems are developed or acquiredRes. 95, point 124Mobile SAST on the binary and Mobile DAST on the running app, before release. Details Findings with decompiled source context, traffic, stack traces and screenshots
Vulnerability control in softwareRes. 95, point 127; Res. 178, point 18Fingerprints statically compiled libraries and maps them to known vulnerabilities, release to release. Details Mapped vulnerabilities with upgrade or replace recommendations, and closure tracked across releases
Periodic penetration testsRes. 95, point 108AI-agent pentest of the app and its APIs, behind login, on the build you ship. Details A working exploit you can replay for each AI-agent finding, and a coverage heatmap
Fixing critical and high vulnerabilitiesRes. 4, Annex 2, items 34 and 35Groups findings into tickets in the platform or in Jira and ServiceNow, and retests after the fix. Ticket history and retest result for each finding
OWASP for web applications and APIsRes. 95, point 143Intercepts traffic even with TLS pinning and tests authorization, token misuse and abuse such as enumeration and replay. Details Request and response evidence for each API finding
Failed attempts, time-outs and session protectionRes. 58, point 17Tests login and logout, token refresh, timeouts and session invalidation. Details Session and token findings, with request and response logs
Strong authentication and dynamic linkingRes. 58, points 15 and 22Logs in with one-time codes and tests MFA enforcement and step-up flows, and the API calls behind them. Details Findings on login and step-up flows, with reproduction steps
Protection against modified software on the phoneRes. 58, point 33Runs the app in rooted and jailbroken environments and attempts to bypass root and jailbreak detection. Details Hardening score, and bypass evidence for each protection that failed
Protection against runtime hookingRes. 58, point 33Injects debuggers and hooks and adapts the attempt to get past anti-instrumentation defenses. Details Evidence of which protections held and which were bypassed
Sensitive payment data on the device and in transitRes. 58, points 59 and 95Looks for tokens and personal data in storage, caches, logs and screenshots, and checks transport protections. Details File system evidence showing what was written, where and when

Ostorlab tests controls in the app and its APIs. The information security management system, network and perimeter security, critical information infrastructure, transaction monitoring, business continuity, incident reporting to the NBU Cyber Defense Center and the external audit stay with your teams.

Action plan

Mobile app controls to test for the NBU rules

A practical list for security and compliance teams working on the NBU information security, cyber protection and authentication rules.

  1. Security requirements per release

    Document security requirements for the app and each vendor component, and test every build on a separate environment with anonymized data.

  2. Libraries and SDKs

    Track the third-party libraries in each release, map them to known vulnerabilities and ship the fixes.

  3. Login and lockout

    Verify blocking after five failed strong authentication attempts in a row, and a safe unblocking procedure.

  4. Session time-out

    Check that sessions end after no more than ten minutes of inactivity, and that the server enforces it.

  5. Dynamic linking

    Try changing the amount or the payee after confirmation, and confirm that the code becomes invalid and the payment is cancelled.

  6. Compromised and modified devices

    Run the app on rooted and jailbroken devices, try a modified build and runtime hooks, and confirm the app reacts.

  7. APIs and sensitive data

    Test authorization on every account and payment API, and look for codes, keys and tokens in storage, logs and traffic.

  8. Evidence for the self-assessment

    Keep pentest results and retests of critical and high findings for the report as of 31 March and for the external audit.

A suggested list, not an NBU template. This is not legal advice.

Sources

The official texts this page is based on, checked on 27 September 2026.

FAQ

Frequently asked questions

Straight answers on coverage, setup, and how results reach your team.

Can't find your answer? Book a demo or contact us.

Test your mobile banking app against the NBU rules

Start with a free scan of your app from the store, or book a demo to run shielding and logged-in tests with our team.