CVE-2026-58449
txtai - Unauthenticated Remote Code Execution via Unsafe Reflection in API /reindex function Parameter
Description
txtai through 9.10.0, fixed in commit 11b32da, exposes an API /reindex endpoint whose function body parameter is resolved through txtai.util.Resolver, which performs __import__ and getattr on the caller-supplied dotted path with no allowlist. When the API is exposed with no TOKEN configured (authentication is opt-in, so all endpoints are unauthenticated) and the index is configured writable, a remote attacker can set function to an arbitrary callable such as subprocess.getoutput, achieving remote code execution as the server process during reindexing. Exploitation requires those deployment conditions (API exposed, no TOKEN, writable index); it is not the default configuration. The fix gates the endpoint behind a new reindex configuration flag.
INFO
Published Date :
June 30, 2026, 10:16 p.m.
Last Modified :
Oct. 25, 2026, 9:10 p.m.
Remotely Exploit :
Yes !
Source :
[email protected]
CVSS Scores
| Score | Version | Severity | Vector | Exploitability Score | Impact Score | Source |
|---|---|---|---|---|---|---|
| CVSS | 134c704f-9b21-4f2e-91b3-4a467353bcc0 | |||||
| CVSS 3.1 | CRITICAL | 83251b91-4cc7-4094-a5c7-464a1b83ea10 | ||||
| CVSS 3.1 | CRITICAL | MITRE-CVE | ||||
| CVSS 3.1 | CRITICAL | [email protected] | ||||
| CVSS 4.0 | CRITICAL | 83251b91-4cc7-4094-a5c7-464a1b83ea10 | ||||
| CVSS 4.0 | CRITICAL | [email protected] |
Solution
- Update txtai to a version that includes commit 11b32da.
- Configure the reindex flag to secure the API endpoint.
- Ensure authentication is enabled for sensitive endpoints.
References to Advisories, Solutions, and Tools
Here, you will find a curated list of external links that provide in-depth
information, practical solutions, and valuable tools related to
CVE-2026-58449.
CWE - Common Weakness Enumeration
While CVE identifies
specific instances of vulnerabilities, CWE categorizes the common flaws or
weaknesses that can lead to vulnerabilities. CVE-2026-58449 is
associated with the following CWEs:
Common Attack Pattern Enumeration and Classification (CAPEC)
Common Attack Pattern Enumeration and Classification
(CAPEC)
stores attack patterns, which are descriptions of the common attributes and
approaches employed by adversaries to exploit the CVE-2026-58449
weaknesses.
We scan GitHub repositories to detect new proof-of-concept exploits. Following list is a collection of public exploits and proof-of-concepts, which have been published on GitHub (sorted by the most recently updated).
Results are limited to the first 15 repositories due to potential performance issues.
The following list is the news that have been mention
CVE-2026-58449 vulnerability anywhere in the article.
The following table lists the changes that have been made to the
CVE-2026-58449 vulnerability over time.
Vulnerability history details can be useful for understanding the evolution of a vulnerability, and for identifying the most recent changes that may impact the vulnerability's severity, exploitability, or other characteristics.
-
CVE Translated by [email protected]
Oct. 25, 2026
Action Type Old Value New Value Added Translation Title: txtai de neuml, Description: txtai hasta la versión 9.10.0, corregido en el commit 11b32da, expone un endpoint de la API /reindex cuyo parámetro ’function body’ se resuelve a través de txtai.util.Resolver, que realiza __import__ y getattr en la ruta punteada proporcionada por el llamador sin una lista de permitidos. Cuando la API se expone sin ningún TOKEN configurado (la autenticación es opcional, por lo que todos los endpoints no están autenticados) y el índice está configurado como escribible, un atacante remoto puede establecer ’function’ a un objeto invocable arbitrario como subprocess.getoutput, logrando ejecución remota de código como el proceso del servidor durante la reindexación. La explotación requiere esas condiciones de despliegue (API expuesta, sin TOKEN, índice escribible); no es la configuración predeterminada. La corrección protege el endpoint detrás de un nuevo indicador de configuración de reindexación. -
CVE Modified by [email protected]
Jul. 14, 2026
Action Type Old Value New Value Changed Affected [{'repo': 'https://github.com/neuml/txtai', 'vendor': 'neuml', 'product': 'txtai', 'versions': [{'status': 'affected', 'version': '0', 'versionType': 'semver', 'lessThanOrEqual': '9.10.0'}, {'status': 'unaffected', 'version': '11b32da720f03276199ebc5583c15fc5d1ccafd3', 'versionType': 'git'}], 'defaultStatus': 'unaffected'}] [{'repo': 'https://github.com/neuml/txtai', 'vendor': 'neuml', 'product': 'txtai', 'versions': [{'status': 'affected', 'version': '0', 'versionType': 'semver', 'lessThanOrEqual': '9.10.0'}, {'status': 'unaffected', 'version': '11b32da720f03276199ebc5583c15fc5d1ccafd3', 'versionType': 'git'}], 'packageURL': 'pkg:github/neuml/txtai', 'defaultStatus': 'unaffected'}] -
CVE Modified by 134c704f-9b21-4f2e-91b3-4a467353bcc0
Jul. 01, 2026
Action Type Old Value New Value Added SSVC {'id': 'CVE-2026-58449', 'role': 'CISA Coordinator', 'options': [{'exploitation': 'none'}, {'automatable': 'yes'}, {'technicalImpact': 'total'}], 'version': '2.0.3', 'timestamp': '2026-07-01T12:58:36.282565Z'} -
New CVE Received by [email protected]
Jun. 30, 2026
Action Type Old Value New Value Added Affected [{'repo': 'https://github.com/neuml/txtai', 'vendor': 'neuml', 'product': 'txtai', 'versions': [{'status': 'affected', 'version': '0', 'versionType': 'semver', 'lessThanOrEqual': '9.10.0'}, {'status': 'unaffected', 'version': '11b32da720f03276199ebc5583c15fc5d1ccafd3', 'versionType': 'git'}], 'defaultStatus': 'unaffected'}] Added Description txtai through 9.10.0, fixed in commit 11b32da, exposes an API /reindex endpoint whose function body parameter is resolved through txtai.util.Resolver, which performs __import__ and getattr on the caller-supplied dotted path with no allowlist. When the API is exposed with no TOKEN configured (authentication is opt-in, so all endpoints are unauthenticated) and the index is configured writable, a remote attacker can set function to an arbitrary callable such as subprocess.getoutput, achieving remote code execution as the server process during reindexing. Exploitation requires those deployment conditions (API exposed, no TOKEN, writable index); it is not the default configuration. The fix gates the endpoint behind a new reindex configuration flag. Added CVSS V4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X Added CVSS V3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H Added CWE CWE-94 Added Reference https://github.com/neuml/txtai/commit/11b32da720f03276199ebc5583c15fc5d1ccafd3 Added Reference https://github.com/neuml/txtai/issues/1111 Added Reference https://github.com/neuml/txtai/issues/1122 Added Reference https://www.vulncheck.com/advisories/txtai-unauthenticated-remote-code-execution-via-unsafe-reflection-in-api-reindex-function-parameter