CRITICAL🇬🇧 English

CVE-2024-46946

RCE w LangChain Experimental przez sympy.sympify w LLMSymbolicMathChain

CVSS 9.8v3.1pub. 2024-09-19upd. 2025-07-16

Biblioteka langchain_experimental w wersjach 0.1.17–0.3.0 zawiera krytyczną podatność umożliwiającą zdalne wykonanie dowolnego kodu (RCE). Atakujący bez żadnych uprawnień może przejąć kontrolę nad systemem poprzez spreparowane dane wejściowe przekazywane do komponentu LLMSymbolicMathChain.

Pokaż oryginał (EN)

langchain_experimental (aka LangChain Experimental) 0.1.17 through 0.3.0 for LangChain allows attackers to execute arbitrary code through sympy.sympify (which uses eval) in LLMSymbolicMathChain. LLMSymbolicMathChain was introduced in fcccde406dd9e9b05fc9babcbeb9ff527b0ec0c6 (2023-10-05).

🤖 Analiza AI
Jak działa

Komponent LLMSymbolicMathChain, wprowadzony w październiku 2023 roku, przekazuje dane wejściowe do funkcji sympy.sympify(), która wewnętrznie korzysta z wbudowanej funkcji eval() języka Python. Funkcja eval() wykonuje przekazany jej ciąg znaków jako kod Python bez odpowiedniej walidacji ani sandbox'owania. Atakujący może w ten sposób dostarczyć złośliwy payload, który zostanie bezpośrednio wykonany w kontekście aplikacji.

Skutki

Atakujący może wykonać dowolny kod na serwerze (RCE), co w praktyce oznacza pełne przejęcie kontroli nad systemem, ujawnienie poufnych danych, ich modyfikację lub zniszczenie oraz możliwość dalszego lateral movement w sieci.

Mitygacja

Należy zaktualizować pakiet langchain_experimental do wersji wyższej niż 0.3.0, zgodnie z informacjami w oficjalnym release notes LangChain dostępnym pod adresem wskazanym w referencjach producenta. Do czasu aktualizacji należy rozważyć wyłączenie lub ograniczenie dostępu do funkcjonalności LLMSymbolicMathChain.

Kogo dotyczy

langchain_experimental (LangChain Experimental) w wersjach od 0.1.17 do 0.3.0 włącznie, stosowany jako składnik ekosystemu LangChain.

Uwagi

Komponent LLMSymbolicMathChain został wprowadzony commitem fcccde406dd9e9b05fc9babcbeb9ff527b0ec0c6 w dniu 2023-10-05. W referencjach dostępny jest publiczny proof-of-concept (gist GitHub), co zwiększa ryzyko aktywnego wykorzystania podatności.

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
  • Langchain Experimental

    APP
    Langchain
    0.1.17 – 0.3.0
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
Tagi
RCE
CWE
Referencje

Powiązane podatności

CVE-2024-27444CRITICAL9.8PL ✓ten sam produkt

RCE w LangChain Experimental — obejście poprawki CVE-2023-44467

CVE-2024-21513HIGH8.5ten sam produkt

Versions of the package langchain-experimental from 0.0.15 and before 0.0.21 are vulnerable to Arbitrary Code ...

CVE-2024-38459HIGH7.8ten sam produkt

langchain_experimental (aka LangChain Experimental) before 0.0.61 for LangChain provides Python REPL access wi...

CVE-2025-68664CRITICAL9.3PL ✓ten sam vendor

Podatność deserialization injection w funkcjach dumps/dumpd LangChain Core

CVE-2025-2828CRITICAL10.0PL ✓ten sam vendor

SSRF w LangChain RequestsToolkit — dostęp do sieci wewnętrznej i metadanych chmury