Upgrade Ethereum Pectra Berpotensi Membuka Celah: Dompet Bisa Dibobol Hanya Lewat Tanda Tangan Offchain
Upgrade jaringan Ethereum terbaru, Pectra, menghadirkan fitur baru untuk meningkatkan skalabilitas dan fungsionalitas smart account. Namun, pembaruan ini juga membuka celah berbahaya yang memungkinkan peretas menguras dana dari dompet pengguna hanya dengan tanda tangan offchain.
Sejak Pectra diaktifkan pada 7 Mei 2025 (epoch 364032), para penyerang kini dapat memanfaatkan jenis transaksi baru untuk mengambil alih akun milik pengguna (EOA/Externally Owned Account) tanpa perlu tanda tangan transaksi onchain.
Menurut auditor smart contract Solidity, Arda Usman, kini memungkinkan bagi penyerang untuk menguras isi dompet hanya menggunakan pesan yang ditandatangani secara offchain.
EIP-7702: Kode Berbahaya dalam Tanda Tangan
Sumber utama risiko ini adalah EIP-7702, bagian inti dari upgrade Pectra. Proposal ini memperkenalkan jenis transaksi baru SetCode (0x04) yang memungkinkan pengguna mendelegasikan kendali dompetnya ke kontrak lain hanya dengan tanda tangan pesan.
Jika penyerang mendapatkan tanda tangan tersebut — misalnya dari situs phishing — mereka bisa menimpa kode dompet pengguna dengan kontrak proxy berbahaya.
“Begitu kode disetel, penyerang bisa langsung menggunakan kontrak itu untuk mentransfer ETH atau token—tanpa pengguna pernah menandatangani transaksi pengiriman,” kata Usman.
Dompet Bisa Diubah Hanya Dengan Tanda Tangan Offchain
Peneliti dari Hacken, Yehor Rudytsia, menyebut jenis transaksi baru ini bisa mengubah akun pengguna menjadi kontrak pintar yang bisa dieksekusi oleh siapa pun yang punya tanda tangan delegasi.
“Sebelum Pectra, dompet tidak bisa dimodifikasi tanpa transaksi dari pengguna. Sekarang, hanya dengan tanda tangan offchain, kode dapat diinstal untuk mengalihkan kendali penuh,” jelas Rudytsia.
Bahaya ini bersifat langsung dan nyata. Sejak Pectra aktif, semua tanda tangan delegasi yang valid bisa dieksekusi oleh kontrak.
Kontrak pintar yang masih mengandalkan metode lama seperti tx.origin atau hanya mengecek EOA, sangat rentan dieksploitasi.
Wallet yang Tidak Deteksi Tipe Transaksi Baru Rentan
Rudytsia memperingatkan bahwa dompet kripto dan antarmuka yang gagal mengenali jenis transaksi baru Ethereum (khususnya 0x04) sangat berisiko.
“Mesin dompet harus bisa mendeteksi permintaan delegasi dan menandai alamat mencurigakan.”
Jenis serangan ini bisa dilakukan melalui interaksi offchain umum seperti:
-
Email phishing
-
DApps palsu
-
Penipuan Discord
“Ini bisa jadi vektor serangan paling populer dari Pectra,” ujarnya. “Mulai sekarang, pengguna harus sangat hati-hati terhadap apa yang mereka tanda tangani.”
Dompet Hardware Tak Lagi Aman
Ironisnya, dompet hardware juga tidak lebih aman. Rudytsia menyatakan bahwa dompet seperti Ledger atau Trezor kini berada pada risiko yang sama dengan hot wallet dalam hal menandatangani pesan berbahaya.
“Jika pengguna menandatangani pesan yang salah, seluruh dana bisa hilang seketika.”
Solusi? Edukasi dan transparansi. Pengguna harus tidak menandatangani pesan yang tidak mereka pahami, dan pengembang dompet harus memberikan peringatan eksplisit jika ada permintaan tanda tangan delegasi.
Pesan baru yang menggunakan format tanda tangan EIP-7702 seringkali berbentuk hash 32-byte biasa, sehingga bisa lolos dari deteksi sistem peringatan standar seperti EIP-191 atau EIP-712.
Usman menambahkan, jika pesan yang diminta menyertakan nonce akun, kemungkinan besar pesan itu langsung mempengaruhi kontrol akun pengguna.
Celah Replay Signature antar Chain
EIP-7702 juga memungkinkan tanda tangan dengan chain_id = 0, artinya pesan bisa digunakan ulang (replay) di semua jaringan Ethereum-kompatibel.
“Artinya tanda tangan itu bisa dimanfaatkan di mana saja,” kata Usman.
Multisig Aman, Single-Key Rentan
Dompet multisignature relatif lebih aman karena memerlukan banyak tanda tangan. Sebaliknya, dompet dengan kunci tunggal—termasuk hardware wallet—harus segera mengadopsi sistem parsing dan peringatan baru untuk mencegah eksploitasi.
Fitur Lain Pectra
Selain EIP-7702, upgrade Pectra juga mencakup:
-
EIP-7251: Menaikkan batas staking validator dari 32 menjadi 2.048 ETH
-
EIP-7691: Meningkatkan jumlah data blob per blok untuk skalabilitas layer-2