Insiden ini diketahui setelah pada 30 Juli, sekitar 594 $BTC ditransfer dari sekitar 500 alamat Bitcoin dengan satu tanda tangan, yang nilainya saat itu sekitar 38 juta dolar AS. Ketika berita pertama kali muncul, Bitcoin.com News mencatat bahwa transfer tersebut terjadi dalam waktu sekitar 25 menit dan tampaknya ditujukan ke dompet dengan kerentanan teknis yang umum.
Analisis blockchain kemudian memungkinkan untuk memperkirakan kemungkinan skala pencurian. Para peneliti memperkirakan bahwa dalam periode sekitar 41 menit, 1.082 hingga 1.196 alamat mungkin terpengaruh. Selanjutnya, dasbor pemantauan khusus bernama Coldcard Sweep Watch memperkirakan total jumlahnya mencapai 1.128,4717 $BTC, yang pada saat Bitcoin diperdagangkan sekitar $63.044, bernilai sekitar 71,1 juta dolar AS.

Sebagian besar dana terkonsentrasi pada satu alamat yang menyimpan ratusan Bitcoin, dan sebagian besar dana tersebut relatif tidak bergerak. Detail penting yang menyatukan alamat-alamat yang terdampak adalah: benih pemulihan (seed) mereka dibuat pada dompet perangkat keras Coldcard yang diproduksi oleh perusahaan Kanada, Coinkite.
Frase benih (seed phrase) adalah daftar kata yang mengontrol akses ke dompet kripto. Siapa pun yang dapat memulihkan atau mendapatkan frasa benih ini, umumnya dapat mentransfer dana dari dompet tanpa memiliki perangkat fisik.
Coldcard Mendeteksi Kerentanan dalam Sistem Pembuatan Angka Acak
Coinkite mengeluarkan peringatan mendesak bahwa beberapa benih yang dihasilkan pada perangkat Coldcard mungkin rentan. Perangkat Mk3 dengan firmware versi 4.0.1, dirilis sekitar Maret 2021, dan versi yang lebih baru termasuk yang paling berisiko.
Analisis lebih lanjut memperluas kekhawatiran dengan memasukkan benih yang dibuat pada beberapa perangkat Mk4, Mk5, dan Q sebelum Coinkite merilis perbaikan firmware darurat. Dikatakan bahwa produk Tapsigner, Opendime, dan Satscard tidak terkena dampak kerentanan ini karena menggunakan perangkat lunak yang berbeda.
Kerentanan terkait dengan proses pembuatan data acak. Keamanan dompet bergantung pada kualitas keacakan yang tinggi agar benih pemulihannya tidak dapat ditebak. Menurut perkiraan peneliti, pada perangkat Mk3 yang paling serius terdampak, benih mungkin hanya mengandung sekitar 40 bit keacakan efektif, bukan 128 bit yang seharusnya.
Perbedaan ini sangat penting. Benih 128-bit yang dihasilkan dengan benar dianggap hampir mustahil untuk ditebak dengan brute force. Benih 40-bit menawarkan kemungkinan yang jauh lebih sedikit, memungkinkan penyerang dengan daya komputasi yang cukup untuk menguji benih potensial secara offline dan membandingkan alamat yang dihasilkan dengan rantai blok Bitcoin publik.
Beberapa perangkat yang lebih baru mungkin menyediakan sekitar 72 bit keacakan efektif karena perangkat keras yang aman menambahkan lapisan lain dari data yang tidak dapat diprediksi. Ini akan menyulitkan pemulihan benih, meskipun mereka tetap jauh lebih rentan daripada yang diasumsikan.
Satu Kesalahan Konfigurasi Bertahan Selama 5 Tahun
Masalah ini dimulai dengan kesalahan konfigurasi pada tahap build, terkait dengan dua fungsi perangkat lunak yang melakukan tugas serupa. Satu fungsi menggunakan generator angka acak sejati (true random number generator/TRNG) perangkat keras perangkat, sementara yang lain bergantung pada proses perangkat lunak yang lebih lemah, diwarisi dari MicroPython.
Coinkite bermaksud untuk menonaktifkan opsi MicroPython. Namun, pemeriksaan perangkat lunak hanya memverifikasi adanya definisi label konfigurasi, bukan apakah nilainya disetel ke nol. Akibatnya, firmware yang sudah jadi dapat secara diam-diam memilih fungsi yang lebih lemah.
Karena kedua fungsi memiliki format yang sama, perangkat lunak terus dikompilasi dan berjalan tanpa munculnya kesalahan yang jelas. Kesalahan ini menyusup ke kode selama migrasi perangkat lunak pada tahun 2021 dan bertahan dalam firmware publik selama lebih dari lima tahun.
Memperbarui perangkat saat ini tidak meningkatkan benih yang dihasilkan dengan perangkat lunak yang bermasalah. Pengguna yang terdampak harus membuat benih yang sama sekali baru menggunakan firmware yang telah diperbaiki atau perangkat aman lainnya, lalu mentransfer dana mereka ke alamat yang dikendalikan oleh benih baru tersebut.

Pengguna yang menambahkan setidaknya 50 lemparan dadu independen saat membuat benih mereka mungkin telah menyediakan tingkat keacakan yang cukup untuk menghindari kerentanan ini. Kata sandi yang kuat sesuai standar BIP-39 juga dapat mempersulit pemulihan, dan dompet yang memerlukan tanda tangan dari beberapa perangkat independen dapat mencegah transfer dana dari satu benih yang dikompromikan.
Coinkite Menunjuk ke AI, Tetapi Bukti Masih Belum Ada
CEO Coinkite, Rodolfo Novak, secara publik meminta maaf dan menyatakan perusahaan mengambil tanggung jawab penuh atas kegagalan firmware tersebut. Dia mengatakan tim sedang mengerjakan perangkat lunak yang diperbaiki, laporan teknis, dan dukungan untuk pengguna yang terdampak.
Coinkite dan Novak juga mengajukan teori yang mencolok tentang bagaimana kerentanan ditemukan. Karena firmware perusahaan telah tersedia untuk publik selama bertahun-tahun, perusahaan menyatakan bahwa mereka percaya seseorang mungkin telah menggunakan AI untuk menganalisis versi kode lama dan menemukan jalur pembuatan angka acak yang rentan.
"Kepada semua pengembang lain: kami percaya ini adalah realitas keras dari paradigma AI baru. Pemeriksaan kode dengan AI sekarang memungkinkan menemukan bug tersembunyi dengan kecepatan melebihi bahkan para ahli paling berpengalaman di industri," tulis Novak dalam postingan permintaan maafnya di X. "Jika firmware Anda bersifat open-source atau pernah tersedia untuk publik, anggap sudah dipelajari baik oleh penyerang maupun profesional keamanan."
Sistem pengkodean berbasis AI modern mampu memproses repositori perangkat lunak besar dan mengidentifikasi hubungan yang mencurigakan antara pengaturan konfigurasi, fungsi, dan asumsi keamanan. Penyerang dapat meminta sistem seperti itu untuk secara khusus mencari generator angka acak yang lemah, fungsi cadangan, atau kesalahan yang memengaruhi kunci kriptografi.

Kemudian, peneliti independen melaporkan menggunakan model AI untuk mendeteksi atau menjelaskan masalah setelah masalah keacakan yang mendasarinya diketahui. Ini menunjukkan betapa mudahnya analisis kode dengan AI telah menjadi, tetapi tidak membuktikan bahwa penyerang awal menggunakan AI.

Perusahaan Coinkite mengakui bahwa pemeriksaan mereka sendiri menggunakan model AI terkemuka gagal mengidentifikasi kerentanan sebelum pencurian terjadi. Hasil ini menunjukkan bahwa sistem AI tidak selalu secara otomatis mendeteksi semua cacat serius. Efektivitasnya dapat bergantung pada instruksi yang diberikan, jumlah kode yang diberikan, dan apakah orang yang melakukan pemeriksaan memahami tanda-tanda peringatan.
Para Kritikus Menegaskan Kesalahan Manusia Terjadi Terlebih Dahulu
Beberapa ahli keamanan berpendapat bahwa fokus berlebihan pada kecerdasan buatan (AI) berisiko mengalihkan perhatian dari kesalahan rekayasa dasar. Banyak yang berpendapat bahwa kesalahan dalam pengaturan adalah jenis bug perangkat lunak yang dikenal, dan pemeriksaan kode tradisional, prosedur pengujian, atau audit yang berfokus pada pembuatan benih seharusnya dapat mendeteksinya beberapa tahun lalu.

Pandangan yang bertentangan tidak harus tidak sesuai. Kesalahan manusia menciptakan kerentanan dan membiarkannya bertahan, sementara AI mungkin telah menurunkan biaya untuk menemukan, memahami, atau mengeksploitasinya. Para pembela perlu mengidentifikasi semua titik lemah yang berbahaya, sedangkan seorang penyerang hanya perlu menemukan satu saja.
Insiden ini juga mempertanyakan asumsi tentang keamanan kode sumber terbuka. Kode terbuka memungkinkan ahli independen memeriksa perangkat lunak, tetapi keterbukaan itu sendiri tidak menjamin bahwa seseorang akan menganalisis bagian yang tepat, mendeteksi cacat yang hampir tidak terlihat, dan melaporkannya sebelum penyerang mengambil tindakan.
Bagi pengguna Coldcard, prioritas utama adalah menentukan kapan dan bagaimana benih mereka dihasilkan. Siapa pun dengan benih yang terdampak harus memeriksa instruksi melalui saluran resmi Coinkite, menginstal firmware yang telah diperbaiki, menghasilkan benih baru, dan dengan hati-hati mentransfer dana sambil mewaspadai upaya phishing dan pesan palsu dari dukungan.
Dalam jangka panjang, fokus utama akan pada berapa banyak Bitcoin yang dicuri, apakah penyelidik dapat mengidentifikasi pelaku, dan apakah AI memainkan peran kunci dalam menemukan kerentanan. Produsen dompet perangkat keras juga akan menghadapi tekanan untuk meningkatkan pengujian entropi, melakukan audit konfigurasi build, dan terus memeriksa kode lama baik dengan ahli manusia maupun alat AI yang mensimulasikan serangan.
end-content






