Er is een kritieke beveiligingsfout onthuld in LangChain Core die door een aanvaller kan worden uitgebuit om gevoelige geheimen te stelen en zelfs de reacties op grote taalmodellen (LLM) te beïnvloeden door middel van snelle injectie.
LangChain Core (dwz langchain-core) is een kern-Python-pakket dat deel uitmaakt van het LangChain-ecosysteem en de kerninterfaces en model-agnostische abstracties biedt voor het bouwen van applicaties die worden aangedreven door LLM’s.
De kwetsbaarheid, bijgehouden als CVE-2025-68664, heeft een CVSS-score van 9,3 uit 10,0. Beveiligingsonderzoeker Yarden Porat is gecrediteerd voor het melden van de kwetsbaarheid op 4 december 2025. Het heeft de codenaam LangGrinch.
“Er bestaat een kwetsbaarheid voor serialisatie-injectie in de functies dumps() en dumpd() van LangChain”, aldus de projectbeheerders in een advies. “De functies ontsnappen niet aan woordenboeken met ‘lc’-toetsen bij het serialiseren van woordenboeken in vrije vorm.”
“De ‘lc’-sleutel wordt intern door LangChain gebruikt om geserialiseerde objecten te markeren. Wanneer door de gebruiker beheerde gegevens deze sleutelstructuur bevatten, wordt deze tijdens deserialisatie behandeld als een legitiem LangChain-object in plaats van gewone gebruikersgegevens.”
Volgens Cyata-onderzoeker Porat heeft de kern van het probleem te maken met het feit dat twee functies er niet in slagen te ontsnappen aan door de gebruiker gecontroleerde woordenboeken met “lc”-toetsen. De “lc”-markering vertegenwoordigt LangChain-objecten in het interne serialisatieformaat van het raamwerk.
“Dus zodra een aanvaller in staat is om een LangChain-orkestratielus te serialiseren en later te deserialiseren, inclusief een ‘lc’-sleutel, zouden ze een onveilig willekeurig object instantiëren, wat mogelijk veel aanvallervriendelijke paden zou kunnen activeren, ” zei Porat.
Dit kan verschillende gevolgen hebben, waaronder geheime extractie uit omgevingsvariabelen wanneer deserialisatie wordt uitgevoerd met “secrets_from_env=True” (voorheen standaard ingesteld), het instantiëren van klassen binnen vooraf goedgekeurde vertrouwde naamruimten, zoals langchain_core, langchain en langchain_community, en mogelijk zelfs leidend tot uitvoering van willekeurige code via Jinja2-sjablonen.
Bovendien maakt de ontsnappende bug de injectie van LangChain-objectstructuren mogelijk via door de gebruiker beheerde velden zoals metadata, aanvullende_kwargs of response_metadata via promptinjectie.
De patch uitgebracht door LangChain introduceert nieuwe beperkende standaardwaarden in load() en load() door middel van een allowlist-parameter “allowed_objects” waarmee gebruikers kunnen specificeren welke klassen kunnen worden geserialiseerd/gedeserialiseerd. Bovendien worden Jinja2-sjablonen standaard geblokkeerd en is de optie “secrets_from_env” nu ingesteld op “False” om het automatisch laden van geheimen uit de omgeving uit te schakelen.
De volgende versies van langchain-core worden beïnvloed door CVE-2025-68664 –
- >= 1.0.0, < 1.2.5 (opgelost in 1.2.5)
- < 0.3.81 (opgelost in 0.3.81)
Het is vermeldenswaard dat er een soortgelijke fout in de serialisatie-injectie bestaat in LangChain.js die ook voortkomt uit het niet correct ontsnappen van objecten met “lc”-sleutels, waardoor geheime extractie en snelle injectie mogelijk worden. Aan deze kwetsbaarheid is de CVE-identifier CVE-2025-68665 toegekend (CVSS-score: 8,6).
Het heeft invloed op de volgende npm-pakketten:
- @langchain/core >= 1.0.0, < 1.1.8 (opgelost in 1.1.8)
- @langchain/core < 0.3.80 (opgelost in 0.3.80)
- langketen >= 1.0.0, < 1.2.3 (opgelost in 1.2.3)
- langketen < 0.3.37 (opgelost in 0.3.37)
In het licht van de kritiekheid van het beveiligingslek wordt gebruikers geadviseerd zo snel mogelijk te updaten naar een gepatchte versie voor optimale bescherming.
“De meest voorkomende aanvalsvector is via LLM-reactievelden zoals aanvullende_kwargs of response_metadata, die kunnen worden beheerd via promptinjectie en vervolgens kunnen worden geserialiseerd/gedeserialiseerd in streaming-bewerkingen”, aldus Porat. “Dit is precies het soort ‘AI ontmoet klassieke beveiliging’-kruispunt waarop organisaties overrompeld raken. LLM-uitvoer is een niet-vertrouwde invoer.”