CyberRota Analysis
AI-GeneratedThe vulnerability affects the LangChain4j Java library, specifically in the MariaDB and pgvector embedding stores, where inadequate escaping of filter keys allows for SQL injection through crafted metadata keys in the EmbeddingSearchRequest.filter() method. This can lead to severe impacts such as unauthorized data exfiltration, denial of service, and arbitrary data deletion. Organizations utilizing affected versions of LangChain4j should prioritize updating to the patched versions to mitigate these risks.
Public Exploit Signal
A public exploit, PoC, GitHub repository or Metasploit reference was detected for this CVE.
Note: these links are listed for security research and verification purposes only.
Original NVD Description
LangChain4j is a Java library for building LLM-powered applications on the JVM. Prior to 1.2.1-beta8, 1.5.1-beta11, 1.11.8-beta19, and 1.16.3-beta26, the MariaDB and pgvector embedding stores build metadata-filter SQL by string-concatenating filter keys, and in MariaDB string values, directly into the query without adequate escaping. A crafted metadata key in EmbeddingSearchRequest.filter() can break out of its SQL context and inject arbitrary SQL into the statements executed by the stores' search and removeAll(Filter) operations, enabling blind data exfiltration, denial of service via sleep functions, and deletion of arbitrary rows through removeAll(Filter). This issue is fixed in langchain4j-mariadb and langchain4j-pgvector versions 1.2.1-beta8, 1.5.1-beta11, 1.11.8-beta19, and 1.16.3-beta26.