Penipu menargetkan pengguna crypto dengan trik 'TransferFrom nilai nol' baru

Data dari Etherscan menunjukkan bahwa beberapa penipu kripto menargetkan pengguna dengan trik baru yang memungkinkan mereka mengonfirmasi transaksi dari dompet korban, tetapi tanpa memiliki kunci pribadi korban. Serangan hanya dapat dilakukan untuk transaksi bernilai 0. Namun, hal itu dapat menyebabkan beberapa pengguna secara tidak sengaja mengirim token ke penyerang akibat memotong dan menempel riwayat transaksi yang dibajak.

Perusahaan keamanan Blockchain SlowMist ditemukan teknik baru pada bulan Desember dan mengungkapkannya dalam posting blog. Sejak saat itu, baik SafePal maupun Etherscan telah mengadopsi teknik mitigasi untuk membatasi pengaruhnya terhadap pengguna, namun beberapa pengguna mungkin masih tidak menyadari keberadaannya.

Menurut postingan dari SlowMist, penipuan tersebut bekerja dengan mengirimkan transaksi nol token dari dompet korban ke alamat yang terlihat mirip dengan alamat yang sebelumnya dikirimi oleh korban.

Misalnya, jika korban mengirim 100 koin ke alamat deposit pertukaran, penyerang dapat mengirim nol koin dari dompet korban ke alamat yang terlihat mirip tetapi sebenarnya berada di bawah kendali penyerang. Korban dapat melihat transaksi ini dalam riwayat transaksinya dan menyimpulkan bahwa alamat yang ditampilkan adalah alamat setoran yang benar. Akibatnya, mereka dapat mengirim koin mereka langsung ke penyerang.

Mengirim transaksi tanpa izin pemilik 

Dalam keadaan normal, penyerang memerlukan kunci pribadi korban untuk mengirim transaksi dari dompet korban. Tetapi fitur "tab kontrak" Etherscan mengungkapkan bahwa ada celah dalam beberapa kontrak token yang memungkinkan penyerang mengirim transaksi dari dompet apa pun.

Misalnya kode untuk USD Coin (USDC) di Etherscan menunjukkan bahwa fungsi "TransferDari" memungkinkan setiap orang untuk memindahkan koin dari dompet orang lain selama jumlah koin yang mereka kirimkan kurang dari atau sama dengan jumlah yang diperbolehkan oleh pemilik alamat.

Ini biasanya berarti penyerang tidak dapat melakukan transaksi dari alamat orang lain kecuali pemilik menyetujui tunjangan untuk mereka.

Namun, ada celah dalam pembatasan ini. Jumlah yang diizinkan didefinisikan sebagai angka (disebut "tipe uint256"), yang artinya ditafsirkan sebagai nol kecuali jika secara khusus diatur ke angka lain. Hal ini dapat dilihat pada fungsi “tunjangan”.

Akibatnya, selama nilai transaksi penyerang kurang dari atau sama dengan nol, mereka dapat mengirim transaksi dari dompet mana pun yang mereka inginkan, tanpa memerlukan kunci pribadi atau persetujuan sebelumnya dari pemilik.

USDC bukan satu-satunya token yang memungkinkan hal ini dilakukan. Kode serupa dapat ditemukan di sebagian besar kontrak token. Bahkan bisa ditemukan dalam contoh kontrak yang ditautkan dari situs resmi Ethereum Foundation.

Contoh penipuan transfer nilai nol

Etherscan menunjukkan bahwa beberapa alamat dompet mengirimkan ribuan transaksi bernilai nol per hari dari berbagai dompet korban tanpa persetujuan mereka.

Misalnya, akun berlabel Fake_Phishing7974 menggunakan smart contract yang belum diverifikasi melakukan lebih dari 80 bundel transaksi pada 12 Januari, dengan setiap bundel mengandung 50 transaksi bernilai nol dengan total 4,000 transaksi tidak sah dalam satu hari.

Alamat yang menyesatkan

Melihat setiap transaksi lebih dekat mengungkapkan motif spam ini: Penyerang mengirimkan transaksi bernilai nol ke alamat yang terlihat sangat mirip dengan yang sebelumnya dikirimi dana oleh korban.

Misalnya, Etherscan menunjukkan bahwa salah satu alamat pengguna yang menjadi sasaran penyerang adalah sebagai berikut:

0x20d7f90d9c40901488a935870e1e80127de11d74.

Pada 29 Januari, akun ini mengizinkan 5,000 Tether (USDT) untuk dikirim ke alamat penerima ini:

0xa541efe60f274f813a834afd31e896348810bb09.

Segera setelah itu, Fake_Phishing7974 mengirimkan transaksi bernilai nol dari dompet korban ke alamat ini:

0xA545c8659B0CD5B426A027509E55220FDa10bB09.

Lima karakter pertama dan enam karakter terakhir dari dua alamat penerima ini persis sama, tetapi karakter di tengah semuanya sangat berbeda. Penyerang mungkin bermaksud agar pengguna mengirim USDT ke alamat kedua (palsu) ini alih-alih yang asli, memberikan koin mereka kepada penyerang.

Dalam kasus khusus ini, tampaknya penipuan tidak berhasil, karena Etherscan tidak menunjukkan transaksi apa pun dari alamat ini ke salah satu alamat palsu yang dibuat oleh penipu. Tetapi mengingat volume transaksi bernilai nol yang dilakukan oleh akun ini, rencana tersebut mungkin berhasil dalam kasus lain.

Dompet dan penjelajah blok dapat sangat bervariasi dalam hal bagaimana atau apakah mereka menampilkan transaksi yang menyesatkan.

Wallet

Beberapa dompet mungkin tidak menampilkan transaksi spam sama sekali. Misalnya, MetaMask tidak menunjukkan riwayat transaksi jika diinstal ulang, meskipun akun itu sendiri memiliki ratusan transaksi di blockchain. Ini menyiratkan bahwa ia menyimpan riwayat transaksinya sendiri daripada menarik data dari blockchain. Ini harus mencegah transaksi spam muncul di riwayat transaksi dompet.

Di sisi lain, jika dompet menarik data langsung dari blockchain, transaksi spam dapat muncul di layar dompet. Dalam pengumuman 13 Desember di Twitter, CEO SafePal Veronica Wong memperingatkan Pengguna SafePal yang dompetnya dapat menampilkan transaksi. Untuk mengurangi risiko ini, dia mengatakan bahwa SafePal mengubah cara alamat ditampilkan di versi terbaru dompetnya untuk memudahkan pengguna memeriksa alamat.

Pada bulan Desember, satu pengguna juga melaporkan bahwa dompet Trezor mereka menampilkan transaksi yang menyesatkan.

Cointelegraph menghubungi pengembang Trezor SatoshiLabs melalui email untuk memberikan komentar. Sebagai tanggapan, seorang perwakilan menyatakan bahwa dompet menarik riwayat transaksinya langsung dari blockchain “setiap kali pengguna memasukkan dompet Trezor mereka.”

Namun, tim mengambil langkah-langkah untuk melindungi pengguna dari penipuan. Dalam pembaruan Trezor Suite yang akan datang, perangkat lunak akan “menandai transaksi bernilai nol yang mencurigakan sehingga pengguna diberi tahu bahwa transaksi tersebut berpotensi penipuan.” Perusahaan juga menyatakan bahwa dompet selalu menampilkan alamat lengkap setiap transaksi dan mereka “sangat menyarankan agar pengguna selalu memeriksa alamat lengkap, bukan hanya karakter pertama dan terakhir.”

Blokir penjelajah

Selain dompet, penjelajah blok adalah jenis perangkat lunak lain yang dapat digunakan untuk melihat riwayat transaksi. Beberapa penjelajah mungkin menampilkan transaksi ini sedemikian rupa untuk menyesatkan pengguna secara tidak sengaja, seperti yang dilakukan beberapa dompet.

Untuk mengurangi ancaman ini, Etherscan telah mulai menghilangkan transaksi token bernilai nol yang tidak dimulai oleh pengguna. Itu juga menandai transaksi ini dengan peringatan yang mengatakan, "Ini adalah transfer token bernilai nol yang diprakarsai oleh alamat lain," sebagaimana dibuktikan oleh gambar di bawah.

Penjelajah blok lain mungkin telah mengambil langkah yang sama seperti Etherscan untuk memperingatkan pengguna tentang transaksi ini, tetapi beberapa mungkin belum menerapkan langkah ini.

Kiat untuk menghindari trik 'TransferDari nilai nol'

Cointelegraph menghubungi SlowMist untuk mendapatkan saran tentang cara menghindari terjerumus ke trik "TransferFrom bernilai nol".

Seorang perwakilan dari perusahaan memberi Cointelegraph daftar tip untuk menghindari menjadi korban serangan:

  1. “Berhati-hatilah dan verifikasi alamat sebelum melakukan transaksi apa pun.”
  2. “Manfaatkan fitur daftar putih di dompet Anda untuk mencegah pengiriman dana ke alamat yang salah.”
  3. “Tetap waspada dan terinformasi. Jika Anda menemukan transfer yang mencurigakan, luangkan waktu untuk menyelidiki masalah ini dengan tenang agar tidak menjadi korban scammers.”
  4. “Pertahankan tingkat skeptisisme yang sehat, selalu berhati-hati dan waspada.”

Dilihat dari saran ini, hal terpenting yang harus diingat oleh pengguna crypto adalah selalu memeriksa alamat sebelum mengirim crypto ke sana. Bahkan jika catatan transaksi tampaknya menyiratkan bahwa Anda telah mengirim crypto ke alamat tersebut sebelumnya, tampilan ini mungkin menipu.