Analisis Kejadian Serangan Re-entrancy pada OrionProtocol
Pada 2 Februari 2023 sore, OrionProtocol di Ethereum dan Binance Smart Chain mengalami serangan reentrancy akibat kerentanan kontrak, dengan total kerugian sekitar 2,9 juta dolar AS. Penyerang memanfaatkan fungsi callback dari kontrak token yang mereka buat, berhasil melewati mekanisme keamanan bursa.
Proses Serangan
Penyerang pertama-tama membuat kontrak token khusus.
Meminjam dana melalui bursa terdesentralisasi tertentu dan menggunakan fungsi pertukaran token OrionProtocol.
Selama proses penukaran, kontrak token penyerang memicu callback, yang mengakibatkan pemanggilan fungsi deposit secara berulang, menyebabkan sistem secara keliru menambahkan jumlah deposit.
Terakhir, penyerang menarik dana berlebih dan menyelesaikan serangan.
Analisis Kerentanan
Masalah utama terletak pada fungsi doSwapThroughOrionPool dari OrionProtocol. Fungsi ini memperbarui saldo setelah melakukan transfer token, tetapi tidak mempertimbangkan risiko reentrancy yang mungkin ada. Penyerang dengan membuat token palsu yang memiliki fungsi callback dapat memanggil fungsi depositAsset berulang kali selama proses transfer, sehingga mengakibatkan perhitungan saldo yang salah.
Arah Aliran Dana
Dari 1651 ETH yang diperoleh dari serangan, 657,5 ETH masih tersisa di dompet penyerang, sementara sisanya telah dipindahkan melalui layanan pencampuran. Sumber dana awal berasal dari dompet panas salah satu platform perdagangan besar.
Saran Keamanan
Tulis kontrak pintar mengikuti pola "Cek-Dampak-Interaksi" (Checks-Effects-Interactions).
Untuk fungsi yang melibatkan pertukaran token, perlu mempertimbangkan secara menyeluruh berbagai jenis token dan potensi risiko keamanan yang mungkin ditimbulkan oleh jalur pertukaran.
Menerapkan mekanisme pembaruan saldo yang lebih ketat untuk mencegah serangan reentrancy.
Melakukan audit keamanan pihak ketiga secara berkala untuk mendeteksi dan memperbaiki kerentanan yang mungkin ada.
Kejadian kali ini mengingatkan kita bahwa keamanan kontrak pintar sangat penting dalam ekosistem DeFi yang kompleks. Pihak proyek perlu terus memperbaiki langkah-langkah keamanan untuk menghadapi metode serangan yang semakin kompleks.
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
OrionProtocol mengalami serangan reentrancy dengan kerugian 2,9 juta dolar AS. Keamanan smart contract kembali menjadi peringatan.
Analisis Kejadian Serangan Re-entrancy pada OrionProtocol
Pada 2 Februari 2023 sore, OrionProtocol di Ethereum dan Binance Smart Chain mengalami serangan reentrancy akibat kerentanan kontrak, dengan total kerugian sekitar 2,9 juta dolar AS. Penyerang memanfaatkan fungsi callback dari kontrak token yang mereka buat, berhasil melewati mekanisme keamanan bursa.
Proses Serangan
Penyerang pertama-tama membuat kontrak token khusus.
Meminjam dana melalui bursa terdesentralisasi tertentu dan menggunakan fungsi pertukaran token OrionProtocol.
Selama proses penukaran, kontrak token penyerang memicu callback, yang mengakibatkan pemanggilan fungsi deposit secara berulang, menyebabkan sistem secara keliru menambahkan jumlah deposit.
Terakhir, penyerang menarik dana berlebih dan menyelesaikan serangan.
Analisis Kerentanan
Masalah utama terletak pada fungsi doSwapThroughOrionPool dari OrionProtocol. Fungsi ini memperbarui saldo setelah melakukan transfer token, tetapi tidak mempertimbangkan risiko reentrancy yang mungkin ada. Penyerang dengan membuat token palsu yang memiliki fungsi callback dapat memanggil fungsi depositAsset berulang kali selama proses transfer, sehingga mengakibatkan perhitungan saldo yang salah.
Arah Aliran Dana
Dari 1651 ETH yang diperoleh dari serangan, 657,5 ETH masih tersisa di dompet penyerang, sementara sisanya telah dipindahkan melalui layanan pencampuran. Sumber dana awal berasal dari dompet panas salah satu platform perdagangan besar.
Saran Keamanan
Tulis kontrak pintar mengikuti pola "Cek-Dampak-Interaksi" (Checks-Effects-Interactions).
Untuk fungsi yang melibatkan pertukaran token, perlu mempertimbangkan secara menyeluruh berbagai jenis token dan potensi risiko keamanan yang mungkin ditimbulkan oleh jalur pertukaran.
Menerapkan mekanisme pembaruan saldo yang lebih ketat untuk mencegah serangan reentrancy.
Melakukan audit keamanan pihak ketiga secara berkala untuk mendeteksi dan memperbaiki kerentanan yang mungkin ada.
Kejadian kali ini mengingatkan kita bahwa keamanan kontrak pintar sangat penting dalam ekosistem DeFi yang kompleks. Pihak proyek perlu terus memperbaiki langkah-langkah keamanan untuk menghadapi metode serangan yang semakin kompleks.