Toate articolele

Noutăți9 octombrie 20265 min de citit

MongoDB: corecturi pentru Go Driver și libmongocrypt (AV26-1024)

Avizul canadian AV26-1024: vulnerabilități în Go Driver de la MongoDB înainte de 2.9.2 și în libmongocrypt înainte de 1.20.5. Ce actualizezi și ce verifici.

Bărbat văzut din spate în fața unui fascicul de lumină albastră, cu cuvântul ENCRYPT sus

Canadian Centre for Cyber Security a publicat pe 9 octombrie 2026 avizul AV26-1024, dedicat a două componente MongoDB care rulează în interiorul aplicațiilor: driverul oficial pentru Go și libmongocrypt, biblioteca ce gestionează criptarea pe partea clientului. Deocamdată avizul este singura sursă disponibilă despre această știre și este foarte succint: nu conține identificatori CVE, scoruri de gravitate sau semnalări de exploatare. În continuare găsești ce spune, ce nu spune și cum verifici dacă aplicațiile tale sunt afectate.

Ce s-a întâmplat

Potrivit avizului canadian, la data de 8 octombrie 2026 MongoDB este afectat de vulnerabilități în aceste produse:

  • Go Driver: avizul indică versiunile anterioare 2.9.0 și anterioare 2.9.2, fără să explice la ce se referă fiecare dintre cele două praguri;
  • libmongocrypt: versiunile anterioare 1.20.5.

Cyber Centre îi îndeamnă pe utilizatori și administratori să consulte linkurile din aviz și să aplice actualizările necesare. Linkurile duc la pagina alertelor de securitate MongoDB și la trei corecturi, ale căror titluri sunt singurul detaliu tehnic disponibil.

Detalii tehnice

Go Driver: verificări ale lungimilor BSON

Două dintre corecturi privesc modul în care driverul pentru Go citește documentele BSON, formatul binar prin care MongoDB schimbă datele:

  • „Reject int32 length overflow in bsoncore.valueLength”: driverul trebuie să respingă valorile a căror lungime, scrisă ca întreg pe 32 de biți, produce un overflow. Funcția aparține pachetului bsoncore, care în driver citește documentele BSON la nivel scăzut;
  • „Reject BSON lengths below the 5-byte minimum before slicing”: driverul trebuie să respingă lungimile mai mici de 5 octeți înainte de a decupa datele. În formatul BSON fiecare document începe cu propria lungime pe 4 octeți și se termină cu un octet nul, deci 5 octeți reprezintă dimensiunea minimă posibilă.

În ambele cazuri este vorba de validarea datelor de intrare binare: un document malformat, cu lungimi incoerente, nu era respins înainte de procesare. Avizul nu spune ce consecințe are această eroare și nici în ce scenarii un atacator ar putea trimite driverului un document construit special. În general, în Go o verificare lipsă înaintea unei operații de decupare poate provoca o eroare la rulare (panic) și oprirea procesului, dacă eroarea nu este tratată; este însă doar o observație generală, neconfirmată de sursă pentru acest caz.

libmongocrypt: câmpul masterKey duplicat

A treia corectură, „Duplicate masterKey field re-parses into the same KEK”, privește libmongocrypt. În criptarea pe partea clientului din MongoDB (Client-Side Field Level Encryption și Queryable Encryption) datele sunt criptate cu chei dedicate, protejate la rândul lor de o cheie principală păstrată într-un serviciu de gestionare a cheilor (KMS): aceasta este KEK, key encryption key. Câmpul masterKey indică ce cheie principală se folosește și apare atât în opțiunile de creare a cheilor, cât și în documentele colecției care le păstrează (key vault).

Judecând după titlu, un document cu câmpul masterKey repetat era analizat din nou în aceeași structură a KEK. Avizul nu explică efectul: nu știm dacă problema duce la erori de memorie, la alegerea unei chei greșite sau la altceva.

Driverul pentru Go folosește libmongocrypt atunci când este compilat cu suport pentru criptarea pe partea clientului, așa că ambele componente din aviz pot ajunge în aceeași aplicație.

Ce nu spune avizul

E bine să ții cont de asta înainte de a stabili prioritățile:

  • niciun CVE și niciun scor CVSS;
  • nicio semnalare de exploatare în curs sau de cod demonstrativ public;
  • niciun indicator de compromitere;
  • nimic despre ramura 1.x a driverului pentru Go: toate versiunile citate aparțin ramurii 2.x.

Pentru detalii, avizul trimite la pagina alertelor de securitate MongoDB, pe care merită să o urmărești pentru eventuali identificatori și evaluări de gravitate publicate ulterior.

Impactul pentru companiile europene și italiene

Driverul pentru Go și libmongocrypt nu sunt servicii expuse în rețea, ci dependențe compilate sau încărcate de aplicații: microservicii interne, API-uri, instrumente de integrare, software de la terți. De aceea riscul se gestionează din partea dezvoltării și a lanțului de aprovizionare cu software, nu doar din partea serverelor.

Pentru entitățile care intră sub incidența NIS2, gestionarea vulnerabilităților și securitatea lanțului de aprovizionare fac parte din măsurile de securitate cerute: să știi ce aplicații includ aceste componente, și în ce versiune, face parte din această muncă. Dacă folosești criptarea pe partea clientului din MongoDB pentru a proteja date sensibile, cum ar fi datele medicale sau financiare, acordă prioritate actualizării libmongocrypt.

Ce să faci imediat

  1. Fă inventarul. În proiectele Go caută modulul go.mongodb.org/mongo-driver/v2 (de exemplu cu go list -m all) și notează versiunea. Ține minte că în binarele Go dependențele sunt incluse în executabil: un inventar al pachetelor de sistem nu le vede.
  2. Actualizează Go Driver la 2.9.2 sau mai nou. Pentru că avizul indică două praguri fără să le explice, 2.9.2 este alegerea prudentă. Recompilează și redistribuie aplicațiile, inclusiv imaginile de container.
  3. Actualizează libmongocrypt la 1.20.5 sau mai nou. Poate fi instalată ca pachet al sistemului de operare sau poate veni împreună cu pachetul de criptare al driverului pentru alt limbaj: verifică ambele căi.
  4. Întreabă-ți furnizorii de software dacă produsele lor includ aceste componente și când le vor actualiza.
  5. Limitează cine poate scrie în key vault folosit de criptarea pe partea clientului: este o bună practică oricum, iar câmpul masterKey vizat de corectură se află și în acele documente.
  6. Urmărește opririle neașteptate ale aplicațiilor care folosesc driverul și verifică pagina alertelor de securitate MongoDB pentru eventuale CVE publicate ulterior.

Cum ajută ARXDOME

ARX Sentry colectează de pe computere și servere inventarul de software, procese și porturi, util pentru a găsi unde este instalată libmongocrypt ca pachet de sistem și ce servicii rulează pe fiecare mașină. ARX Shield arată vulnerabilitățile deschise pe mașină și pe pachet, atunci când sunt înregistrate cu un identificator public.

Ultima actualizare:

Ai întrebări?

Hai să vorbim despre nevoile companiei tale, fără obligații.

Contactează-ne

Articole similare