Smart Contract Hacking Terbaru Reentrancy Attack dengan Delegated Call - Rian010/Journal GitHub Wiki
Smart Contract Hacking Terbaru: Reentrancy Attack dengan Delegated Call
Deskripsi:
Serangan ini memanfaatkan kerentanan dalam smart contract yang menggunakan fungsi delegatecall. Penyerang dapat mengeksploitasi kerentanan ini untuk memicu reentrancy attack dan menguras dana dari smart contract.
Cara Kerja:
- Penyerang berinteraksi dengan smart contract dan memicu fungsi yang menggunakan delegatecall.
- Di dalam fungsi delegatecall, terdapat kode yang melakukan transfer dana ke alamat penyerang.
- Penyerang memodifikasi kode di dalam delegatecall sebelum transfer dana dilakukan.
- Kode yang dimodifikasi memungkinkan penyerang untuk melakukan reentrancy attack dan menguras dana dari smart contract.
Contoh:
Misalkan terdapat smart contract yang memiliki fungsi withdraw
yang menggunakan delegatecall untuk mentransfer dana ke alamat pengguna.
function withdraw(uint256 amount) public {
address payable recipient = payable(msg.sender);
recipient.transfer(amount);
}
Penyerang dapat memodifikasi kode di dalam delegatecall untuk melakukan reentrancy attack:
function withdraw(uint256 amount) public {
address payable recipient = payable(msg.sender);
// Kode malicious ditambahkan
recipient.transfer(amount);
recipient.transfer(amount); // Dana ditransfer dua kali
}
Manfaat bagi Penyerang:
- Penyerang dapat menguras dana dari smart contract.
- Serangan ini dapat dilakukan tanpa sepengetahuan korban.
- Serangan ini dapat dilakukan dengan mudah dan murah.
Pencegahan:
- Gunakan library yang teruji dan aman untuk delegatecall.
- Lakukan audit code smart contract untuk memastikan tidak ada kerentanan.
- Gunakan mekanisme pengamanan seperti reentrancy guard.
Catatan:
- Serangan ini hanyalah contoh dan masih banyak jenis smart contract hacking lainnya yang dapat ditemukan.
- Penting untuk selalu berhati-hati saat berinteraksi dengan smart contract dan selalu melakukan riset terlebih dahulu.
- Pastikan untuk menggunakan smart contract yang reputable dan teruji keamanannya.
Daftar Lengkap Smart Contract Hacking Terbaru:
- Reentrancy Attack dengan Delegated Call: Serangan ini dijelaskan di atas.
- Uninitialized Variable Attack: Serangan ini memanfaatkan variabel yang tidak diinisialisasi dalam smart contract.
- Integer Overflow Attack: Serangan ini memanfaatkan overflow integer dalam smart contract.
- Front-Running Attack: Serangan ini memanfaatkan informasi transaksi yang bocor untuk mendapatkan keuntungan.
- Denial-of-Service Attack: Serangan ini bertujuan untuk membuat smart contract tidak dapat diakses.
Contoh-contoh Smart Contract Hacking Terbaru:
- Pada bulan Februari 2023, terdapat serangan reentrancy attack pada platform DeFi CREAM Finance yang mengakibatkan kerugian senilai $34 juta.
- Pada bulan Maret 2023, terdapat serangan integer overflow attack pada platform DeFi Rari Capital yang mengakibatkan kerugian senilai $11 juta.
- Pada bulan April 2023, terdapat serangan front-running attack pada platform DEX Uniswap v3 yang mengakibatkan kerugian senilai $5 juta.
Manfaat Smart Contract Hacking bagi Penyerang:
- Keuntungan finansial: Penyerang dapat menguras dana dari smart contract.
- Reputasi: Penyerang dapat mendapatkan reputasi sebagai hacker yang handal.
- Ketenaran: Serangan yang berhasil dapat menarik perhatian media dan komunitas blockchain.
Kesimpulan:
Smart contract hacking adalah sebuah ancaman serius yang dapat mengakibatkan kerugian finansial yang besar. Penting untuk selalu berhati-hati saat berinteraksi dengan smart contract dan selalu melakukan riset terlebih dahulu. Pastikan untuk menggunakan smart contract yang reputable dan teruji keamanannya.