Furnizorul de portofel de calcul multipartit (MPC) Liminal a publicat un raport post-mortem pe 19 iulie cu privire la hack-ul WazirX din ziua precedentă, susținând că interfața sa de utilizare nu este responsabilă pentru atac. Potrivit raportului, hack-ul a avut loc deoarece trei dispozitive WazirX au fost compromise.
Liminal a mai susținut că portofelul său cu mai multe semnături a fost creat pentru a oferi o a patra semnătură dacă WazirX le-a furnizat pe celelalte trei. Acest lucru însemna că atacatorul nu trebuia decât să compromită trei dispozitive pentru a efectua atacul. Portofelul a fost configurat astfel la cererea WazirX, a susținut furnizorul de portofel.
Într-o postare din 18 iulie pe rețelele sociale, WazirX a susținut că cheile sale private au fost securizate cu portofele hardware. WazirX a spus că atacul „a rezultat dintr-o discrepanță între datele afișate pe interfața Liminal și conținutul real al tranzacției”.
Potrivit raportului Liminal, unul dintre dispozitivele WazirX a inițiat o tranzacție validă care implică jetonul Gala Games (GALA). Ca răspuns, serverul lui Liminal a furnizat un „safeTxHash”, verificând validitatea tranzacției. Cu toate acestea, atacatorul a înlocuit apoi acest hash tranzacție cu unul nevalid, determinând eșuarea tranzacției.
În opinia lui Liminal, faptul că atacatorul a reușit să schimbe acest hash implică faptul că dispozitivul lui WazirX a fost deja compromis înainte de încercarea tranzacției.
Atacatorul a inițiat apoi alte două tranzacții; un transfer GALA și un transfer Tether (USDT). În fiecare dintre aceste trei tranzacții, atacatorul a folosit un cont de administrator WazirX diferit, pentru un total de trei conturi utilizate. Toate cele trei tranzacții au eșuat.
După inițierea acestor trei tranzacții eșuate, atacatorul a extras semnături din tranzacții și le-a folosit pentru a iniția o nouă, a patra tranzacție. A patra tranzacție „a fost creată în așa fel încât câmpurile folosite pentru a verifica politicile foloseau detalii legitime ale tranzacției” și „a folosit Nonce din tranzacția USDT eșuată, deoarece aceasta a fost cea mai recentă tranzacție”.
Deoarece a folosit aceste „detalii legitime ale tranzacției”, serverul Liminal a aprobat tranzacția și a furnizat o a patra semnătură. Drept urmare, tranzacția a fost confirmată pe rețeaua Ethereum, rezultând un transfer de fonduri din portofelul multisig comun în contul Ethereum al atacatorului.
Liminal a negat că serverele sale au cauzat afișarea de informații incorecte prin interfața de utilizare Liminal. În schimb, a susținut că informațiile incorecte au fost furnizate de atacator, care a compromis computerele WazirX. Într-un răspuns la întrebarea pusă, „Cum a arătat interfața de utilizare o valoare diferită de sarcina utilă reală în cadrul tranzacției?” Liminal a spus:
„Pe baza jurnalelor noastre, având în vedere că trei dispozitive ale tranzacțiilor partajate ale victimei au trimis încărcături utile rău intenționate către serverul Liminal, avem motive să credem că mașinile locale au fost compromise, oferind atacatorului acces complet pentru a modifica încărcăturile utile și pentru a afișa detaliile tranzacțiilor înșelătoare pe UI.”
Liminal a susținut, de asemenea, că serverele sale au fost programate să furnizeze automat o a patra semnătură dacă administratorii WazirX le-au furnizat pe celelalte trei. „Liminal furnizează semnătura finală doar după ce numărul necesar de semnături valide sunt primite din partea clientului”, a spus acesta, adăugând că în acest caz „tranzacția a fost autorizată și semnată de trei dintre angajații clientului nostru”.
Portofelul multisig „a fost implementat de WazirX conform configurației lor cu mult înainte de a se integra cu Liminal” și a fost „importat” în Liminal „la cererea lui WazirX”.
Înrudit: Încălcarea WazirX post-mortem: Demontarea atacului de 230 de milioane de dolari
Postarea lui WazirX a susținut că a implementat „funcții de securitate robuste”. De exemplu, a cerut ca toate tranzacțiile să fie confirmate de patru din cinci deținători de chei. Patru dintre aceste chei au aparținut angajaților WazirX și una echipei Liminal. În plus, a fost necesar ca trei dintre deținătorii de chei WazirX să folosească portofele hardware. Toate adresele de destinație trebuiau adăugate la o listă albă din timp, a declarat WazirX, care a fost „alocată și facilitată pe interfață de către Liminal”.
În ciuda faptului că și-a luat toate aceste măsuri de precauție, atacatorul „pare să fi încălcat astfel de caracteristici de securitate, iar furtul a avut loc”. WazirX a numit atacul drept „un eveniment de forță majoră care nu poate fi controlat”. Chiar și așa, a promis că „nu lasă piatră neîntoarsă pentru a localiza și recupera fondurile”.
Se estimează că au fost pierdute 235 de milioane de dolari în atacul WazirX. A fost cel mai mare hack de schimb centralizat de la exploitul DMM din 31 mai, care a dus la pierderi și mai mari de 305 milioane USD.
Revista: Hackerii WazirX s-au pregătit cu 8 zile înainte de atac, escrocii falsifică fiat pentru USDT: Asia Express