Pe 8 ianuarie 2026, protocolul Truebit s-a trezit golit de 8.535 ETH. Vorbim de peste 26 de milioane de dolari, dispăruți într-o singură tranzacție. Atacul nu a surprins pe toată lumea.
Vulnerabilitatea fusese semnalată public încă din 2021, când un cercetător pe nume Banteg avertiza că mecanismul de preț al protocolului ascunde o capcană periculoasă. Nimeni din echipă nu a luat în serios avertismentul, iar contractul a rămas neschimbat timp de aproape cinci ani.
Ceea ce deranjează cel mai mult în toată povestea asta e cât de simplu a fost totul. Atacatorul a găsit o eroare matematică în funcția care calcula prețul token-urilor, un overflow care-i permitea să creeze sute de milioane de TRU fără să plătească aproape nimic. Le vindea apoi înapoi protocolului pentru ETH real și repeta ciclul până când rezervele s-au terminat. Întreaga operațiune a durat câteva minute.
Cum a început totul?
Truebit venea cu o idee interesantă când a apărut pe piață. Ethereum avea o problemă veche pe care mulți încercaseră să o rezolve: calculele complexe costau mult și durau. Taxele de gas urcau vertiginos când rețeaua era aglomerată, iar aplicațiile care necesitau procesare intensivă deveneau prohibitiv de scumpe pentru utilizatorul obișnuit.
Soluția propusă de Truebit era să muți procesarea grea în afara blockchain-ului, să validezi rezultatele prin criptografie și să scazi astfel costurile la o fracțiune din ce ar fi costat altfel. Pe hârtie, suna bine. Investitorii s-au înghesuit să cumpere, atrași de promisiunea unor aplicații care altfel nu ar fi fost fezabile pe Ethereum.
Lansarea din 2021 a fost însă haotică, marcată de confuzie și lipsa comunicării. Token-ul TRU a apărut fără niciun anunț prealabil, iar prețul urma un mecanism ciudat bazat pe ceea ce se numește curbă de legătură. Banteg, cercetătorul despre care aminteam, a studiat contractul în detaliu și a tras un semnal de alarmă pe care puțini l-au auzit.
Protocolul cumpăra înapoi token-urile la doar 12,5% din prețul maxim de emitere, o asimetrie flagrantă care favoriza în mod clar primii veniți. Cine intra devreme putea ieși cu profit, ceilalți rămâneau să țină sacul. A scris despre asta public, dar mesajul s-a pierdut în zgomotul de fond al pieței, acoperit de entuziasmul general pentru orice proiect nou.
Ce s-a întâmplat de fapt?
Ca să înțelegi atacul, trebuie să știi cum funcționa sistemul de prețuri al Truebit. Curba de legătură ajusta automat costul token-urilor în funcție de câte fuseseră deja emise. Cu cât cumpărau mai mulți oameni, cu atât prețul creștea. Vânzările îl trăgeau în jos. Un mecanism care funcționează corect în condiții normale și care era destul de popular în ecosistemul DeFi la acea vreme.
Problema era în funcția getPurchasePrice, cea care calcula cât ETH trebuia să plătești pentru un anumit număr de token-uri. Pentru cantități obișnuite, returna valori corecte. Dar dacă cineva introducea numere absurd de mari, mult peste orice cerere realistă, matematica dădea rateuri spectaculoase.
Contractul fusese scris în Solidity 0.5.3, o versiune veche care nu verifica automat dacă rezultatul unei operații matematice depășea limitele variabilei. Când se întâmpla asta, în loc să apară o eroare care să oprească tranzacția, numărul se întorcea la zero și continua de acolo.
E un bug clasic în programare, cunoscut de decenii, și tocmai de asta există biblioteci speciale care previn astfel de situații. Dezvoltatorii Truebit folosiseră SafeMath pentru înmulțiri și împărțiri, dar au uitat de o adunare. O singură operație nesecurizată într-un contract care controla milioane de dolari.
Atacatorul și-a construit propriul contract care automatiza exploatarea de la un capăt la altul. Într-o singură tranzacție, apela funcția de cumpărare cu o valoare enormă, primea gratuit peste 240 de milioane de TRU, le vindea apoi înapoi protocolului la rata de răscumpărare de 12,5% și repeta procesul. Cinci iterații mai târziu, 8.535 ETH ajunseseră în portofelul lui, iar contractul Truebit rămăsese cu doar câțiva ETH în rezerve.
Și uite ce-i drăguț în toată treaba asta: funcția din contractul de atac se numea, fără nicio jenă, Attack. Nici măcar nu s-a obosit să ascundă ce face sau să dea vreun nume neutru. Probabil știa că nimeni nu se mai uita la contractele alea vechi de ani de zile.
Cum au reacționat cei din jur?
Cyvers, o firmă de monitorizare blockchain specializată în detectarea tranzacțiilor suspecte, a prins operațiunea în timp real. În câteva minute, cercetătorii independenți deja disecau ce se întâmplase, postând analize pe rețelele sociale și în grupurile specializate.
William Li, un analist de securitate respectat în comunitate, a remarcat că atacurile pe contracte vechi devin din ce în ce mai comune și că e doar o chestiune de timp până când și alte protocoale abandonate vor suferi aceeași soartă. BlockScope a descoperit că portofelul atacatorului fusese alimentat încă din noiembrie 2025 prin Rhino.fi, ceea ce înseamnă că omul se pregătise săptămâni întregi, studiind contractul și planificând fiecare pas.
Echipa Truebit a tăcut două ore întregi în timp ce comunitatea fierbea. Când în cele din urmă au postat ceva, mesajul a fost de-o banalitate jenantă: am aflat de un incident de securitate, vă rugăm să nu interacționați cu contractul afectat, colaborăm cu autoritățile.
Nicio cifră concretă despre pierderile suferite, nicio explicație tehnică despre ce se întâmplase, nicio asumare a responsabilității pentru că ignoraseră avertismentele timp de cinci ani.
Token-ul TRU s-a prăbușit de la 16 cenți la practic zero în câteva ore. Pool-urile de lichiditate s-au golit înainte ca deținătorii să apuce să reacționeze sau să-și vândă pozițiile. Mii de oameni au rămas cu token-uri care nu mai valorau nimic și fără nicio speranță de recuperare.
PeckShield a adăugat un detaliu care pune lucrurile în perspectivă și arată că nu vorbim de un incident izolat: portofelul atacatorului era același care lovise protocolul Sparkle cu 12 zile înainte, luând atunci vreo 5 ETH.
De la 5 ETH la 8.535 ETH în două săptămâni reprezintă o escaladare de peste 1.700 de ori. Nu vorbim de un amator care a dat peste o vulnerabilitate din greșeală, ci de cineva care lucrează sistematic printr-o listă de ținte, analizând metodic contractele vechi în căutarea breșelor.
Unde au ajuns banii?
În crypto, poți urmări banii pentru că blockchain-ul e public și fiecare tranzacție rămâne înregistrată pentru totdeauna. Recuperarea lor e însă altă poveste, mult mai complicată. Imediat după atac, fondurile au fost mutate prin mai multe portofele intermediare, o tehnică obișnuită pentru a încurca pistele și a face urmărirea mai dificilă pentru autoritățile sau firmele de analiză.
Destinația finală a fost Tornado Cash, un protocol de mixare care amestecă tranzacțiile a zeci sau sute de utilizatori și rupe legătura dintre sursă și destinație. Odată ce fondurile intră în Tornado Cash și ies prin altă adresă, trasabilitatea se pierde aproape complet.
Pe 10 ianuarie, firma de analiză Lookonchain a confirmat că toți cei 8.535 ETH ajunseseră acolo. Șansele de recuperare prin metode convenționale sunt acum aproape nule, singura speranță rămânând o eventuală greșeală a atacatorului sau cooperarea internațională a autorităților.
Nici atacatorul principal nu a fost singurul care a profitat de pe urma vulnerabilității. După ce exploatarea a devenit vizibilă pe blockchain, alții s-au grăbit să culeagă ce mai rămăsese în contract. Un al doilea atacator a scos vreo 253.000 de dolari, iar boții MEV, programe automate care scanează constant mempool-ul în căutarea oportunităților de arbitraj, au luat și ei ce au putut din resturile rămase.
O problemă mai largă
Cazul Truebit nu e singular și nu reprezintă o excepție nefericită. Face parte dintr-un val tot mai îngrijorător de atacuri asupra contractelor inteligente abandonate care continuă să controleze sume importante de bani, deși nimeni nu le mai întreține sau monitorizează.
Cu câteva luni înainte, Balancer pierduse 128 de milioane de dolari din cauza unor erori de rotunjire în pool-uri vechi de cinci ani pe care nimeni nu le mai verificase. Yearn Finance fusese lovit pentru 9 milioane printr-un contract uitat care conținea o matematică experimentală.
Abracadabra văzuse 1,8 milioane dispărând prin contracte marcate oficial drept depreciate, dar niciodată oprite efectiv sau golite de fonduri.
Aevo, fostă cunoscută ca Ribbon Finance, pierduse 2,7 milioane prin vulnerabilități în arhitectura vault-urilor vechi. Chiar și Rari Capital, care oficial își închisese activitatea și anunțase că nu mai operează, suferise o pierdere de vreo 2 milioane prin preluarea unui portofel multisig.
Un fost dezvoltator Yearn, cunoscut online ca stormblessed, a spus-o direct într-o postare care a circulat mult în comunitate: asta o să continue să se întâmple atâta timp cât echipele abandonează codul fără să-l dezactiveze. Sfatul lui pentru ceilalți dezvoltatori e să presupună că tot codul vechi e analizat activ de atacatori cu instrumente din ce în ce mai sofisticate și să-l dezactiveze complet sau să-l re-auditeze periodic.
Un studiu recent al celor de la Anthropic a arătat că agenții lor de inteligență artificială, testați pe 405 contracte exploatate anterior, au reușit să reproducă autonom exploatări în valoare de 4,5 milioane de dolari. Mai îngrijorător, unele dintre contractele compromise fuseseră implementate după data la care modelul își oprise antrenamentul, ceea ce înseamnă că putea găsi vulnerabilități noi pe cont propriu, nu doar să le copieze pe cele deja documentate.
Găsirea bugurilor în codul vechi e mai ușoară ca niciodată, iar bariera de intrare scade constant pe măsură ce instrumentele devin mai accesibile. Recompensele potențiale sunt însă mai mari ca niciodată, ceea ce face din contractele abandonate ținte irezistibile.
Ce poți învăța din asta?
Dacă investești în protocoale DeFi, cazul Truebit îți oferă câteva lecții pe care merită să le iei în serios. Un contract inteligent fără cod sursă verificat public ar trebui să-ți ridice imediat semne de întrebare. Truebit nu publicase niciodată auditul complet al contractului exploatat, iar codul sursă nu era vizibil pe Etherscan, doar bytecode-ul brut pe care puțini îl pot citi.
Contează și cât de activă e echipa și cât de mult comunică cu comunitatea. Dacă contractele principale nu au fost actualizate de ani de zile, dacă nu mai răspunde nimeni la întrebări și dacă avertismentele publice sunt ignorate ani la rând, ai de-a face cu un risc serios care nu merită asumat. Truebit bifa toate criteriile astea cu mult înainte de atac.
Pentru dezvoltatori, lecțiile sunt și mai directe. Versiunile recente de Solidity au verificări automate de overflow incluse în compilator, folosește-le și nu te baza pe biblioteci externe pentru lucruri pe care limbajul le poate face nativ.
Auditează toate operațiile matematice fără excepție, nu doar cele pe care le consideri critice la prima vedere. Publică codul sursă verificat ca să permită comunității să-l analizeze. Și creează mecanisme prin care să poți opri sau goli contractele vechi înainte să devină ținte.
Zona gri legală
Din punct de vedere strict tehnic, atacatorul nu a făcut decât să interacționeze cu un contract public folosind funcțiile disponibile oricui. Nu a spart parole, nu a accesat sisteme private, nu a păcălit pe nimeni prin inginerie socială. A citit codul pe care oricine îl putea citi, a înțeles vulnerabilitatea și a executat tranzacții pe care contractul le permitea fără restricții.
Asta creează o situație ciudată din perspectivă legală, o zonă gri pe care sistemul juridic încă nu a reușit să o clarifice. În unele țări, astfel de acțiuni pot fi considerate acces neautorizat la sisteme informatice și pedepsite ca atare. În altele, nu există legi care să le acopere. Când contractul e public pe un blockchain deschis și funcțiile sunt accesibile oricui, definiția accesului neautorizat devine neclară și greu de aplicat.
Din punct de vedere etic, lucrurile par mai simple la prima vedere. Chiar dacă e tehnic posibil și poate chiar legal, extragerea fondurilor prin exploatarea vulnerabilităților provoacă daune reale unor oameni reali.
Deținătorii de TRU care și-au pierdut banii nu sunt entități abstracte sau corporații fără chip, ci indivizi care au crezut în proiect și și-au investit economiile. Unii argumentează că atacurile de genul ăsta forțează industria să se maturizeze și să adopte standarde mai înalte. Poate că e adevărat pe termen lung, dar costul e suportat de victime care n-au nicio vină.
Ce urmează pentru DeFi?
Finanțele descentralizate au ajuns la un punct de cotitură după o serie de incidente care au zguduit încrederea multor participanți. Promisiunea unui sistem financiar deschis, transparent și accesibil rămâne atrăgătoare pentru milioane de oameni din întreaga lume.
Dar libertatea asta vine fără plasele de siguranță ale sistemului tradițional: fără asigurare a depozitelor, fără proceduri de recuperare a fondurilor furate, fără autorități care să impună standarde minime și să pedepsească neglijența.
Au apărut soluții parțiale care încearcă să umple acest gol. Firme de audit specializate analizează contractele înainte de lansare și oferă un grad de asigurare că matematica funcționează corect. Protocoale de asigurare oferă protecție contra exploatărilor, deși primele sunt scumpe și puțini își permit să le plătească.
Programele de bug bounty încurajează cercetătorii să raporteze problemele în loc să le exploateze, oferind recompense substanțiale pentru vulnerabilitățile descoperite. Instrumente de monitorizare în timp real pot alerta echipele despre comportamente suspecte înainte să fie prea târziu.
Dar nicio soluție tehnică nu poate compensa abandonul complet al unui proiect. Atât timp cât vor exista contracte care controlează fonduri și nu au pe nimeni care să le supravegheze sau să le actualizeze, vor exista și oameni care le vor analiza metodic în căutarea breșelor.
Cine poartă responsabilitatea?
Într-un ecosistem descentralizat, fără protecții instituționale și fără autorități care să intervină, responsabilitatea cade în mare parte pe utilizatori. Asta nu înseamnă că victimele sunt vinovate pentru ce li s-a întâmplat sau că ar fi meritat să-și piardă banii. Înseamnă doar că educația și prudența devin instrumente necesare de autoprotecție într-un mediu care nu iartă greșelile.
Înțelegerea mecanismelor de bază ale protocoalelor în care investești, verificarea istoricului echipei și a activității recente, citirea atentă a rapoartelor de audit și urmărirea discuțiilor din comunitate reprezintă un minimum de due diligence pe care orice investitor ar trebui să-l facă.
Diversificarea între mai multe protocoale și limitarea expunerii la sume pe care ți le poți permite să le pierzi fără consecințe grave rămân principii de bază valabile în orice piață.
Pentru cei cu cunoștințe tehnice, verificarea directă a codului sursă oferă un nivel suplimentar de siguranță pe care puțini îl au. Un contract al cărui cod nu poate fi verificat public ar trebui tratat cu precauție maximă, indiferent cât de convingătoare sunt promisiunile echipei sau cât de entuziasmat e restul comunității.
Ironia finală a cazului Truebit e că sloganul proiectului îndemna exact la verificare: nu doar să ai încredere, ci să verifici. Atacatorul chiar a verificat, așa cum cerea sloganul. A găsit vulnerabilitatea și a extras tot ce matematica defectă i-a permis. Lecția e simplă, dar dureroasă: sfaturile nu valorează nimic dacă cei care le dau nu le urmează ei înșiși.
Contractul Truebit a stat pe Ethereum aproape cinci ani fără să-l atingă nimeni. O singură tranzacție l-a golit complet într-o după-amiază. Undeva pe blockchain, alte contracte similare așteaptă în tăcere, controlând fonduri și adăpostind vulnerabilități pe care nimeni nu le-a verificat încă. Întrebarea nu e dacă vor fi găsite. Întrebarea e doar când.






