Analisis Lengkap Kerentanan Keamanan DeFi: Panduan untuk Mencegah Pinjaman Flash, Manipulasi Harga, dan Serangan Reentrancy

robot
Pembuatan abstrak sedang berlangsung

Keamanan Umum dalam Keuangan Desentralisasi dan Langkah Pencegahan

Baru-baru ini, seorang ahli keamanan berbagi pelajaran keamanan DeFi untuk anggota komunitas, mengulas peristiwa keamanan besar yang dialami industri Web3 selama lebih dari setahun terakhir, membahas alasan terjadinya peristiwa tersebut serta cara menghindarinya, merangkum kerentanan keamanan umum pada kontrak pintar dan langkah-langkah pencegahan, serta memberikan beberapa saran keamanan untuk pengembang proyek dan pengguna.

Jenis-jenis kerentanan DeFi yang umum meliputi pinjaman kilat, manipulasi harga, masalah hak akses fungsi, panggilan eksternal sembarangan, masalah fungsi fallback, kerentanan logika bisnis, kebocoran kunci pribadi, dan serangan reentrancy. Berikut ini akan dibahas secara khusus tentang pinjaman kilat, manipulasi harga, serta serangan reentrancy.

Pinjaman Kilat

Pinjaman kilat meskipun merupakan inovasi dalam Keuangan Desentralisasi, tetapi juga sering dimanfaatkan oleh peretas:

  • Penyerang meminjam sejumlah besar dana melalui pinjaman kilat, memanipulasi harga atau menyerang logika bisnis
  • Pengembang perlu mempertimbangkan apakah fungsi kontrak akan mengalami anomali akibat dana besar, atau dieksploitasi untuk mendapatkan imbalan yang tidak semestinya.
  • Beberapa proyek tidak mempertimbangkan dampak pinjaman kilat saat merancang fungsi, yang mengakibatkan pencurian dana.

Selama dua tahun terakhir, banyak proyek DeFi mengalami masalah akibat pinjaman kilat. Misalnya, beberapa proyek memberikan hadiah berdasarkan jumlah kepemilikan, tetapi disalahgunakan oleh penyerang yang menggunakan pinjaman kilat untuk membeli sejumlah besar token dan mendapatkan sebagian besar hadiah. Ada juga proyek yang menghitung harga melalui Token, yang dapat dipengaruhi oleh pinjaman kilat. Pihak proyek harus lebih waspada terhadap hal ini.

Manipulasi Harga

Masalah manipulasi harga terkait erat dengan pinjaman kilat, yang terutama terdiri dari dua jenis:

  1. Menghitung harga menggunakan data pihak ketiga, tetapi penggunaan yang tidak tepat atau kurangnya pemeriksaan mengakibatkan harga dimanipulasi secara jahat.
  2. Menggunakan saldo Token dari alamat tertentu sebagai variabel perhitungan, dan saldo ini dapat ditambah atau dikurangi sementara.

Serangan Reentrancy

Risiko utama dari memanggil kontrak eksternal adalah mereka dapat mengambil alih alur kontrol dan membuat perubahan yang tidak terduga pada data.

Misalnya, dalam fungsi penarikan, jika saldo pengguna baru dihapus di akhir fungsi, penyerang dapat memanggil fungsi tersebut lagi setelah dana ditransfer, melakukan penarikan berulang kali.

Bentuk serangan reentrancy beragam, dapat melibatkan beberapa fungsi atau kontrak. Untuk mencegah reentrancy, perlu diperhatikan:

  1. Tidak hanya mencegah reentrancy dari fungsi tunggal
  2. Mengkode sesuai dengan pola Checks-Effects-Interactions
  3. Gunakan modifier reentrancy yang telah terverifikasi

Para ahli keamanan menyarankan untuk menggunakan praktik keamanan terbaik yang sudah ada, daripada menciptakan sesuatu yang baru. Karena solusi yang dibangun sendiri kurang teruji, kemungkinan terjadinya masalah jauh lebih tinggi dibandingkan dengan solusi yang sudah matang.

Saran Keamanan Proyek

  1. Pengembangan kontrak mengikuti praktik keamanan terbaik
  2. Kontrak dapat ditingkatkan dan dijeda, agar dapat merespons serangan dengan cepat.
  3. Menggunakan kunci waktu, untuk menyisihkan waktu untuk menemukan dan menangani risiko
  4. Meningkatkan investasi keamanan, membangun sistem keamanan yang lengkap
  5. Meningkatkan kesadaran keamanan semua karyawan
  6. Mencegah kejahatan internal, sambil meningkatkan efisiensi dan memperkuat manajemen risiko.
  7. Hati-hati dalam melibatkan pihak ketiga, anggap saja bahwa semua pihak hulu dan hilir tidak aman.

Bagaimana Pengguna Menilai Keamanan Kontrak Pintar

  1. Apakah kontrak bersifat open source
  2. Apakah Pemilik menggunakan multi-tanda tangan terdesentralisasi?
  3. Periksa situasi perdagangan yang ada pada kontrak
  4. Apakah kontrak dapat ditingkatkan, apakah ada kunci waktu
  5. Apakah sudah diaudit oleh beberapa lembaga, apakah hak akses Owner terlalu besar
  6. Perhatikan keandalan oracle

Singkatnya, di bidang Keuangan Desentralisasi, pihak proyek dan pengguna harus tetap waspada, mengambil berbagai langkah keamanan untuk secara efektif mengurangi risiko.

Cobo Keuangan Desentralisasi 安全课(下):Keuangan Desentralisasi 常⻅安全漏洞及预防

DEFI2.61%
Lihat Asli
Halaman ini mungkin berisi konten pihak ketiga, yang disediakan untuk tujuan informasi saja (bukan pernyataan/jaminan) dan tidak boleh dianggap sebagai dukungan terhadap pandangannya oleh Gate, atau sebagai nasihat keuangan atau profesional. Lihat Penafian untuk detailnya.
  • Hadiah
  • 3
  • Bagikan
Komentar
0/400
MidnightSnapHuntervip
· 07-25 08:52
Saya sudah banyak melihat celah seperti ini...
Lihat AsliBalas0
GhostWalletSleuthvip
· 07-25 08:51
Kekurangan selalu menjadi permainan kucing dan tikus antara tim proyek dan Hacker.
Lihat AsliBalas0
FlatlineTradervip
· 07-25 08:45
Proyek lama semua pernah mengalami reentrancy.
Lihat AsliBalas0
Perdagangkan Kripto Di Mana Saja Kapan Saja
qrCode
Pindai untuk mengunduh aplikasi Gate
Komunitas
Bahasa Indonesia
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)