Tahukah Anda bahwa siapa pun dapat melakukan transaksi dari dompet Anda hanya dengan mengetahui alamat dompet dan tanpa memerlukan kunci atau frasa rahasia dompet?

Ada jenis serangan yang dikenal sebagai Zero Transfer Phishing yang dianggap sebagai salah satu serangan phishing terburuk di bidang kripto karena kemudahan melakukannya oleh penyerang, dan kemudahan korban untuk jatuh ke dalamnya.

Serangan ini saat ini menargetkan jutaan dompet kripto di jaringan berbeda. Bagaimana serangan ini dilakukan? Bagaimana Anda melindungi diri Anda dari hal itu?

Pertama, ada fungsi di Ethereum Virtual Machine (EVM) bernama transferFrom(), fungsi ini memungkinkan transaksi dari dompet Anda ke dompet lain melalui pihak ketiga.

Ini berarti pihak ketiga, seperti kontrak pintar, dapat menarik dana dari dompet Anda melalui fungsi ini. Asalkan persetujuan sebelumnya diperoleh dari dompet.

Ada banyak kegunaan untuk fungsi ini, termasuk transaksi pertukaran mata uang “Tukar” di seluruh platform terdesentralisasi, karena memungkinkan kontrak pintar untuk menarik saldo mata uang X dari dompet Anda; Sebagai imbalan untuk menerima saldo mata uang Y.

Fungsi ini digunakan pada jaringan lain seperti BNB Chain, Tron, dan lainnya.

Tapi diwaktu yang sama; Fungsi ini memungkinkan siapa saja melakukan transaksi dari dompet orang lain tanpa izinnya jika jumlah transaksinya 0.

Apa gunanya jika transfer tidak ada gunanya?

Tujuannya adalah meracuni riwayat transfer dompet untuk mengelabui pemilik dompet agar melakukan transfer ke dompet penyerang. Hal ini disebut dengan serangan Address Poisoning.

Bagaimana serangan ini bisa terjadi?

Pertama, penyerang mencari alamat aktif dengan mencari melalui blockchain, dan dompet yang aktif dalam transfer mata uang stabil sering kali menjadi sasaran.

Kedua, penyerang membuat alamat dompet yang awal dan akhirnya sama dengan alamat korban yang menjadi sasaran.

Bagaimana hal ini terjadi jika alamat dompet dibuat secara acak?

Faktanya, siapa pun dapat membuat alamat dompet dalam kondisi tertentu. Dalam contoh ini, syaratnya adalah alamat dompet diawali dan diakhiri dengan huruf dan angka yang sama dengan alamat dompet korban yang dituju, dan alamat ini disebut Vanity Address.

Ketiga, penyerang mengeksploitasi fungsi transferFrom() untuk melakukan transaksi bernilai 0 ke atau dari dompet korban. Fungsi ini memanggil fungsi lain yang disebut transfer() yang bertanggung jawab untuk melakukan transfer, namun hal terpenting yang dilakukannya adalah mencatat transaksi dalam riwayat transaksi dompet.

Penyerang mulai memantau alamat untuk menunggu transfer sebelum melakukan serangan, atau menyerang secara acak.

Contoh:

Dalam transaksi ini, korban mentransfer 10 USDC pertama dari dompetnya ke alamat yang dimulai dengan 0x74C dan diakhiri dengan 0E1cA sebagai tes untuk memastikan tidak ada masalah sebelum melakukan transfer yang lebih besar.

Dua menit kemudian, penyerang melakukan serangannya dengan memanfaatkan fungsi transferFrom() untuk melakukan 0 transfer dari dompet korban untuk meracuni riwayat transfer dan memasukkan alamat dompet palsunya mirip dengan alamat yang benar ke mana korban mentransfer 10 USDC. Anda dapat melihat perbedaan antara judul asli dan palsu.

Hasil?

Korban memverifikasi alamat terakhir yang dia transfer (alamat palsu) dengan hanya memeriksa awal dan akhir alamat, dan kemudian mentransfer lebih dari $2 juta ke alamat dompet penyerang karena kesalahan naif ini.

Terlepas dari kenaifan kesalahannya; Sebagian besar pengguna kripto melakukan kesalahan yang sama, dan memverifikasi alamat transfer dengan hanya memeriksa karakter pertama dan terakhir.

Tentu saja, penyerang segera mentransfer dana tersebut ke UniSwap untuk mencucinya dan menghindari kemungkinan pembekuan alamat dompetnya dari Circle.

Saat ini, terdapat jutaan alamat di blockchain Ethereum dan blockchain BNB yang menjadi sasaran serangan jenis ini, dan jumlah ini terus meningkat, jadi saya menyarankan Anda untuk sangat berhati-hati terhadap serangan ini.

Anda dapat mengikuti statistik serangan melalui Zero Transfer Phishing.

Keuntungan:

1- Selalu periksa seluruh alamat sebelum mengkonversi, bukan hanya awal dan akhir alamat.

2- Jangan mentransfer jumlah besar dalam satu transaksi.

3- Jika Anda menemukan transfer senilai $0 dikirim dari dompet Anda, jangan khawatir, dompet tersebut belum diretas.