CVE Catalog

CVE-2026-53556

MediumCVSS 6.0
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.38%

32th percentile - higher than 32% of all known CVEs

Summary

SQLBot before version 1.9.0 contains a vulnerability in the POST /api/v1/datasource/previewData endpoint, where the client-controlled table_name value is incorporated into generated SQL without safe identifier handling. An authenticated user can configure a datasource for the internal PostgreSQL and submit a crafted table_name that remains a SELECT operation but invokes pg_read_file(), pg_read_binary_file(), or pg_ls_dir(). In the default trusted loopback authentication configuration, the internal connection accepts invalid credentials and executes with PostgreSQL superuser privileges, allowing filesystem content such as /etc/hosts and /etc/passwd to be returned in the previewData API response, potentially exposing configuration, credentials, authentication secrets, and source code. This issue is fixed in version 1.9.0.

Risk Assessment

The vulnerability allows an authenticated user to read sensitive files from the server, including configuration files, credentials, and secrets, which can lead to full system compromise and data leakage.

Recommendation

It is recommended to immediately upgrade SQLBot to version 1.9.0 or later, which includes the fix. Additionally, restrict access to the previewData endpoint and review the authentication configuration of the internal database.

Other vulnerabilities in SQLBot

See all
Original NVD description (English source)

SQLBot is an intelligent Text-to-SQL system based on large language models and RAG. Prior to 1.9.0, the POST /api/v1/datasource/previewData endpoint in backend/apps/datasource/crud/datasource.py incorporates the client-controlled table_name value into generated SQL without safe identifier handling. An authenticated user can configure a datasource for SQLBot's internal PostgreSQL service and submit a crafted table_name that remains a SELECT operation under the read-only policy while invoking pg_read_file(), pg_read_binary_file(), or pg_ls_dir(). In the default tested trusted loopback authentication configuration, the internal connection accepts invalid credentials and executes with PostgreSQL superuser privileges, allowing filesystem content such as /etc/hosts and /etc/passwd to be returned in the previewData API response and potentially exposing configuration, credentials, authentication secrets, and source code. This issue is fixed in version 1.9.0.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS