Analisis insiden Jembatan Nomad

Tl;dr: Membangun ekosistem kripto yang lebih baik berarti membangun masa depan yang lebih baik dan lebih adil bagi kita semua. Itu sebabnya kami berinvestasi di komunitas yang lebih besar untuk memastikan siapa pun yang ingin berpartisipasi dalam ekonomi kripto dapat melakukannya dengan cara yang aman. Dalam posting blog ini, kami berbagi pelajaran tentang sifat kerentanan, metodologi eksploitasi, serta analisis rantai perilaku penyerang selama insiden Nomad Bridge.

Meskipun kompromi jembatan Nomad tidak secara langsung memengaruhi Coinbase, kami sangat yakin bahwa serangan terhadap bisnis kripto apa pun buruk bagi industri secara keseluruhan dan berharap informasi di blog akan membantu memperkuat dan menginformasikan proyek serupa tentang ancaman dan teknik yang digunakan oleh aktor jahat.

Analisis insiden Nomad Bridge PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.

Oleh: Peter Kacherginsky, Intelijen Ancaman dan Heidi Wilder, Investigasi Khusus

Pada 1 Agustus 2022 Jembatan Pengembara mengalami peretasan DeFi terbesar keempat dengan lebih dari $186 juta dicuri hanya dalam beberapa jam. Seperti yang telah kami jelaskan di kami posting blog terbaru, dari kompromi Jembatan Ronin senilai $540 juta pada bulan Maret hingga peretasan jembatan Wormhole senilai $250 juta pada bulan Februari 2022, bukanlah suatu kebetulan bahwa jembatan DeFi merupakan beberapa insiden paling mahal di industri kami.

Apa yang membuat kompromi Jembatan Pengembara unik adalah kesederhanaan eksploitasi dan banyaknya individu yang memanfaatkannya untuk mengosongkan semua aset yang tersimpan sepotong demi sepotong.

Pengembara adalah protokol penghubung yang mendukung Ethereum, Moonbeam, dan rantai lainnya. Protokol penghubung Nomad dibangun menggunakan komponen on-chain dan off-chain. Kontrak pintar on-chain digunakan untuk mengumpulkan dan mendistribusikan dana yang dijembatani sementara agen off-chain menyampaikan dan memverifikasi pesan di antara berbagai blockchain. Setiap blockchain menyebarkan kontrak Replika yang memvalidasi dan menyimpan pesan dalam struktur pohon Merkle. Pesan dapat divalidasi dengan memberikan bukti dengan buktikanDanProses() panggilan atau untuk pesan yang sudah diverifikasi, mereka dapat dengan mudah dikirimkan dengan proses() panggilan. Pesan terverifikasi diteruskan ke pengendali Bridge (misalnya Router ERC20) yang dapat mendistribusikan aset yang dijembatani.

Pada 21 April 2022 Nomad dikerahkan sebuah replika kontrak proxy untuk menangani pemrosesan dan validasi klaim pengguna atas aset yang dijembatani. Proxy ini akan memungkinkan Nomad untuk dengan mudah mengubah logika implementasi sambil mempertahankan penyimpanan di seluruh peningkatan. Sebagai bagian dari penerapan proxy, Nomad menetapkan parameter kontrak awal yang ditentukan dalam cuplikan di bawah ini:

fungsi inisialisasi (uint32 _domain jarak jauh,alamat _updater,byte32 _committedRoot,uint256 _optimisticSeconds) penginisialisasi publik {__NomadBase_initialize(_updater);// mengatur variabel penyimpanandimasukkan = 1;domain jarak jauh = _domain jarak jauh;commitRoot = _committedRoot;konfirmasiAt[_commitRoot] = 1;optimisSeconds = _optimisticSeconds;memancarkan SetOptimisticTimeout(_optimisticSeconds);}

Perhatikan yang disorot konfirmasiPada tugas peta yang menetapkan entri awal untuk yang tepercaya _commitRoot dengan nilai 1. Variabel _commitRoot disediakan sebagai parameter inisialisasi oleh penyebar kontrak Nomad. Mari kita lihat apa yang disetel selama inisialisasi:

$ cast run 0x99662dacfb4b963479b159fc43c2b4d048562104fe154a4d0c2519ada72e50bf --quick --rpc-url $MAINNET_RPC_URLJejak:[261514] โ†’ baru UpgradeBeaconProxy@"0x5d94โ€ฆaeba"[2160] UpgradeBeacon::fallback() [staticcall]โ”‚   โ””โ”€ โ† 0x0000000000000000000000007f58bb8311db968ab110889f2dfa04ab7e8e831bโ”œโ”€ [163890] Replica::initialize(1635148152, 0xb93d4dbb87b80f0869a5ce0839fb75acdbeb1b77, 0x0000000000000000000000000000000000000000000000000000000000000000, 1800) [panggilan delegasi]memancarkan OwnershipTransferred(Pemilik sebelumnya: 0x0000000000000000000000000000000000000000, Pemilik baru: 0xa5bd5c661f373256c0ccfbc628fd52de74f9bb55)memancarkan Pembaruan Baru (Pembaru lama: 0x0000000000000000000000000000000000000000, Pembaruan baru: 0xb93d4dbb87b80f0869a5ce0839fb75acdbeb1b77)memancarkan SetOptimisticTimeout(batas waktu: 1800)()439 byte kode

Menariknya parameter inisialisasi _berkomitmenRoot diatur ke 0. Akibatnya konfirmasiPada map sekarang memiliki nilai 1 untuk entri 0 yang dari April hingga hari ini:

$ berikan panggilan 0x5d94309e5a0090b165fa4181519701637b6daeba "confirmAt(bytes32)" 0x0 --rpc-url $MAINNET_RPC_URL0x0000000000000000000000000000000000000000000000000000000000000001

Pada 21 Juni 2022, Nomad melakukan serangkaian peningkatan pada infrastruktur bridging-nya termasuk implementasi Replica. Salah satu perubahan termasuk pembaruan pada logika verifikasi pesan di proses() fungsi:

fungsi proses(byte memory _message) pengembalian publik (bool _success) {// pastikan pesan ditujukan untuk domain inibyte29 _m = _message.ref(0);membutuhkan(_m.destination() == localDomain, "!destination");// pastikan pesan telah terbuktibyte32 _messageHash = _m.keccak();membutuhkan(acceptableRoot(messages[_messageHash]), "! terbukti");// periksa penjaga masuk kembalimembutuhkan(dimasukkan == 1, "! masuk kembali");dimasukkan = 0;// perbarui status pesan sebagai diprosespesan[_messageHash] = LEGACY_STATUS_PROCESSED;// memanggil fungsi peganganIMessageRecipient(_m.recipientAddress()).handle(_m.asal(),_m.nonce(),_m.pengirim(),_m.tubuh().klon());// memancarkan hasil prosesmemancarkan Proses(_messageHash, benar, "");// setel ulang penjaga masuk kembalidimasukkan = 1;// kembalikan benarkembali benar;}

Alur verifikasi pesan sekarang mencakup panggilan ke dapat diterimaRoot() metode yang pada gilirannya referensi konfirmasiPada peta yang kami sebutkan di atas:

function acceptRoot(bytes32 _root) pengembalian tampilan publik (bool) {// ini adalah kompatibilitas mundur untuk pesan yang terbukti/diproses// di bawah versi sebelumnyajika (_root == LEGACY_STATUS_PROVEN) mengembalikan nilai true;jika (_root == LEGACY_STATUS_PROCESSED) mengembalikan false;uint256 _time = konfirmasiPada[_root];jika (_waktu == 0) {return false;}kembali block.timestamp >= _time;}

Kerentanan muncul dalam skenario ketika pesan penipuan, tidak ada di tepercaya pesan[] peta, dikirim langsung ke proses() metode. Dalam skenario ini pesan[_messageHash] mengembalikan nilai nol default untuk entri yang tidak ada sehingga dapat diterimaRoot() metode disebut sebagai berikut:

membutuhkan(acceptableRoot(0), "! terbukti");

Pada gilirannya, dapat diterimaRoot() metode akan melakukan pencarian terhadap konfirmasiPada[] peta dengan nilai nol sebagai berikut:

uint256 _waktu = konfirmasiPada[0];jika (_waktu == 0) {return false;}kembali block.timestamp >= _time;

Seperti yang kami sebutkan di awal bagian ini, konfirmasiPada[] peta memiliki entri nol yang ditentukan yang menghasilkan dapat diterimaRoot() kembali Benar dan otorisasi pesan penipuan.

Eksploitasi mengambil keuntungan dari kerentanan di atas dengan membuat pesan yang menipu Nomad bridge untuk mengirim token yang disimpan tanpa otorisasi yang tepat. Di bawah ini adalah sampel proses() muatan dalam . disampaikan oleh 0xb5c5โ€ฆ590e:

0x6265616d000000000000000000000000d3dfd3ede74e0dcebc1aa685e151332857efce2d000013d60065746800000000000000000000000088a69b4e698a4b090df6cf5bd7b2d47325ad30a3006574680000000000000000000000002260fac5e5542a773aa44fbcfedf7c193bc2c59903000000000000000000000000b5c55f76f90cc528b2609109ca14d8d84593590e00000000000000000000000000000000000000000000000000000002540be400e6e85ded018819209cfb948d074cb65de145734b5b0852e4a5db25cac2b8c39a

Pesan Replika memiliki struktur berikut:

pesan struktur {uint32 _OriginDomain,byte32 _pengirim,uint32_nonce,uint32 _domain tujuan,byte32 _penerima,byte memori _messageBody}
Analisis insiden Nomad Bridge PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.

Penerima tertentu _Badan Pesan berisi data transaksi yang akan diproses oleh _penerima. Penerima nomad menerima beberapa jenis transaksi dan pesan, tetapi kami akan fokus pada jenis transfer:

struct BridgeMessage {domain uint32;byte32 id;jenis uint8;penerima byte32;jumlah uint256;uint256 detailHash;}
Analisis insiden Nomad Bridge PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.

Decoding payload di atas menggambarkan bagaimana 0xb5c55f76f90cc528b2609109ca14d8d84593590e mampu mencuri 100 WBTC dengan mengirimkan payload yang dibuat khusus untuk melewati pemeriksaan pesan Nomad.

Untuk lebih memahami akar penyebab eksploitasi, kami mengembangkan PoC untuk mendemonstrasikannya menguras seluruh saldo token di jembatan hanya dalam beberapa transaksi:

Analisis insiden Nomad Bridge PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.

Saat menulis PoC, kami merasa penasaran bahwa penyerang memilih untuk mengekstrak dana dalam jumlah yang lebih kecil ketika mereka dapat menghabiskan seluruh jumlah dalam satu transaksi. Ini kemungkinan karena penyerang tidak membuat pesan jembatan dari awal, melainkan memutar ulang transaksi yang ada dengan alamat penerima yang ditambal.

Lebih dari $186 juta dalam token ERC-20 dicuri dari Nomad Bridge antara 1 Agustus 2022 pukul 21:32 UTC dan 2 Agustus 2022 pukul 05:49 UTC. Volume tertinggi dalam token curian terutama adalah USDC, diikuti oleh WETH, WBTC, dan CQT. Dalam satu jam pertama eksploitasi, hanya WBTC dan WETH yang dicuri, kemudian diikuti oleh beberapa ERC-20 lainnya.

Analisis insiden Nomad Bridge PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.

Sumber: Dasbor Dune

Dalam menganalisis data blockchain, kami melihat bahwa ada berbagai alamat yang membonceng dari pengeksploitasi asli dan menggunakan data input yang hampir identik dengan alamat penerima yang dimodifikasi untuk menyedot token yang sama dengan jumlah yang sama. Setelah kontrak WBTC sebagian besar terkuras, penyerang kemudian melanjutkan untuk menguras kontrak WETH, dan seterusnya.

Analisis lebih lanjut penyerang pertama di blok 15259101, kami menemukan bahwa dua alamat penyerang awal memanfaatkan kontrak pembantu untuk mengaburkan eksploit yang tepat. Sayangnya, dalam blok yang sama, beberapa indeks di alamat pengeksploitasi lain tampaknya telah berjuang untuk berinteraksi dengan kontrak pembantu dan memutuskan untuk melewatinya โ€” dan secara terbuka mengekspos data input eksploit dalam prosesnya. Alamat lain di blok yang sama dan terakhir kemudian mengikuti dan menggunakan muatan yang hampir identik untuk melakukan eksploitasi.

Setelah eksploitasi awal, dan karena kemudahan memicu eksploitasi, ratusan peniru bergabung dengan eksploitasi besar-besaran dari satu kontrak. Saat menganalisis muatan dari berbagai penyerang masa depan, kami menemukan bahwa tidak hanya penggunaan kembali token yang sama yang dijembatani dan jumlah yang sama, tetapi juga bahwa dana secara konsisten "dijembatani" dari Moonbeam seperti eksploit aslinya.

Serangan terjadi dalam tiga tahap: pengujian kerentanan sehari sebelum serangan, eksploitasi awal yang menargetkan WBTC yang disimpan di jembatan, dan tahap peniru yang melibatkan ratusan alamat unik. Mari selami masing-masing termasuk pengembalian sebagian aset curian.

Sepanjang 31 Juli 2022, bitliq[.]et ditemukan memicu kerentanan menggunakan sejumlah kecil WBTC dan token lainnya. Misalnya, pada 31 Juliโ€“2022 11:19:39 +UTC dia mengirim . ke proses() metode pada blockchain Ethereum dengan payload berikut:

0x617661780000000000000000000000005e5ea959686c73ed32c1bc71892f7f317d13a267000000390065746800000000000000000000000088a69b4e698a4b090df6cf5bd7b2d47325ad30a36176617800000000000000000000000050b7545627a5162f82a992c33b87adc75187b21803000000000000000000000000a8c83b1b30291a3a1a118058b5445cc83041cd9d000000000000000000000000000000000000000000000000000000000000f6088a36a47f8e81af64c44b079c42742190bbb402efb94e91c9515388af4c0669eb

Payload dapat didekodekan sebagai berikut:

  • Rantai asal: "avax"
  • Rantai tujuan: โ€œetโ€
  • Recipient: a8c83b1b30291a3a1a118058b5445cc83041cd9d (bitliq[.]eth)
  • Alamat Token: 0x50b7545627a5162F82A992c33b87aDc75187B218 (WBTC.e di Longsoran)
  • Jumlah: 0.00062984 BTC

Ini sesuai dengan 0.00062984 BTC . dikirim ke jembatan di rantai Longsor.

Payload dikirim menggunakan proses() metode yang bertentangan dengan yang lebih umum buktikanDanProses() dan tidak ada di peta pesan[] sebelum eksekusi di blok 15249928 :

$ cast call 0x5d94309e5a0090b165fa4181519701637b6daeba "messages(bytes32)" "bc0f99a3ac1593c73dbbfe9e8dd29c749d8e1791cbe7f3e13d9ffd3ddea57284" --rpc-url $MAINNET_RPC_URL --block 152499280x0000000000000000000000000000000000000000000000000000000000000000

Transaksi berhasil bahkan tanpa memberikan bukti yang diperlukan dengan memicu kerentanan di dapat diterimaRoot() metode dengan menyediakannya dengan nilai hash root 0x0 seperti yang diilustrasikan dalam debugger di bawah ini:

Analisis insiden Nomad Bridge PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.

Sumber: Tenderly Debugger

Pesan tidak ada di pesan[] penyimpanan dapat divalidasi menggunakan buktikanDanProses() metode; namun, karena alamatnya disebut proses() secara langsung mereka telah memicu kerentanan.

Yang cukup menarik, tampaknya bitliq[.]eth juga kemungkinan menguji kontrak jembatan ERC-20 satu jam sebelum eksploitasi dan menjembatani lebih dari 0.01 WBTC ke Moonbeam. [Tx]

Eksploitasi aktif dimulai pada 1 Agustus 2022 semua dalam blok yang sama 15259101 dan menghasilkan pencurian gabungan sebesar 400 BTC.

Analisis insiden Nomad Bridge PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.

Keempat transaksi menggunakan muatan exploit yang identik dengan pengecualian alamat penerima seperti yang dijelaskan dalam Kerentanan bagian di atas:

0x6265616d000000000000000000000000d3dfd3ede74e0dcebc1aa685e151332857efce2d000013d60065746800000000000000000000000088a69b4e698a4b090df6cf5bd7b2d47325ad30a3006574680000000000000000000000002260fac5e5542a773aa44fbcfedf7c193bc2c59903000000000000000000000000f57113d8f6ff35747737f026fe0b37d4d7f4277700000000000000000000000000000000000000000000000000000002540be400e6e85ded018819209cfb948d074cb65de145734b5b0852e4a5db25cac2b8c39a

Beberapa pengamatan di atas:

  • Tiga alamat pertama didanai oleh Tornado Cash dan telah aktif bertransaksi satu sama lain yang menunjukkan satu kelompok aktor.
  • Berbeda dengan dua transaksi eksploitasi yang pertama, 0xb5c5โ€ฆ590e dan bitliq[.]et mengirim muatan exploit langsung ke kontrak dan tanpa menggunakan flashbots untuk menyembunyikannya dari mempool publik.
  • bitliq[.]et memutar ulang transaksi eksploitasi sebelumnya di blok yang sama 15259101 sebagai 0xb5c5โ€ฆ590e menunjukkan baik pengetahuan sebelumnya tentang eksploitasi atau belajar tentang 0xb1feโ€ฆae28 dari mempool.
  • Keempat transaksi menggunakan muatan identik, masing-masing mencuri 100 WBTC sekaligus.

Secara total, 88% alamat yang melakukan eksploitasi diidentifikasi sebagai peniru dan bersama-sama mereka mencuri sekitar $88 juta token dari jembatan.

Mayoritas peniru menggunakan variasi eksploit asli dengan hanya memodifikasi token, jumlah, dan alamat penerima yang ditargetkan. Kami dapat mengklasifikasikan muatan unik dengan mengelompokkannya berdasarkan kontrak yang mereka panggil dan metode unik 4byte yang dipanggil seperti yang diilustrasikan di bawah ini:

Analisis insiden Nomad Bridge PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.

Berdasarkan analisis kami, lebih dari 88% alamat unik yang disebut kontrak rentan secara langsung menggunakan 928bc4b2 pengidentifikasi fungsi yang sesuai dengan proses (byte) metode yang digunakan dalam eksploit asli. Sisanya melakukan panggilan yang sama menggunakan kontrak perantara seperti 1cff79cd yang merupakan jalankan (alamat, byte) metode, batching beberapa proses() transaksi bersama, dan variasi kecil lainnya.

Setelah kompromi awal, pengeksploitasi asli harus bersaing dengan ratusan peniru:

Analisis insiden Nomad Bridge PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.

Sementara sebagian besar token berharga diklaim hanya oleh dua alamat pengeksploitasi asli, ratusan lainnya dapat mengklaim bagian dari kepemilikan bridge:

Analisis insiden Nomad Bridge PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.

Di bawah ini adalah bagan yang menunjukkan token yang dicuri dari waktu ke waktu dalam USD. Menjadi jelas bahwa para pengeksploitasi berjalan secara perlahan saat mereka menguras jembatan.

Analisis insiden Nomad Bridge PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.

Hingga saat ini, 12% yang dicuri dari kontrak Nomad Bridge telah dikembalikan โ€” termasuk pengembalian sebagian. Sebagian besar pengembalian terjadi beberapa jam setelah Nomad Bridge meminta untuk mengirim dana ke alamat pemulihan pada 3 Agustus 2022.[Tweet, Tx]

Di bawah ini adalah rincian dana yang dikembalikan, yang mencakup ETH dan berbagai token lainnya, beberapa di antaranya bahkan tidak pernah ada di jembatan:

Analisis insiden Nomad Bridge PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.

Dana terus dikirim kembali ke alamat pemulihan jembatan, meskipun lebih lambat dalam beberapa hari terakhir daripada saat alamat awalnya diposting:

Analisis insiden Nomad Bridge PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.

Mayoritas dana yang dikembalikan tampaknya dalam USDC, diikuti oleh DAI, CQT, WETH, dan WBTC. Ini sangat berbeda dari pemecahan token yang dieksploitasi. Alasannya adalah bahwa pengeksploitasi asli awal terutama menguras jembatan WBTC dan WETH. Tidak seperti pengeksploitasi tahap selanjutnya, pengeksploitasi ini memindahkan dana tanpa niat untuk mengembalikannya.

Menariknya, salah satu pengeksploitasi asli, bitliq[.]eth, telah mengembalikan hanya 100 ETH ke kontrak jembatan, tetapi telah mulai menguangkan sisa hasil mereka melalui renBTC dan membakarnya dengan imbalan BTC.

Mengkategorikan "penjahat"

Saat menilai pengeksploitasi Nomad Bridge, penyerang dikategorikan ke dalam ember berikut:

  • Topi hitam: Mereka yang tidak mengembalikan dana dan terus melanjutkannya.
  • Topi putih: Mereka yang sepenuhnya mengirim dana kembali ke alamat pemulihan
  • Harap dicatat bahwa sementara kami menggunakan istilah topi putih untuk tujuan penjelasan di sini, pengambilan awal dana tidak diizinkan dan bukan merupakan kegiatan yang akan kami dukung.
  • Topi abu-abu: Mereka yang mengirim sebagian dana kembali ke alamat pemulihan.
  • Unknown unknowns: Mereka yang belum memindahkan dana.

Sekitar 24% dana tetap tidak tersentuh. Kami menduga ini adalah penyerang yang menunggu panas atau degen cerdik yang menunggu hadiah dari Nomad. Namun, volume dana terbesar telah bergerak maju. Pada 5 Agustus, kami memperkirakan bahwa ~64% telah bergerak maju.

Untuk tetap mendapatkan informasi terbaru tentang dana yang dikembalikan, periksa dasbor ini.

Menyelidiki Blackhats

Dari dana-dana yang telah bergerak maju, kami telah mengidentifikasi beberapa cincin alamat besar yang semuanya merupakan dana yang bercampur. Secara khusus, satu kelompok alamat tampaknya telah mengumpulkan lebih dari $62 juta dalam volume. Menariknya, satu alamat dalam cluster ini adalah alamat pertama yang melakukan exploit [terima kasih hash].

Sampai saat ini, kami terutama melihat cincin ini mengikuti salah satu pola di bawah ini:

  • Aktivitas bot MEV
  • Aduk rata dan tunggu sampai panasnya
  • Menukar dana dan akhirnya mengembalikan sebagian dana ke alamat pemulihan
  • Menukar dana dan menginvestasikan proyek DeFi atau menguangkan di berbagai CEX
  • Memindahkan dana melalui Tornado Cash

Di bawah ini adalah contoh bagaimana beberapa alamat mulai memindahkan dana melalui Tornado Cash, yang pada 8 Agustus 2022, merupakan entitas yang dikenai sanksi.

Analisis insiden Nomad Bridge PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.

Waspadalah terhadap Penipuan:

Beberapa topi putih telah mengembalikan lebih dari 10% dana ke kontrak jembatan. Namun, ini bukan tanpa cegukan.

Awalnya, tim Nomad memposting di keduanya Twitter dan di blockchain alamat Ethereum untuk mengirim dana yang dieksploitasi ke

Analisis insiden Nomad Bridge PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.

Namun, scammers dengan cerdik mengikutinya dan mengatur berbagai domain ENS palsu untuk menyamar sebagai tim Nomad dan meminta mereka mengirim dana ke alamat cantik dengan karakter awal yang sama dengan alamat pemulihan yang sah.

Misalnya, di bawah ini adalah pesan yang dikirim oleh salah satu scammers. Perhatikan alamat pemulihan palsu, domain ENS, dan juga diskon 10%. Nomad sejak itu menawarkan bahwa topi putih mengklaim 10% dari hasil yang dieksploitasi. [Tx]

Analisis insiden Nomad Bridge PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.

Sementara sebagian besar kontrak diaudit secara ekstensif oleh berbagai auditor blockchain, kontrak mungkin masih mengandung kerentanan yang belum ditemukan. Meskipun Anda mungkin ingin memberikan likuiditas ke protokol tertentu atau menjembatani dana, berikut adalah beberapa tip yang perlu diingat:

  • Saat memasok likuiditas, jangan simpan semua dana Anda pada satu protokol atau disimpan di jembatan.
  • Pastikan untuk secara teratur meninjau dan mencabut persetujuan kontrak yang tidak Anda perlukan secara aktif.
  • Tetap up to date dengan umpan intelijen keamanan untuk melacak protokol yang telah Anda investasikan.

Coinbase berkomitmen untuk meningkatkan keamanan kami dan keamanan industri yang lebih luas, serta melindungi pengguna kami. Kami percaya bahwa eksploitasi seperti ini dapat dikurangi dan pada akhirnya dicegah. Selain membuat basis kode open source untuk ditinjau oleh publik, kami merekomendasikan audit protokol yang sering, mengimplementasikan program bug bounty, dan secara aktif bekerja dengan peneliti keamanan. Meskipun eksploitasi ini adalah pengalaman belajar yang sulit, kami percaya bahwa memahami bagaimana eksploitasi terjadi hanya dapat membantu lebih lanjut mematangkan industri muda kita.

Stempel Waktu:

Lebih dari Coinbase