Hanya untuk tujuan edukasi; bukan saran keamanan atau investasi. Kendali slippage dan perutean privat dapat mengurangi paparan sandwich, tetapi tidak menjamin kualitas eksekusi, penyertaan, finalitas, atau pemulihan kerugian.
Jawaban langsung
Serangan sandwich adalah bentuk merugikan dari nilai maksimal yang dapat diekstraksi ketika penyerang menempatkan satu transaksi tepat sebelum swap pengguna dan satu lagi tepat sesudahnya. Transaksi pertama menggerakkan harga pool melawan pengguna, swap pengguna dieksekusi pada kurs yang lebih buruk, lalu transaksi terakhir menutup posisi penyerang pada harga yang sebagian tercipta oleh pesanan pengguna.
Serangan memerlukan visibilitas lebih awal atau hak istimewa dalam mengurutkan niat pengguna, dampak harga yang cukup, serta batas eksekusi yang masih mengizinkan swap berhasil. Serangan ini paling sering dibahas pada swap pembuat pasar otomatis, tetapi risiko yang lebih luas mencakup setiap perubahan status yang dapat diprediksi ketika pengurutan memungkinkan pihak lain mengekstraksi nilai.
Cara kerja
Pengguna menandatangani dan menyiarkan swap. Jika rinciannya mencapai pool transaksi publik atau kanal aliran pesanan lain yang dapat diamati sebelum penyertaan, pencari dapat mengurai aset, ukuran, rute, keluaran minimum, dan tenggat, lalu menyimulasikan kemungkinan urutan transaksi.
Untuk pembelian di pool AMM, pencari membeli lebih dahulu. Front-run tersebut mengubah cadangan dan menaikkan harga eksekusi pengguna. Pengguna kemudian menerima token keluaran lebih sedikit daripada kuotasi sebelum perdagangan, selama hasilnya masih memenuhi syarat keluaran minimum. Pencari menjual setelah pengguna melalui back-run dan menangkap sebagian pergerakan harga.
Penerimaan kotor tidak sama dengan laba. Penyerang harus menanggung biaya kedua swap, Gas atau pembayaran kepada builder, percobaan gagal, dan risiko persediaan. Persaingan, transaksi lain, swap korban yang dikembalikan, atau perubahan urutan blok dapat membuat rangkaian ini merugi; sandwich tidak otomatis bersifat atomik atau terjamin.
Perlindungan slippage membatasi keluaran terburuk yang diterima, bukan mencegah pengurutan. Toleransi yang terlalu longgar memberi ruang lebih besar bagi eksekusi merugikan, sedangkan toleransi yang terlalu ketat dapat membuat swap wajar dikembalikan saat volatilitas. Aplikasi dan kontrak integrasi harus memberlakukan keluaran minimum terkini yang disetujui pengguna serta tenggat yang sesuai, bukan nilai nol atau nilai statis yang kedaluwarsa.
Pengiriman privat, aliran pesanan terlindungi, lelang batch, eksekusi berbasis intent, dan pemecahan pesanan dapat mengurangi paparan pada sistem tertentu. Perlindungannya bergantung pada perantara yang dapat melihat pesanan, cakupan builder, perilaku fallback, likuiditas, biaya, dan implementasi; label “privat” atau “terlindungi dari MEV” bukan jaminan universal.
Contoh
Pengguna mengirim swap yang terlihat untuk membeli Token B dengan Token A dari pool AMM. Pencari menyimulasikan bahwa pesanan cukup besar untuk menggerakkan harga pool dan keluaran minimum pengguna masih memberi ruang agar transaksi berhasil setelah harga bergerak merugikan.
Pencari membeli Token B terlebih dahulu, swap pengguna lalu membeli Token B pada kurs yang memburuk, dan pencari segera menjual Token B setelahnya. Pengguna tetap menerima setidaknya jumlah minimum yang ditandatangani tetapi kurang dari kuotasi sebelumnya; pencari hanya menyimpan sisa setelah biaya swap, pembayaran pengurutan, dan biaya eksekusi.
Risiko
Kerugian langsung bagi pengguna adalah eksekusi yang lebih buruk dan slippage efektif yang lebih tinggi. Swap juga dapat dikembalikan setelah menghabiskan Gas pada rantai dan desain transaksi yang mengenakan biaya untuk eksekusi gagal. Likuiditas tipis, pesanan besar yang terlihat, batas longgar, pasar volatil, dan rute yang dapat diprediksi dapat menambah paparan, tetapi tidak ada satu ambang yang membuktikan serangan pasti terjadi.
Mitigasi membawa kompromi. Pesanan lebih kecil dapat menambah total biaya atau membocorkan strategi berulang; batas ketat dapat meningkatkan pengembalian; rute privat menambah persoalan kepercayaan, sensor, pencatatan, dan fallback; antarmuka terlindungi mungkin hanya mencakup rantai atau rute tertentu. Verifikasi keluaran minimum yang ditandatangani, tenggat, rute, kebijakan endpoint, tanda terima, dan finalitas yang diperlukan, bukan mengandalkan lencana perlindungan.
Kesalahpahaman umum
- Setiap pergerakan harga yang merugikan adalah serangan sandwich. Dampak harga biasa, pergerakan pasar, perubahan rute, dan arbitrase juga dapat membuat eksekusi berbeda dari kuotasi; atribusi sandwich memerlukan bukti urutan transaksi.
- Penyerang sekadar mencuri token dari dompet. Sandwich lazim mengubah status pool di sekitar swap yang telah diotorisasi; transaksi penyerang tidak perlu memindahkan aset langsung dari dompet pengguna.
- Menetapkan toleransi slippage apa pun mencegah serangan. Keluaran minimum membatasi penurunan yang diterima, tetapi pencari dapat mengoptimalkan sandwich agar swap berhasil dekat batas tersebut.
- Pengiriman privat menghapus MEV. Pesanan dapat tersembunyi dari pool publik, tetapi operator RPC, relay, builder, solver, atau fallback publik masih dapat mengamati atau memengaruhinya.
- Tanda terima berhasil membuktikan eksekusi adil. Keberhasilan hanya membuktikan syarat kontrak terpenuhi, bukan bahwa pengguna mendapat harga terbaik atau menghindari pengurutan yang merugikan.
Topik terkait
- Pembuat pasar otomatis
- Front-running
- Nilai maksimal yang dapat diekstraksi
- RPC transaksi privat
- Bursa terdesentralisasi
Sumber
- Maximal extractable value (MEV) - Ethereum.org (accessed: 2026-08-21)
- What is a sandwich attack? - Uniswap Labs (accessed: 2026-08-21)
- SCWE-090: Missing Slippage Protection in Automated Token Swaps - OWASP Smart Contract Security (accessed: 2026-08-21)