Daftar isi
Cara kerja serangan gerhana
Buntut dari serangan gerhana
"Pembelanjaan ganda" tanpa konfirmasi
"Pembelanjaan ganda" yang memerlukan N kali konfirmasi
Mengurangi persaingan antar penambang
Memperlambat dampak serangan gerhana matahari
Meringkaskan
Serangan gerhana adalah serangan dasar yang relatif sederhana yang memungkinkan penyerang mengganggu node di jaringan. Seperti namanya, serangan ini dapat mencegah node yang diserang di jaringan peer-to-peer memperoleh informasi yang efektif, sehingga menyebabkan gangguan jaringan atau bersiap menghadapi serangan yang lebih kompleks.
Di permukaan, Serangan Eclipse mirip dengan Serangan Sybil. Meskipun keduanya memiliki beberapa kesamaan (penyerang mengganggu jaringan dengan menyerang node), tujuan serangan utamanya berbeda. Serangan Eclipse menargetkan satu node (untuk alasan yang dijelaskan di bawah), sedangkan serangan Sybil menargetkan seluruh jaringan dan bertujuan untuk merusak reputasi protokol jaringan.
Konsep ini dibahas panjang lebar dalam makalah tahun 2015 “Eclipse Attacks on the Bitcoin Peer-to-Peer Network,” di mana para peneliti dari Boston University dan Hebrew University melaporkan eksperimen mereka dalam melakukan serangan gerhana, dan tindakan pencegahan untuk memeranginya.
Cara kerja serangan gerhana
Penambang Bitcoin memerlukan peralatan khusus untuk menghasilkan dan memverifikasi blok baru, namun node non-penambangan (atau penuh) memerlukan daya komputasi yang sangat sedikit untuk beroperasi. Dengan cara ini, siapa pun dapat mengoperasikan node dengan peralatan murah, yang juga berkontribusi terhadap desentralisasi Bitcoin. Program perangkat lunak memelihara database transaksi yang disinkronkan dengan rekan-rekan agar tetap sinkron dengan jaringan.
Faktor pembatas untuk menghubungkan node dalam jumlah besar adalah bandwidth. Oleh karena itu, meskipun terdapat banyak perangkat yang dapat menjalankan program, terdapat batasan jumlah koneksi yang diatur dalam jaringan Bitcoin (maksimal 125 koneksi), dan perangkat biasa tidak dapat langsung terhubung dengan perangkat lain.
Dalam serangan gerhana, penyerang memastikan bahwa semua koneksi ke target dibuat pada node yang dikendalikan oleh penyerang. Penyerang pertama-tama akan mengirimkan banjir dari alamat IP mereka sendiri ke alamat target, dan korban dapat terhubung ke alamat IP penyerang ketika program dimulai ulang. Anda dapat memaksa memulai ulang (yaitu melakukan serangan DDoS pada target), atau hanya menunggu hingga program dimulai ulang secara otomatis.
Jika hal ini terjadi, korban yang tidak menaruh curiga akan bergantung pada node jahat, dan penyerang akan memberikan data palsu yang tidak dapat mereka peroleh dari jaringan sebenarnya.
Akibat Serangan Gerhana Matahari
Penyerang memiliki insentif untuk melakukan serangan tersebut jika mereka dapat melepaskan node jaringan dari jaringan dengan menghabiskan sumber dayanya. Jika sebuah node diisolasi, penyerang dapat melakukan beberapa serangan berturut-turut.
"Pembelanjaan ganda" tanpa konfirmasi
Jika node independen menerima transaksi yang belum dikonfirmasi, maka risiko "pengeluaran ganda" terjadi. Jika transaksi yang terjadi mungkin telah disiarkan sebelum memasuki blok (menyerahkan ke blockchain), maka pengirim dapat dengan mudah melakukan transaksi baru di tempat lain dan mengeluarkan jumlah yang sama seperti transaksi sebelumnya. Jika biaya transaksi yang baru dihasilkan lebih tinggi, penambang akan memprioritaskan transaksi tersebut dan menganggapnya sebagai transaksi pertama, sehingga menyebabkan transaksi pertama menjadi tidak valid.
Beberapa pedagang dan individu menerima 0 transaksi konfirmasi ini. Misalnya Bob, seorang pengusaha yang menjual mobil kelas atas. Dia tidak tahu bahwa Alice telah melancarkan serangan gerhana pada simpulnya, dan dia tidak memiliki kecurigaan apapun setelah melihat pesanannya untuk sebuah mobil sport mewah. Alice membuat transaksi, dan Bob menyiarkannya ke jaringan. Setelah melihat pesan pembayaran akan segera dikonfirmasi, dia merasa sangat puas dan menyerahkan kunci mobil kepada Alice yang melaju dengan cepat.
Faktanya, transaksi tersebut tidak disiarkan ke jaringan. Bob hanya meneruskan transaksi tersebut ke node jahat Alice, dan node jahat yang dikendalikan oleh Alice tidak meneruskan transaksi tersebut ke node sebenarnya. Oleh karena itu, transaksi tersebut akan dianggap tidak valid. Saat ini, Alice membayar jumlah yang sama di jaringan (nyata), baik untuk dirinya sendiri atau kepada orang lain. Sekalipun transaksi awal dengan Bob akhirnya terlihat di jaringan sebenarnya, transaksi tersebut tidak dapat diverifikasi karena dana di rekening Alice telah habis.
"Pembelanjaan ganda" yang memerlukan N kali konfirmasi
"Pembelanjaan ganda" yang memerlukan N konfirmasi serupa dengan "belanja ganda" yang tidak memerlukan konfirmasi, namun melibatkan lebih banyak pekerjaan persiapan. Banyak pedagang lebih memilih menunggu sejumlah konfirmasi tertentu sebelum pembayaran dianggap sah. Untuk mengatasi masalah ini, penyerang harus membuat node penambang dan pedagang terkena serangan gerhana. Jika penyerang membuat pesanan dengan pedagang, mereka menyiarkan transaksi tersebut ke penambang. Pedagang dapat melihat transaksi yang dikonfirmasi di jaringan blockchain, namun karena jaringan tempat penambang dan pedagang berada terisolasi, blockchain tidak disaksikan oleh sebagian besar node nyata.
Penyerang mengirimkan informasi jaringan blockchain palsu kepada pedagang, dan setelah pedagang melihat bahwa transaksi telah dikonfirmasi, dia menyerahkan barangnya. Ketika node yang mengalami serangan gerhana bergabung kembali dengan jaringan sebenarnya, jaringan blockchain sebenarnya akan menganggap node ini tidak valid dan mengisolasi node tersebut (ini mirip dengan serangan 51%).
Mengurangi persaingan antar penambang
Node yang terkena serangan gerhana akan terus beroperasi dan tidak akan terpengaruh karena diisolasi dari jaringan. Penambang akan terus memverifikasi blok sesuai aturan yang ditentukan oleh protokol, namun blok tambahan akan dibuang dalam proses melewati node jaringan nyata.
Secara teori, serangan gerhana besar-besaran terhadap sebagian besar penambang dapat digunakan untuk memfasilitasi serangan 51%. Saat ini, biaya yang harus dikeluarkan bahkan bagi penyerang paling cerdas sekalipun untuk mengambil alih sebagian besar daya komputasi Bitcoin (sekitar 80TH/dtk) terlalu tinggi, dan penyerang setidaknya perlu mencoba dengan lebih dari 40TH/dtk.
Dengan asumsi bahwa daya komputasi ini didistribusikan kepada 10 peserta (setiap peserta memiliki sekitar 8TH/s), penyerang dapat mengurangi kebutuhan serangan sebesar 51% dengan mengisolasi peserta tersebut dari jaringan. Jika 5 node mengalami serangan gerhana, penyerang dapat mengurangi daya komputasi sebesar 40TH/s untuk menemukan blok berikutnya, dan penyerang sekarang hanya perlu meningkatkan daya komputasi sebesar 20TH/s untuk mencapai tujuan menyerang node tersebut. .kontrol.
Aktivitas destruktif lainnya yang dapat dicapai dengan melakukan serangan gerhana pada suatu target termasuk memanipulasi node untuk melakukan aktivitas penambangan ilegal, atau mengeksploitasi persaingan daya komputasi antar penambang untuk mendapatkan blok berikutnya.
Memperlambat dampak serangan gerhana matahari
Dengan alamat IP yang cukup, penyerang dapat melakukan serangan gerhana pada node mana pun. Cara paling langsung untuk mencegah hal ini terjadi adalah dengan memblokir akses tidak sah oleh node dan hanya membuat koneksi keluar ke node tertentu (seperti IP yang telah masuk daftar putih oleh node lain di jaringan peer-to-peer). Namun, seperti yang ditunjukkan dalam makalah penelitian, hal ini bukanlah solusi yang dapat diterapkan dalam skala besar, dan jika semua peserta mengambil langkah-langkah ini, node baru tidak akan dapat bergabung dalam jaringan.
Penulis telah mengusulkan beberapa penyesuaian pada program Bitcoin, dan beberapa di antaranya diintegrasikan ke dalam program Bitcoin setelah buku putih dirilis. Dengan membuat perubahan kecil pada kode, seperti memilih koneksi baru secara acak dan meningkatkan penyimpanan alamat, langkah-langkah ini membuat serangan Eclipse semakin memakan biaya.
Meringkaskan
Serangan Eclipse dilakukan pada jaringan peer-to-peer. Sebagai penyebaran serangan yang berdiri sendiri, serangan tersebut dapat mengganggu. Tujuan sebenarnya dari melakukan serangan gerhana sebenarnya adalah untuk menerapkan serangan lain yang dapat memiliki dampak lebih besar, atau untuk memberikan keuntungan kepada penyerang dalam penambangan.
Secara umum, serangan gerhana belum menimbulkan dampak yang serius, dan meskipun perlindungan telah diterapkan di jaringan blockchain, ancaman tersebut masih tetap ada. Serangan Eclipse, seperti kebanyakan serangan yang dihadapi oleh Bitcoin dan sebagian besar mata uang kripto lainnya, pertahanan terbaiknya adalah dengan membuatnya tidak menguntungkan bagi penyerang jahat.

