VYPR
Unrated severityNVD Advisory· Published Jun 23, 2026· Updated Jun 23, 2026

CVE-2025-61024

CVE-2025-61024

Description

An issue in the sqlo_try_in_loop component of openlink virtuoso-opensource v7.2.11 allows attackers to cause a Denial of Service (DoS) via crafted SQL statements.

AI Insight

LLM-synthesized narrative grounded in this CVE's description and references.

Affected products

1

Patches

Vulnerability mechanics

Root cause

"Unhandled error or invalid memory access in `sqlo_try_in_loop` when compiling a crafted SQL statement with nested subqueries and division-by-zero constants."

Attack vector

An attacker who can connect to the Virtuoso database server (e.g., via isql on port 1111) and execute arbitrary SQL can trigger a crash by sending the crafted UPDATE statement shown in the PoC [ref_id=1]. The payload exploits a malformed SQL query that combines a view definition with a nested subquery containing a division-by-zero constant (`127 / 0`) and a complex CASE expression in the UPDATE's WHERE clause. No authentication beyond the default DBA credentials is required if the server is exposed, and the crash leads to a denial of service.

Affected code

The crash occurs in `sqlo_try_in_loop` (backtrace frame #0) within the Virtuoso 7.2.11 SQL query compiler. The call chain `sqlc_update_view` → `sqlc_update_searched` → `sqlo_query_spec` → `sqlo_top_2` → `sqlo_layout` → `sqlo_layout_1` → `sqlo_try` → `sqlo_try_in_loop` shows that the fault is triggered during compilation of a crafted UPDATE statement on a view that contains complex nested subqueries, CASE expressions, and division-by-zero constants.

What the fix does

The advisory does not include a patch or fix commit. The issue report [ref_id=1] only documents the crash and provides a reproducible test case. Until a fix is published, the recommended mitigation is to restrict network access to the Virtuoso server and avoid executing untrusted SQL statements.

Preconditions

  • networkAttacker must be able to connect to the Virtuoso database server (e.g., via isql on port 1111).
  • authAttacker must be able to execute arbitrary SQL statements (default DBA credentials may be used).
  • inputThe crafted SQL must be accepted by the server's SQL compiler.

Reproduction

1. Write the PoC SQL (the UPDATE statement from the issue) to `/tmp/test.sql`. 2. Remove any existing container: `docker container rm virtdb_test -f` 3. Start the Virtuoso container: `docker run --name virtdb_test -itd --env DBA_PASSWORD=dba pkleef/virtuoso-opensource-7` 4. Wait 10 seconds for the server to start. 5. Verify connectivity: `echo "SELECT 1;" | docker exec -i virtdb_test isql 1111 dba` 6. Run the PoC: `cat /tmp/test.sql | docker exec -i virtdb_test isql 1111 dba` 7. Observe the crash in the backtrace.

Generated on Jun 24, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.

References

1

News mentions

0

No linked articles in our index yet.