Habang Pumapaitaas ang DeFi Hacks, Nais ng Startup na Ito na Mag-Rad…

Sa nakalipas na ilang taon, daan-daang bagong desentralisadong aplikasyon sa pananalapi at protocol ang dumagsa sa Ethereum network at iba pang mga blockchain. Noong Nobyembre 2021, ang kabuuang halaga na naka-lock sa lahat ng DeFi app ay umabot sa nakakagulat na $290 bilyon. 

Ang DeFi, sa teorya, ay idinisenyo upang gawing demokrasya ang pag-access sa pananalapi sa pamamagitan ng pagpapagana sa mga tao mula sa buong mundo, mula sa anumang background, kahit sino sila, na lumahok. Walang mga paghihigpit sa pananalapi o heograpikal o mga sentralisadong tagapamagitan - lahat ay desentralisado, walang tiwala, at peer-to-peer. 

Ito ay isang pangitain na napatunayang sikat, na ang DeFi ay lumalaki nang mas mabilis kaysa sa naisip ng sinuman. Gayunpaman, ang pagtaas nito ay natabunan ng maraming kritikal na banta sa seguridad na ginagawa itong tila isang napaka-peligrong pakikipagsapalaran para sa sinumang hindi gaanong alam tungkol sa kung paano gumagana ang crypto. 

Habang ang 2021 ay isang malaking taon para sa DeFi, maaaring mas malaki pa ito para sa mga hacker, na may kamakailang ulat mula sa Chainalaysis paghahanap na nagnakaw sila ng pinagsamang $3.2 bilyong halaga ng cryptocurrency sa taong iyon. Ang taong ito ay malamang na maging kasing kita ng mga hacker. Ayon sa pinakabagong CertiK ulat, DeFi at Web3 magkasamang nawalan ng higit sa $2 bilyon sa mga hacker sa unang anim na buwan ng taon. 

Sinabi ng Chainalysis na ang mga hacker sa crypto sphere ay lumayo sa mga wallet at iba pang mga target, at halos eksklusibong nagta-target ng mga DeFi protocol ngayon. Sa unang tatlong buwan ng 2022, halos 97% ng lahat ng pondong ninakaw ng mga hacker ay nagmula sa DeFi, mula sa 72% noong 2021 at 30% lang noong 2020. Ang isang mabilis na pagtingin sa ilan sa mga pinakamalaking hack sa taong ito ay nagpapaliwanag kung bakit nagkaroon ang DeFi naging tanyag na target ng mga umaatake. Ang mga halaga na maaari nilang nakawin ay napakalaki. Ang pinakamahal na hack sa ngayon sa taong ito ay ang Paglabag sa Seguridad ng Ronin Validator. Noong Marso 23, nagawang ikompromiso ng tao o mga taong responsable sa pag-atake ang mga node ng validator ng Ronin at Axie DAO ng Sky NMavis, na-hack ang mga pribadong key at gumawa ng mga ipinagbabawal na pag-withdraw. Nagnakaw sila ng hindi kapani-paniwalang 173,600 ETH at 25.5 milyong USDC, na nagkakahalaga ng $615.5 milyon sa kabuuan, sa pamamagitan lamang ng dalawang transaksyon. 

Sa kasamaang palad, ang Ronin hack ay hindi lamang isang nakahiwalay na kaganapan. Noong Pebrero mga hacker pinagsamantalahan ang isang kahinaan sa seguridad sa signature verification ng Wormhole, na nagbibigay-daan sa kanila na makabawi gamit ang 120,000 wETH sa Solana, isang halaga na nagkakahalaga ng $326 milyon sa oras ng pag-atake. Katulad nito, noong Abril, ang Beanstalk protocol nahulog biktima sa isang araw na pagkaantala sa loob ng $BEAN na panukalang kontrata sa pamamahala upang makumpleto ang isang flash loan. Nagawa ng umaatake na nakawin ang 70% ng kabuuang mga buto, na nakawala ng $181 milyon sa kabuuan. 

 

Pagtuklas ng Mga Kahinaan sa Smart Contract

Ang karamihan sa mga pag-hack ng DeFi ay nangyayari dahil sa mga kahinaan sa mga matalinong kontrata na nagpapagana sa mga protocol. Ang mga smart contract ay self-executing bits of code na awtomatikong nagpoproseso ng mga transaksyon kapag natugunan ang ilang partikular na kundisyon. Isa sila sa mga pangunahing elemento ng DeFi habang ginagawa nila ang pangangailangan para sa isang pinagkakatiwalaang intermediary na paulit-ulit. 

Ang magandang balita ay alam ng komunidad na ang mga matalinong kontrata ay isang nakasisilaw na kahinaan sa seguridad ng DeFi at gumagawa ng mga hakbang upang matugunan ang mga ito. Ang pinaka-maaasahang DeFi protocol ngayon ay siguradong magsasagawa ng komprehensibo matalinong pag-audit ng kontrata upang matukoy kung mayroong anumang mga kahinaan. Ang mga pag-audit ay isinasagawa ng mga mapagkakatiwalaang kumpanya tulad ng CertiK at Hacken, at tinatasa ang mga naitalang transaksyon sa loob ng isang blockchain ledger upang subukan at makita ang anumang mga bug. 

Kasama sa iba pang paraan ng pagtukoy ng mga kahinaan mga pagsubok sa pagtagos ng mga koponan ng mga eksperto sa seguridad, na nagtatangkang i-hack ang mga protocol ng DeFi upang maipaalam nila sa mga developer kung paano nila ito ginawa, na nagpapahintulot sa kanila na isara ang anumang mga butas na natuklasan. Bilang karagdagan, ang mga protocol ay maaari ding mag-alok ng "mga bug bountie", kung saan ang mga ito ay mahalagang crowdsource ng seguridad. Dose-dosenang mga "white hat" na hacker ang nakikipagkumpitensya para sa isang premyong pera upang matukoy ang mga kahinaan sa loob ng isang protocol. Mga bug bounty maaaring maging kapaki-pakinabang lalo na dahil hinihimok nila ang mga kalahok na kumilos tulad ng mga totoong cybercriminal, ibig sabihin ay malamang na susubukan nilang i-hack ang protocol gamit ang mga katulad na pamamaraan tulad ng ginagawa ng mga tunay na masasamang tao. Ang ideya ay ang mabubuting tao ay makakatuklas ng anumang halatang pagsasamantala bago sila malantad sa totoong mundo. 

Makakatulong ang mga pag-audit ng smart contract code at mga bug bountie na protektahan ang mga protocol ng DeFi laban sa mga karaniwang pag-hack sa paligid ng hindi nahawakang mga pagbubukod at dependency sa order ng transaksyon. Gayunpaman, sa kasamaang-palad ay hindi nagkakamali ang mga pag-audit – natuklasan ng pag-aaral ng Chainalaysis na 30% ng mga pagsasamantala sa taong ito ay nangyari sa mga platform na na-audit sa loob ng nakalipas na 12 buwan. Kaya't habang ang mga pag-audit ng code at mga bug bounty ay maaaring makatulong, hindi sila nagbibigay ng anumang mga garantiya. Dahil dito, ang mga protocol ng DeFi na namamahala ng bilyun-bilyong dolyar sa mga pondo ng user ay dapat magpatibay ng isang mas matatag na diskarte sa seguridad. 

 

Reinventing Smart Contracts

Isa sa mga pinakakapana-panabik na solusyon na lumabas ay ang Scrypto programming language na binuo ni Ugat, na isang layer-1 blockchain protocol na partikular na binuo para sa DeFi. 

Ang Wikang scrypto ay batay sa sikat na Rust programming language at pinapanatili ang karamihan sa mga tampok nito. Gayunpaman, kapansin-pansing nagdaragdag ito ng ilang partikular na function batay sa Radix Engine. Maaari itong isipin bilang isang koleksyon ng mga library at extension sa Rust na nagbibigay ng mga feature na nakatuon sa asset, na nagbibigay-daan sa Rust-style na logic na makipag-ugnayan sa mga asset bilang isang katutubong, first-class na mamamayan. 

Ang pinakamahalagang pagkakaiba ng Scrypto ay ang epektibong pag-alis nito sa mga matalinong kontrata. Sa halip na mga matalinong kontrata, gumagamit ito ng mga blueprint at mga bahagi upang iproseso ang mga transaksyon. Ang mga blueprint ay pinagsama-samang source code na nabubuhay sa blockchain, kung saan magagamit ang mga ito ng sinuman. Ang kanilang tungkulin ay magbigay ng "mga function ng tagapagbuo" para sa mga transaksyon sa DeFi, na may mga nababagong parameter na maaaring i-instantiate ng iba. Ang mga ito sa pangkalahatan ay lubos na dalubhasa sa mga tuntunin ng pag-andar, bagama't maaari nilang suportahan ang maraming iba't ibang mga kaso ng paggamit depende sa eksakto kung paano sila na-instantiate. Maaaring gumana ang mga blueprint kung minsan kasama ng iba pang mga blueprint, na pinagsama-sama bilang isang "package". 

Upang i-activate ang isang blueprint, dapat itong ma-instantiate sa pamamagitan ng pagtawag sa isa sa mga function ng constructor nito upang makuha ang address ng isang bagong likhang instance, na kilala bilang isang "bahagi". Ang mga bahagi ay ginagamit upang pamahalaan ang estado at maaaring mangalap, humawak at mamahagi ng mga mapagkukunan ayon sa lohika na nauugnay sa loob ng blueprint na lumikha nito. Sa madaling salita, ang mga bahagi sa Scrypto ay kahawig ng mga matalinong kontrata, gayunpaman, nagmula ang mga ito sa lohika na tinukoy sa loob ng blueprint na nagsilang dito. 

Ang natatanging arkitektura ng Scrypto ay nagbibigay-daan dito na magsagawa ng mga transaksyon sa ibang paraan sa mga regular na smart contract na nakasulat sa Solidity o ibang wika. Sa halip na magpadala ng numero o reference sa ilang mga token, inililipat ng Radix Engine ang pagmamay-ari ng mga token mula sa tumatawag patungo sa isang bahagi. Sa sandaling makatanggap ang bahaging iyon ng isang bucket ng mga mapagkukunan o maraming mga bucket, maaari nitong kunin ang mga mapagkukunang iyon at ideposito ang mga ito sa isang vault na hawak nito, o kung hindi, sa ibang bucket. Pagkatapos, tinitiyak ng Radix Engine na hindi na maa-access ng tumatawag ang bucket o vault. 

Ang resulta ay ang dApps na binuo sa Radix ay may mas simple at mas ligtas na paraan ng transaksyon. Upang mas maunawaan kung paano ito gumagana, inaalok sa amin ng Radix ang halimbawa ng gumball machine na tumatanggap ng mga token ng USD kapalit ng isang token na hawak sa loob ng vault nito. 

Sa halimbawang ito, nagpapasa ang user ng bucket na 0.25 USD sa insertCoins na paraan ng bahagi ng MyMachine. Nakikita ng lohika ng blueprint na ang tamang presyo ay binayaran, idinaragdag ang mga token na iyon sa isang vault, pagkatapos ay kumuha ng 1 gumball mula sa gumball vault nito at ibinalik ito sa tumatawag. Maaari pa itong magpadala ng ilang pagbabago kung ang tumatawag ay pumasa ng masyadong maraming USD. 

Sa mga smart contract na nakabatay sa Solidity ng Ethereum, ito ay mas kumplikado at peligroso. Sa parehong makina, tatawag ang user ng isang matalinong kontrata para bigyan ang makina ng pahintulot na mag-withdraw mula sa kanilang wallet para sa kanila. Sasabihin nila sa makina na gusto nilang mag-input ng 0.25 USD. Pagkatapos ay tatawagan ng makina ang kontrata ng USD para mag-withdraw, pagkatapos ay tatawag ng gumball smart contract para ipadala ang gumball sa user. Sa wakas, malamang na mag-a-update din ito ng panloob na cache ng bilang ng mga natitirang gumball upang suriin kung may eros. Ang bawat isa sa mga prosesong ito ay gumagamit ng isang matalinong kontrata, at ang bawat isa samakatuwid ay nasa panganib na ma-hack dahil sa isang kahinaan ng matalinong kontrata. 

Simpleng halimbawa lang yan. Sa DeFi, ang mga transaksyon ay maaaring maraming beses na mas kumplikado, ibig sabihin, nalantad ang mga ito sa maraming beses na panganib. Ang kailangan lang ay isang kahinaan sa isang lugar, sa alinman sa maraming mga matalinong kontrata na kasangkot sa isang transaksyon, para sa isang umaatake na gumawa ng isang pag-atake. 

 

Konklusyon 

Habang lumalaki ang DeFi at tumataas ang kabuuang halaga nito na naka-lock, tataas lamang ang panganib ng pagsasamantala. Kung mayroong isang takeaway na makukuha namin mula sa napakagandang halaga ng crypto na ninakaw ng mga hack ng DeFi, ito ay ang pangangailangan para sa seguridad ng matalinong kontrata ay hindi kailanman naging mas malaki. Bagama't makakatulong ang mga pag-audit ng code at mga bug bountie upang makita ang mga pinaka-halatang kahinaan sa DeFi, malinaw na ang industriya ay maaaring makinabang nang malaki mula sa isang radikal na overhaul batay sa isang imprastraktura na idinisenyo upang mabawasan ang bilang ng mga potensyal na pagsasamantala mula sa simula. 

 

Pagwawaksi: Ang artikulong ito ay ibinigay para sa mga layuning pang-impormasyon lamang. Hindi ito inaalok o inilaan upang magamit bilang ligal, buwis, pamumuhunan, pampinansyal, o iba pang payo

Pinagmulan: https://cryptodaily.co.uk/2022/08/as-defi-hacks-soar-this-startup-wants-to-radical-overhaul-smart-contracts-to-prevent-them