Հրաժարում պատասխանատվությունից. հոդվածը թարմացվել է՝ արտացոլելու համար, որ Omniscia-ն չի ստուգել MasterPlatypusV4 պայմանագրի տարբերակը: Փոխարենը, ընկերությունը ստուգել է MasterPlatypusV1 պայմանագրի տարբերակը 21 թվականի նոյեմբերի 5-ից մինչև դեկտեմբերի 2021-ը։
Platypus-ի 8 միլիոն դոլար արժողությամբ վարկային հարձակումը հնարավոր է դարձել սխալ կարգի կոդի պատճառով, ըստ Platypus-ի աուդիտոր Omniscia-ի հետմահու զեկույցին: Աուդիտորական կազմակերպությունը պնդում է, որ իրենց կողմից աուդիտի ենթարկված տարբերակում խնդրահարույց ծածկագիրը չի եղել:
Վերջին օրերի լույսի ներքո @Platypusdefi միջադեպը https://t.co/30PzcoIJnt թիմը պատրաստել է տեխնիկական հետմահու վերլուծություն, որտեղ մանրամասնորեն նկարագրվում է, թե ինչպես է բացահայտվել շահագործումը:
Համոզվեք, որ հետևեք @Omniscia_sec ավելի շատ անվտանգության թարմացումներ ստանալու համար:https://t.co/cf784QtKPK pic.twitter.com/egHyoYaBhn
— Omniscia (@Omniscia_sec) Փետրվարի 17, 2023
Զեկույցի համաձայն, Platypus MasterPlatypusV4 պայմանագիրը «պարունակում էր ճակատագրական սխալ պատկերացում իր արտակարգՎերջման մեխանիզմում», որը ստիպեց նրան կատարել «իր վճարունակության ստուգումը նախքան ցցի դիրքի հետ կապված LP նշանները թարմացնելը»:
Զեկույցում ընդգծվում է, որ արտակարգ «Withdraw» ֆունկցիայի ծածկագիրը պարունակում է բոլոր անհրաժեշտ տարրերը՝ հարձակումը կանխելու համար, սակայն այդ տարրերը պարզապես գրվել են սխալ հերթականությամբ, ինչպես բացատրեց Omniscia-ն.
«Խնդիրը կարելի էր կանխել MasterPlatypusV4::emergencyWithdraw քաղվածքները նորից պատվիրելով և վճարունակության ստուգում կատարելով այն բանից հետո, երբ օգտատիրոջ գումարի մուտքագրումը 0-ի սահմանվեց, ինչը կարգելեր հարձակումը»:
Omniscia-ն ստուգել է MasterPlatypusV1 պայմանագրի տարբերակը 21 թվականի նոյեմբերի 5-ից մինչև դեկտեմբերի 2021-ը: Այնուամենայնիվ, այս տարբերակը «չի պարունակում ինտեգրման կետեր արտաքին platypusTreasure համակարգի հետ» և, հետևաբար, չի պարունակում կոդի սխալ տողեր:
Կարևոր է նշել, որ այն ծածկագիրը, որը շահագործվել է, գոյություն չուներ Omniscia-ի աուդիտի ժամանակ: Omniscia-ի տեսակետը ենթադրում է, որ մշակողները պետք է գործածած լինեն պայմանագրի նոր տարբերակը աուդիտից հետո ինչ-որ պահի:
Related: Raydium-ը հայտնում է հակերության մանրամասները, առաջարկում է փոխհատուցում տալ զոհերին
Աուդիտորը պնդում է, որ պայմանագրի իրականացումը Avalanche C-Chain հասցեում 0xc007f27b757a782c833c568f5851ae1dfe0e6ec7 այն է, որը եղել է. շահագործված. Այս պայմանագրի 582–584 տողերը, ըստ երևույթին, կանչում են «isSolvent» ֆունկցիան, որը կոչվում է «isSolvent» PlatypusTreasure պայմանագրում, իսկ 599–601 տողերը, ըստ երևույթին, սահմանում են օգտատիրոջ գումարը, գործակիցը և պարգևավճարը զրոյի: Այնուամենայնիվ, այս գումարները սահմանվում են զրոյի այն բանից հետո, երբ «isSolvent» ֆունկցիան արդեն կանչվել է:
Platypus թիմը հաստատել փետրվարի 16-ին, որ հարձակվողը շահագործել է «ԱՄՆ-ի վճարունակության ստուգման մեխանիզմի թերությունը», սակայն թիմը ի սկզբանե լրացուցիչ մանրամասներ չի հաղորդել: Աուդիտորի այս նոր զեկույցը լրացուցիչ լույս է սփռում այն բանի վրա, թե ինչպես է հարձակվողը կարողացել իրականացնել այդ շահագործումը:
The Platypus թիմը փետրվարի 16-ին հայտարարեց, որ հարձակում էր տեղի ունեցել. Այն փորձել է կապ հաստատել հաքերի հետ և վերադարձնել միջոցները սխալների պարգևի դիմաց: Հարձակվողը օգտագործված բռնկված վարկեր կատարել շահագործումը, որը նման է ռազմավարությանը, որն օգտագործվում է Defrost Finance-ի շահագործում 25 թվականի դեկտեմբերի 2022-ին։
Աղբյուր՝ https://cointelegraph.com/news/platypus-attack-exploited-incorrect-ordering-of-code-auditor-claims