L’empresa Chain Security va dur a terme un procés de revisió de la seguretat de Tron (TRX), la xarxa creada per Justin Sun. Va descobrir diverses vulnerabilitats que ja van ser resoltes, segons va detallar la companyia de seguretat el 30 de setembre passat.
Chain Security, destinada a auditories de contractes intel·ligents i solucions de seguretat per a xarxes i aplicacions descentralitzades (dApps), va informar que el seu estudi es va centrar en el mecanisme de consens de la xarxa, en l’execució de transaccions i en la Màquina Virtual Tron (TVM).
La companyia, en un fil de X, va deixar clar que si no haguessin detectat i solucionat aquestes falles, i si haguessin estat explotades, “podrien haver afectat el rendiment de la xarxa o causat interrupcions”. D’aquesta manera, Chain Security va explicar els problemes resolts següents.
Certs nodes van poder bloquejar transaccions legítimes
La solució de Chain Security va apuntalar el nou codi de Tron perquè filtreu els blocs de productors invàlids abans de processar-los. Això assegura que només els blocs vàlids siguin considerats, mantenint la consistència de la xarxa i evitant la censura de blocs legítims.
Tron utilitza un mecanisme de consens basat en Delegat Prova de participació (DPoSProva de Participació Delegada) i Tolerància pràctica a les falles bizantines (PBFTTolerància a Fallada Bizantina Pràctica).
En el primer, els usuaris voten per un conjunt de delegats (superrepresentants) que són responsables de validar les transaccions i generar nous blocs.
Mentre que el segon treballa per assegurar que dos terços dels nodes a la xarxa arribin a un acord fins i tot si hi ha nodes amb falles o que actuïn de manera maliciosa (ho fa per sostenir la xarxa en funcionament).
L’error resolt va estar lligat a aquest darrer mecanisme de consens. Es tracta de la “censura no permesa de blocs de bifurcació (blocs de forquilla)”. Aquesta expressió es refereix a lacció dun atacant que intenta bloquejar o eliminar blocs legítims en una cadena de blocs.
Chain Security va identificar que un node podria bloquejar o eliminar aquests blocs legítims creant una cadena de bifurcació amb blocs falsos. Si la xarxa detectava aquesta bifurcació, podria descartar tota la cadena, inclosos els blocs vàlids, el que resultava en inconsistències a la xarxa.
La xarxa Tron consumia recursos que alentia les transaccions
Chain Security es va ocupar de solucionar un excés de “consum de recursos per blocs no signats per testimonis”.
A la xarxa Tron, els testimonis són nodes que validen i signen els blocs per assegurar-ne la legitimitat. Un bloc no signat per testimonis és un bloc que no ha passat per aquest procés de validació.
Cada bloc processat consumeix memòria, requereix poder de còmput i encara que els blocs no validats eventualment es descartin, inicialment ocupen espai demmagatzematge.
Aleshores si la xarxa està ocupada processant blocs no validats, s’utilitza una quantitat significativa de recursos que podrien haver-se destinat a blocs vàlids i transaccions legítimes.
Per tant, processar aquests blocs no validats, podria alentir la xarxa i el seu rendiment general. Això pot portar a temps de transacció més llargs i una menor eficiència en lexecució de contractes intel·ligents.
Tron va resoldre una vulnerabilitat a la seva Màquina Virtual
D’altra banda, la companyia de seguretat va detectar un error al sistema de comunicació del mecanisme de consens PBFT (Tolerància a Fallos Bizantinos Pràctica) que està directament relacionat amb la MVT (màquina virtual de Tron).
En el context de Tron, els missatges PBFT són crucials per al funcionament del mecanisme de consens que assegura l’execució segura i eficient de contractes intel·ligents a la MVT.
Aquest error en els missatges PBFT podria haver generat una expansió il·limitada de la memòria, cosa que potencialment portaria a un atac de Denegació de Servei (DoS). Això vol dir que, sense l’actualització, la xarxa podria haver estat vulnerable a atacs que sobrecarregaren la memòria del sistema, afectant-ne el rendiment i la disponibilitat.
El sistema va ser actualitzat per assegurar que els missatges PBFT només es processin quan PBFT estigui habilitat. Això evita el consum excessiu de memòria i protegeix la xarxa contra possibles atacs de DoS.
En última instància, Chain Security va comunicar que hi va haver altres falles o vulnerabilitats resoltes, no obstant el seu reporti es va centrar en el que disposa aquí.
