Actualització beta privada d'UmbrellaX
Durant la nostra revisió de seguretat, vam trobar problemes greus en diverses biblioteques de codi obert que s'utilitzen per a l'encriptació i la comunicació segura. Les solucions locals estan preparades, però encara necessiten una verificació completa i una revisió independent. No llançaré la versió beta fins que estic segur que aquests riscos estan tancats.
Aquí teniu la llista completa en llenguatge senzill. Obriu una secció per veure què podria sortir malament, un exemple quotidià i la referència del pegat.
Els secrets de grup desxifrats poden deixar còpies addicionals a la memòria o als diagnòstics. El text xifrat incorrecte, els missatges de benvinguda, les propostes, les rutes d'actualització, les claus locals que falten, els errors de nombre aleatori, l'hora del sistema inusual i els límits d'època podrien tancar l'aplicació en lloc de tornar un error segur. Algunes comprovacions de la integritat de l'arbre i la longitud del camí tampoc estaven garantides en totes les rutes de llançament.
Per exemple, una actualització de grup trencada rebuda de la xarxa s'ha de rebutjar sense tancar el missatger, saltar-se una comprovació d'integritat o exposar bytes de missatge en un informe d'error.
Solució local preparada, verificació en curs.
Detalls tècnics: openmls 0.8.1 | UMB-117, UMB-118, UMB-120, UMB-121, UMB-125, UMB-128, UMB-129, UMB-130, UMB-131, UMB-132, UMB-133, UMB-134, UMB-135, UMB-136, UMB-137, UMB-138, UMB-139
Els registres MLS suprimits o substituïts poden deixar còpies seriades o cossos de propostes ocults a la memòria. Les instantànies de grup necessitaven un reemplaçament atòmic amb àmbit, l'accés de depuració necessitava redacció i un mode de persistència opcional emmagatzemava text codificat llegible en lloc de dades xifrades autenticades.
Per exemple, la supressió d'un grup també ha d'eliminar les seves propostes pendents ocultes i una opció d'emmagatzematge no ha de semblar xifrada quan només converteix dades en text llegible.
Solució local preparada, verificació en curs.
Detalls tècnics: openmls_memory_storage 0.5.0 | UMB-119, UMB-212, UMB-213, UMB-214
Un backend opcional no utilitzat encara va introduir un paquet vulnerable a l'inventari de dependències. El material privat d'HPKE també necessitava una redacció més forta i una neteja de memòria.
Per exemple, un backend que no utilitzem no hauria d'introduir un paquet vulnerable conegut en una versió, i una impressió d'error mai ha de contenir una clau privada HPKE.
Solució local preparada, verificació en curs.
Detalls tècnics: hpke-rs 0.6.1 | RUSTSEC-2026-0124
El generador aleatori i els valors temporals d'HPKE necessitaven una neteja real. Un desxifrat autenticat fallit també podria deixar un buffer de text sense format parcialment modificat a la memòria.
Per exemple, quan un missatge falla en l'autenticació, s'ha d'esborrar immediatament la memòria intermèdia de text pla mig processat.
Solució local preparada, verificació en curs.
Detalls tècnics: hpke-rs-rust-crypto 0.6.1 | UMB-122
L'estat aleatori, la sortida de derivació de claus, els bytes de clau privada i els buffers de xifratge fallits necessitaven neteja. Les longituds de nonce no vàlides i les sol·licituds d'intercanvi de claus no admeses podrien arribar als camins de finalització del procés.
Per exemple, un nonce mal format ha de retornar un error normal en lloc de tancar el missatger.
Solució local preparada, verificació en curs.
Detalls tècnics: openmls_rust_crypto 0.5.1 | UMB-122, UMB-123, UMB-124
La signatura de noces, accions compartides, bytes escalars i una cadena secreta llegible temporal necessitava netejar els camins d'èxit i error. Una característica no utilitzada també va treure una cadena de dependència no mantinguda.
Per exemple, els valors temporals utilitzats per a una signatura de grup no haurien de romandre llegibles a la memòria després d'acabar o fallar la signatura.
Solució local preparada, verificació en curs.
Detalls tècnics: frost-core 3.0.0 | local audited patch
Les claus pseudoaleatòries descartades i els blocs d'expansió de claus intermedis podrien romandre a la memòria després de produir-se una clau final.
Per exemple, després que una clau de sessió estigui preparada, s'han d'esborrar els ingredients temporals utilitzats per derivar-la.
Solució local preparada, verificació en curs.
Detalls tècnics: hkdf 0.12.4 | local compatibility backport
Els blocs de claus derivats, els resums de claus de grans dimensions i els resultats de hash intern a la branca HMAC compatible podrien romandre a la memòria ordinària.
Per exemple, verificar que un missatge és autèntic no hauria de deixar enrere bytes derivats de claus reutilitzables.
Solució local preparada, verificació en curs.
Detalls tècnics: hmac 0.12.1 | local compatibility backport
L'opció de neteja disponible estava desactivada de manera predeterminada i només cobria part de l'estat derivat de la clau temporal i emmagatzemat.
Per exemple, completar una comprovació d'autenticació hauria de netejar tant els blocs temporals com els emmagatzemats derivats de la clau.
Solució local preparada, verificació en curs.
Detalls tècnics: hmac 0.13.0 | local audited patch
Els comptadors de blocs i estats de treball SHA-256 i SHA-512 necessitaven una neteja de temps de caiguda a la branca compatible.
Per exemple, el hash d'un secret durant la derivació de clau no hauria de deixar l'estat de treball del motor hash a la memòria reutilitzable.
Solució local preparada, verificació en curs.
Detalls tècnics: sha2 0.10.9 | local compatibility backport
Una entrada danyada podria sol·licitar una assignació enorme, llegir més enllà del seu camp declarat, fer un bucle sense progrés o desencadenar camins de desbordament i pànic. El diagnòstic vectorial secret i l'entrada parcial fallida també necessitaven neteja.
Per exemple, un missatge minúscul que afirma falsament que conté un camp enorme no ha de consumir una gran memòria ni atrapar l'aplicació en un bucle interminable.
Solució local preparada, verificació en curs.
Detalls tècnics: tls_codec 0.4.2 | local audited patch
La clau d'integritat del missatge STUN es va poder imprimir al diagnòstic i no es va esborrar explícitament amb el text de la credencial temporal.
Per exemple, un registre d'errors de connexió no ha de revelar el secret utilitzat per autenticar una sol·licitud de retransmissió.
Solució local preparada, verificació en curs.
Detalls tècnics: stun 0.17.1 | audit patch 6e5cbb42
Una contrasenya TURN de llarga durada es va emmagatzemar com una cadena ordinària i necessitava esborrar-se explícitament quan es destruïa el client.
Per exemple, finalitzar una trucada no hauria de deixar la seva contrasenya de retransmissió a la memòria de l'objecte client antic.
Solució local preparada, verificació en curs.
Detalls tècnics: turn 0.17.1 | audit patch 6e5cbb42
Els noms d'usuari i les contrasenyes TURN es van emmagatzemar com a cadenes normals i es van imprimir automàticament a la sortida de depuració d'ICE.
Per exemple, un informe de connexió de trucada pot indicar que existeixen credencials, però no ha d'imprimir el nom d'usuari i la contrasenya.
Solució local preparada, verificació en curs.
Detalls tècnics: webrtc-ice 0.17.1 | audit patch 6e5cbb42
L'entrada de derivació de claus multimèdia, les claus derivades, les sals SRTP/SRTCP emmagatzemades i l'estat de treball del xifrat necessitaven una neteja fiable.
Per exemple, després d'acabar una trucada xifrada, les seves claus i sals multimèdia temporals no haurien de romandre a les memòries intermèdies normals.
Solució local preparada, verificació en curs.
Detalls tècnics: webrtc-srtp 0.17.1 | audit patch 6e5cbb42
Per a notes de beta i actualitzacions d'accés, segueix el meu compte personal de X.