Un bug descoperit luna trecuta ar putea avea potentialul de golire a conturilor de schimb care detinea token-uri digitale utilizate pentru alimentarea aplicatiei distribuite pe baza de ethereum Golem.

Cu toate acestea, datorită naturii bug-ului, ar fi putut fi folosită și pe alte jetoane ethereum cotate la bursă. Asta pentru că a folosit standardul platformei ERC-20, o caracteristică care a câștigat avocații în sectorul de schimb din cauza capacității sale de a reduce timpul necesar schimburilor pentru a adăuga noi monede.

Cu toate acestea, un suporter Golem și un deținător de GNT au găsit bug-ul pe 18 martie și l-au raportat echipei de dezvoltatori înainte ca acesta să poată fi folosit cu răutate.

Problema care a ieșit la iveală se datorează modului în care schimburile pregătesc datele pentru tranzacții și modul în care Soliditatea (limba inteligentă de contractare eterică) codifică și decodează datele tranzacției, a declarat Pawel Bylica, inginerul software-ului Golem Factory, care a publicat un raport privind problema.

Potrivit evaluării sale, serviciul care a pregătit datele pentru transferurile token presupune o intrare de 20 de octeți lungi, dar nu verifică efectiv pentru a se asigura că intrarea a fost lungimea corectă.

Ca rezultat, o lungime de adresă mai scurtă a determinat ca suma tranzacției să fie mutată spre stânga, mărind astfel valoarea acesteia.

Utilizatorul Golem a raportat o tranzacție "ciudată" care a câștigat atât de multă valoare încât ar fi putut goli întregul cont de GNT de schimb, potrivit postului lui Bylica. De fapt, el doar motivul pentru acest lucru nu sa întâmplat, a spus el, este că numărul a fost atât de mare încât era imposibil ca schimbul să o completeze.

Problema a fost rezolvată și echipa Bylica a anunțat alte schimburi de vulnerabilitate potențială.

Cu toate acestea, temerile erau încă stomacate de bug, dat fiind că ar fi putut fi aplicabilă în general altor schimburi folosind jetoanele ERC-20.

Deși echipa lui Bylica nu a verificat existența acestei vulnerabilități pe alte burse, el a menționat că posibilele dezavantaje au fost grave.

"Am fost șocați și puțin îngrozit să înțelegem consecințele potențiale ale unei persoane care profită de acest bug pentru mai multe jetoane pe mai multe schimburi", a scris Bylica.

Din fericire, unele soluții propuse sunt relativ simple de implementat.

"Verificarea pur și simplu a lungimii unei adrese furnizate de un utilizator asigură schimburile de atac descris", scrie Bylica.

Reddit reacții

Reacția de la Reddit a variat de la o agresiune ușoară până la dezbateri privind responsabilitatea schimburilor de a oferi o securitate sporită.

"Sunt lucruri de bază", a scris BullBearBabyWhale. "Sunt încă uimită cât de serioasă de afaceri în acest spațiu (care este totul despre securitate) nu o ia în serios."

Pentru cei care stochează toate jetoanele pe bază de ethereum, inclusiv jetoanele ERC-20, într-un schimb, utilizatorul Redupit 1up8192 a recomandat contactarea furnizorilor de servicii pentru a vedea dacă au verificat vulnerabilitatea. dacă știu despre posibilitatea injectării și dacă au rezolvat problema ", au scris ei.

Imaginea codului computerului prin Shutterstock