LangChain CVE-2025-68664: PII Nola Iragazten Den Zure RAG Kanalizaziotik
2026rako eguneratua.
2025aren amaieran LangChain-en akats kritiko bat aurkitu zen. CVE zenbakia CVE-2025-68664 da. CVSS puntuazioa 9.3 (Kritikoa) da.
LangChainen serializazio kodea bideratzen du.
CVE-2025-68664-k Zer Egiten Duen
LangChain-ek bi serializazio funtzio ditu: dumps() eta dumpd(). Python objektuak testura bihurtzen dituzte.
Akatsa itxiera kudeaketan dago.
LangChain-ek callable bat serializatzen duenean, itxiera-testuingurua harrapatzen du.
LLM erantzuna kontrolatzen duen erasotzaile batek dumps() abiara dezake. Funtziorak orduan Python prozesuko ingurune-aldagaiak irakurtzen ditu.
Emaitza datuen esposaketa da. API gakoak, datu-base kateak, JWT sekretuak eta AWS kredentzialak modelo-irteera gisa ager daitezke.
RAG iturri dokumentu batean testua injektatzen duen erasotzaile batek zure produkzio-sekretuak irakur ditzake.
Eragindako bertsioak: 0.3.22 baino beherako LangChain (Python). 0.3.22. bertsioak konponketa du.
PyPI datuek 2026ko martxoa arte bertsioen erabilera zabala erakusten dute.
Nola Iragazten Den PII RAG Kanalizazioetan
CVE-2025-68664 dramatikoa da. Baina arazo zabalago baten kasu bat baino ez da.
Datuak RAG kanalizazioetan errutinan iragazten dira. Erasotzaile bat behar ez da.
Hona hemen enpresa estandar RAG konfigurazio bat.
Lehenik, ingestoa. Enpresa dokumentuak bektore-denda batean indexatzen dituzu. Pentsatu laguntza txarteletan, bezero-emailetan, kontratuetan eta HR erregistroetan.
Bektore-denda ohikoenak Pinecone, Weaviate eta pgvector dira.
Ondoren, berreskuratzea. Erabiltzaile batek galdera bat egiten du. Sistemak dendako bost zatiki errelatutzailenak ateratzen ditu.
Gero, sorkuntza. Zatiki horiek LLM batera bidaltzen dira -- GPT-4o, Claude edo Gemini -- testuinguru gisa.
Bigarren pausoa da arazoa. Berreskuratutako zatikiek jatorrizko dokumentuek edozein gauza eduki dezakete. Hori barne hartzen du:
- Bezero izenak, helbide elektronikoak eta telefono-zenbakiak
- Kontratuko balioak, kontu-zenbakiak eta zerga-identifikatzaileak
- Langile soldata datuak eta errendimendu ebaluazio oharrak
- Paziente izenak kliniko oharretan
- Nazio-ID zenbakiak immigrazio fitxategietan
Datu horiek LLMra joaten dira erabat. Modelo-irteera gisa ager daitezke.
LLM hornitzaileak erregistratzen du. Zure elkarrizketa-historian egotzen da. Zure behaketa pilara isurtzen da.
Ez da erasorik behar. RAG horrela funtzionatzen du diseinuz. Diseinuak benetako pribatutasun arriskua sortzen du.
68 Sekretuen Eredu Enpresa Dokumentu Dendetan
Segurtasun tresnaziak 68 sekretuen eredu ezagun jarraitzen ditu. Taldeek espero baino maizago agertzen dira.
Hona hemen ohikoenak.
- AWS Access Key IDak (
AKIA...) - OpenAI API gakoak (
sk-...) - Anthropic API gakoak (
sk-ant-...) - Datu-base URIak (
postgresql://user:password@host/db) - JWT tokenak (base64-kodetutako goiburukoak)
- GitHub Sarbide Token Pertsonalak
- Stripe sekretuen gakoak (
sk_live_...) - SendGrid API gakoak
- Twilio kontu SIDak eta autentifikazio tokenak
- PEM blokeko gako pribatuak
Laguntza txartel batek arazketa saiotik bezeroak API gakoa eduki dezake.
Kontratuk datu-base kredentzialak barne har ditzake transferentzia tekniko batetik.
Akzidentez indexatutako konfigurazio fitxategi batek sekretuen denda oso baten esposaketa eragin dezake.
Fitxategi horiek saneamendurik gabe bektore-denda batean sartzen direnean, edozein kontsultak sekretuak LLMra igor ditzake.
Azken erabiltzailera ere heldu daitezke.
Konpondu: Anonimizatu Txertatu Aurretik
Ikuspegi egokiak dokumentuak zatikitu eta txertatu aurretik anonimizatzen ditu.
Urrats hau derrigorrezkoa da bezero-datuak kudeatzen duen edozein sistemarako.
Hona hemen anonym.legal APIa erabiliz Python adibidea:
import requests
import os
ANONYM_API_KEY = os.environ["ANONYM_API_KEY"]
ANONYM_BASE_URL = "https://anonym.legal/api"
def anonymize_before_embedding(text: str) -> tuple[str, dict]:
"""Txertatu aurretik PII anonimizatu."""
response = requests.post(
f"{ANONYM_BASE_URL}/presidio/anonymize",
json={
"text": text,
"language": "en",
"anonymizers": {
"DEFAULT": {"type": "replace", "new_value": "[ERREDAKTATUA]"},
"PERSON": {"type": "mask", "masking_char": "*", "chars_to_mask": 4, "from_end": False},
"EMAIL_ADDRESS": {"type": "replace", "new_value": "[EMAIL]"},
"PHONE_NUMBER": {"type": "replace", "new_value": "[TELEFONOA]"},
"CRYPTO": {"type": "replace", "new_value": "[SEKRETUA]"},
"URL": {"type": "keep"},
}
},
headers={"Authorization": f"Bearer {ANONYM_API_KEY}"}
)
result = response.json()
return result["text"], result.get("items", [])
def build_rag_index(documents: list[str], vectorstore):
"""Eraiki RAG indizea dokumentu garbiekin bakarrik."""
anonymized_docs = []
for doc in documents:
clean_text, entities = anonymize_before_embedding(doc)
anonymized_docs.append(clean_text)
print(f"Dokumentutik {len(entities)} PII entitate kendu dira")
vectorstore.add_texts(anonymized_docs)
anonym.legal APIak 285+ entitate mota estaltzen ditu. Izenak, helbide elektronikoak, telefono-zenbakiak, nazio-IDak, API gakoak eta datu-base URIak denak harrapatzen dira.
Ezer sentikorrik ez da bektore-dendara heltzen. Beraz, ezer sentikorrik ezin da erabiltzaileei iragazki.
Ikusi garatzaile gida LangChain eta LlamaIndex konfigurazio ereduetarako.
Konpondu CVE-2025-68664 Orain Bertan
0.3.22 baino beherako LangChain exekutatzen baduzu, eguneratu orain:
pip install "langchain>=0.3.22" "langchain-core>=0.3.22"
Adabakiaren ostean, egiaztatu zure katea injekzio arriskurako. Hona hiru urrats.
Lehenik, egiaztatu berreskuratutako zatikiak. Hau egin LLMra iritsi aurretik.
Kendu injekzio ereduekin bat datorren edukia, hala nola ignore previous instructions, system: edo <INST>.
Bigarrenik, anonimizatu txertatu aurretik. Honek eraso-azalera txikitzen du.
Injekzioa gertatu bada ere, datu sentikorrak ez daude bertatik ateratzeko.
Hirugarrenik, mugatu kateko baimenak. LangChain kateak ez dira beharrezkoa baino gehiagoko ingurune-aldagaiak irakurri behar.
Erabili aplikazio-esparru minimoarekin zerbitzu-kontu bat.
Matematika Sinplea Da
CVSS puntuazioa 9.3 da. Konponketa dokumentuko API dei bat da.
CVE-2025-68664 eta orokorreko RAG datu-arrisku konbinazioa benetako erantzukizuna da.
Soluzioa argia da: anonimizatu ingestoan, ez kontsulta denboran.
Egiaztatu segurtasun eta betetze ikuspegi orokorra enpresa RAG eskakizunetarako.
Iturriak
- NVD CVE-2025-68664, CVSS 9.3, LangChain serializazio ahultasuna
- LangChain segurtasun abisua, langchain-ai/langchain GitHub, 2025
- OWASP LLM Top 10: LLM01 Gonbidapen Injekzioa, LLM06 Informazio Sentikorraren Agerpena
- anonym.legal entitate mota dokumentazioa -- 285+ onartutako entitate mota