Skip to main content

Apache Fineract CVE-2026-56287

| EUVDEUVD-2026-44603 HIGH
SQL Injection (CWE-89)
8.1
CVSS 3.1 · Vendor
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Authenticate with client-view credentials
  2. Delivery
    Send GET /api/v1/clients with crafted orderBy payload
  3. Exploit
    Inject boolean CASE into ORDER BY clause
  4. Execution
    Infer data bit-by-bit from row ordering
  5. Persist
    Pivot to LOAD_FILE() on MySQL/MariaDB
  6. Impact
    Exfiltrate database contents and readable files

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Parameterized queries, prepared statements
MITRE ATT&CK

2 techniques across 2 tactics: Initial Access, Persistence

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires an authenticated account with permission to view clients (CVSS PR:L) and network reachability to the Fineract REST API endpoint GET /api/v1/clients; no user interaction and no special non-default configuration are needed for the base SQL injection, since the vulnerable orderBy handling is present in default builds up to 1.14.0. The file-disclosure escalation is conditional: it requires the database back end to be MySQL or MariaDB and the DB process account to have FILE privileges / readable target files via LOAD_FILE() - it does not apply to PostgreSQL. Limiting factors: an attacker must already possess valid low-privilege credentials, and confidentiality-only impact means this is primarily a data-extraction vector rather than a direct code-execution path.

Impact

The provided CVSS 3.1 vector (AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N, 8.1) reflects a network-reachable, low-complexity attack requiring only low privileges and no user interaction. The realistic risk is elevated because Fineract handles sensitive financial/PII data and any legitimate low-privilege operator with client-view rights can weaponize the flaw. However, note a discrepancy: the vector rates I:H, but an ORDER BY injection inside a SELECT enables read/extraction rather than write, so the integrity impact is arguably overstated (see assessed vector). EPSS is not provided, KEV status is NO, and no standalone public PoC is referenced - though the fix commit publicly demonstrates a boolean-based extraction payload, effectively lowering the bar for exploit development. Net: a genuine priority for any organization running Fineract, tempered by the authentication requirement (PR:L) which limits it to insiders or attackers who have already obtained valid credentials.

Exploit ScenarioDerived

A low-privileged Fineract user (or an attacker who has phished such credentials) sends GET /api/v1/clients with a crafted orderBy value like 'c.office_id, (CASE WHEN (ASCII(SUBSTRING((SELECT ...),1,1)) - 109) THEN c.id ELSE (c.id*-1) END)', observing the differing row order/response to extract data one boolean at a time. On a MySQL/MariaDB back end the attacker pivots to LOAD_FILE() to read files readable by the DB process. The fix PR publicly includes this exact payload as a regression test, so a working technique is documented even though no packaged exploit was referenced.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
No patch listed yet 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv2 – Jul 15, 2026

Blind boolean-based SQL injection in Apache Fineract's Client Search API (GET /api/v1/clients) through version 1.14.0 lets an authenticated user who holds the view-clients permission concatenate unvalidated orderBy (and sortOrder) parameters directly into the backing SQL query. Attackers can extract arbitrary database contents one bit at a time and, on MySQL/MariaDB back ends, read arbitrary files accessible to the DB process via LOAD_FILE(). There is no public exploit identified at time of analysis, though the vendor's fix PR (#6020) ships an integration test containing a working injection payload; not listed in CISA KEV.

Earlier versions of this analysis (1)
v1 Jul 15, 2026 - 08:16

Boolean-based SQL injection in Apache Fineract's Client Search API (GET /api/v1/clients) allows authenticated users with client-viewing permissions to inject arbitrary SQL via the orderBy and sortOrder parameters in versions up to and including 1.14.0. On MySQL/MariaDB backends, the attack escalates to arbitrary local file disclosure through the LOAD_FILE() SQL function, exposing any file readable by the database process - including application configuration files and credentials. No active exploitation has been confirmed (not listed in CISA KEV) and no public exploit code has been identified; vendor-recommended remediation is upgrade to version 1.15.0.

RemediationAI

Upstream fix available (PR/commit https://github.com/apache/fineract/pull/6020); a released, tagged patched version is not independently confirmed from the provided data - monitor https://fineract.apache.org/ and the ASF thread https://lists.apache.org/thread/l5klcj2v0dx63bssvb0gmw1nzzc47col for the fixed release and upgrade to a version above 1.14.0 that includes the InputValidator allow-list. Until a patched build is deployed, restrict the 'view clients' permission (READ_CLIENT) to the minimum set of trusted roles to shrink the pool of accounts that can reach the endpoint, and place a WAF/reverse-proxy rule in front of GET /api/v1/clients that rejects orderBy values not matching ^(id|displayName|officeName|accountNo|officeId)$ and sortOrder values other than ASC/DESC (side effect: any legitimate client using other sort columns will break). On MySQL/MariaDB, revoke the FILE privilege from the Fineract database account and/or set secure_file_priv to blunt the LOAD_FILE() file-disclosure escalation (side effect: disables any legitimate server-side file loading). Enable query logging/monitoring to detect boolean-based probing.

Affected VersionsENISA

Apache Fineract 0 ≤1.14.0

Affected Packages

euvd apache_fineract no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Apache Fineract is an open-source core-banking / microfinance platform built on Spring (Java) that exposes a REST API over a relational database (MySQL/MariaDB/PostgreSQL). The vulnerable code path is ClientReadPlatformServiceImpl.retrieveAll(), which appended searchParameters.getOrderBy() and getSortOrder() straight into a StringBuilder-composed SQL 'order by' clause. The prior defense relied on columnValidator.validateSqlInjection(), which proved insufficient. This is a classic CWE-89 (Improper Neutralization of Special Elements used in an SQL Command) - the ORDER BY clause is a context where parameter binding cannot be used, so identifiers must be whitelisted rather than sanitized. The fix introduces an InputValidator with a strict regex allow-list (^(id|(display|office)Name|accountNo|officeId)$) for orderBy and hard-codes sortOrder to ASC/DESC only.

Know when Fineract gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (CNA) PRIMARY 8.1 HIGH
AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
vuln.today AI 6.5 MEDIUM

Network-reachable API, low complexity, requires a low-privilege client-view account (PR:L); ORDER BY injection in a SELECT enables data/file read (C:H) but no write path, so I:N and A:N.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (CNA).

CVSS VectorVendor

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
None

Lifecycle Timeline

3
Analysis Updated
Jul 15, 2026 - 15:31 vuln.today
v2 - CVSS changed
CVSS changed
Jul 15, 2026 - 15:22 NVD
8.1 (HIGH)
CVE Published
Jul 15, 2026 - 06:40 oss-security
HIGH

Description PRE-NVD

Disclosed via oss-security. NVD scoring and full description are pending.

Executive ViewAI

Why It Matters

Apache Fineract versions through 1.14.0 contain a SQL injection vulnerability in the Client Search API that allows authenticated users to extract sensitive financial data from the database, including customer records and transaction details. This threatens the confidentiality of critical financial information and exposes the organization to data breach liability and regulatory compliance violations.

Business Impact: High
Compensating Controls

Restrict view-clients permission to only users and roles that require it; implement network segmentation to limit Client Search API access to trusted systems; deploy Web Application Firewall rules to detect SQL injection patterns in orderBy and sortOrder parameters; monitor database and application access logs for exploitation attempts; consider disabling the Client Search API if not operationally required for critical functions.

Threat Intelligence Overview

EPSS Score
0.3%
Top 81% exploitable
Prevalence
Low
niche open-source core-banking platform, financial/microfinance sector only
Social Media
1
Sightings
Data Quality
7 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment CIRCL GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.3%
Patch available No
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Total

Priority Score

40
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +40
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

SQL injection exploits the way applications construct database queries by mixing user input directly into SQL statements.

CVE-2026-64618 CRITICAL
9.8 Oct 30

SQL injection in Apache Fineract through 1.15.0 allows a caller of the /fineract-provider/api/v1/search/advance endpoint

CVE-2024-23539 CRITICAL
9.8 Mar 29

Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection') vulnerability in Apache Fineract.8.

CVE-2024-23538 CRITICAL
9.8 Mar 29

Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection') vulnerability in Apache Fineract.8.

CVE-2018-1290 CRITICAL
9.8 Apr 20

In Apache Fineract versions 1.0.0, 0.6.0-incubating, 0.5.0-incubating, 0.4.0-incubating, Using a single quotation escape

CVE-2024-32838 CRITICAL
9.4 Feb 12

SQL Injection vulnerability in various API endpoints - offices, dashboards, etc. Rated critical severity (CVSS 9.4), thi

CVE-2025-58130 CRITICAL
9.1 Dec 12

Exposure of insufficiently protected credentials in Apache Fineract through 1.11.0 allows unauthenticated remote attacke

CVE-2026-35152 HIGH
8.8 Jul 15

SQL injection in Apache Fineract's Report Execution API (the runreports endpoint) in all versions up to and including 1.

CVE-2026-65874 HIGH
8.8 Oct 30

Time-based blind SQL injection in Apache Fineract through 1.15.0 lets an authenticated user who already holds read acces

CVE-2017-5663 HIGH
8.8 Dec 14

In Apache Fineract 0.4.0-incubating, 0.5.0-incubating, and 0.6.0-incubating, an authenticated user with client/loan/cent

CVE-2024-23537 HIGH
8.8 Mar 29

Improper Privilege Management vulnerability in Apache Fineract.8.5. Rated high severity (CVSS 8.8), this vulnerability i

CVE-2022-44635 HIGH
8.8 Nov 29

Apache Fineract allowed an authenticated user to perform remote code execution due to a path traversal vulnerability in

CVE-2018-1289 HIGH
8.8 Apr 20

In Apache Fineract versions 1.0.0, 0.6.0-incubating, 0.5.0-incubating, 0.4.0-incubating, the system exposes different RE

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy