
Sandwich attack là một hình thức khai thác trên chuỗi, trong đó kẻ tấn công đặt lệnh mua ngay trước giao dịch của bạn trong cùng một khối, rồi bán ra ngay sau giao dịch của bạn, tạo thành một “chiếc bánh sandwich” quanh lệnh của bạn. Hành động này thao túng giá của Automated Market Maker (AMM) theo thời gian thực và chiếm trọn khoảng trượt giá mà bạn đã cho phép.
Mempool là hàng đợi công khai của các giao dịch đang chờ được đưa vào khối. MEV (Maximal Extractable Value) là khoản lợi nhuận bổ sung thu được nhờ sắp xếp lại, chèn hoặc loại trừ giao dịch trong quá trình tạo khối. Sandwich attack là chiến lược MEV kinh điển nhằm khiến giao dịch của bạn thực hiện ở mức giá kém lợi hơn, tạo ra cơ hội arbitrage an toàn cho kẻ tấn công.
Sandwich attack diễn ra sau khi giao dịch của bạn vào mempool. Các bot sẽ quét mempool để tìm các giao dịch hoán đổi lớn trong pool thanh khoản cụ thể. Khi phát hiện giao dịch lớn của bạn, bot sẽ gửi lệnh mua với phí gas cao hơn để chạy trước, đẩy giá token lên. Giao dịch của bạn sau đó thực hiện ở mức giá bất lợi hơn, cuối cùng bot bán ra ngay sau bạn, đưa giá trở lại ban đầu và khóa lợi nhuận.
Ví dụ đơn giản: Giả sử bạn muốn swap 100 ETH lấy Token A trên AMM, đặt ngưỡng trượt giá 1%. Bot phát hiện lệnh của bạn và mua Token A trước, đẩy giá Token A tăng so với ETH. Giao dịch của bạn thực hiện ở mức giá cao hơn, khiến bạn nhận được ít Token A hơn. Sau giao dịch của bạn, bot lập tức bán Token A, khiến giá giảm trở lại, thu lợi nhuận từ chênh lệch giá và chiếm trọn khoảng trượt giá bạn đặt.
Cơ chế cốt lõi dựa trên giá AMM và trượt giá. AMM (Automated Market Maker) xác định giá dựa vào tỷ lệ hai tài sản trong pool thanh khoản. Bất kỳ thay đổi lớn nào về số lượng tài sản sẽ làm giá dịch chuyển theo đường cong, gây ra “price impact”. Trượt giá là mức lệch giá tối đa bạn chấp nhận.
Sandwich attack khai thác điều này bằng cách đẩy giá bất lợi cho bạn với một giao dịch nhỏ trước, khiến giao dịch của bạn thực hiện ở mức giá kém hơn trong phạm vi trượt giá đã đặt. Sau đó, kẻ tấn công nhanh chóng đảo chiều lệnh, đưa giá về lại vị trí cũ và thu lợi từ chênh lệch giữa hai giao dịch. Miễn là ngưỡng trượt giá của bạn cho phép, kẻ tấn công luôn có thể thu lợi nhuận giữa hai lệnh chạy trước và chạy sau.
Ảnh hưởng tức thì là bạn nhận được ít token mục tiêu hơn với cùng một lượng đầu vào—giá thực hiện bị xấu đi. Ngoài ra, phí giao dịch có thể tăng do cạnh tranh vị trí trong khối (bot chạy trước và chạy sau đẩy phí gas lên), và nguy cơ giao dịch thất bại cũng tăng (nếu đặt trượt giá quá thấp, giao dịch có thể bị hoàn lại nhưng vẫn mất phí).
Trong năm qua, hoạt động MEV trên các blockchain lớn vẫn ở mức cao. Sandwich attack xảy ra nhiều hơn khi mạng tắc nghẽn, nhất là với các giao dịch lớn. Người dùng cần đặc biệt cảnh giác khi giao dịch tại các pool thanh khoản thấp hoặc biến động mạnh.
Điểm then chốt là phân tích trình tự giao dịch trong cùng một khối. Trên block explorer, hãy kiểm tra xem lệnh swap của bạn có bị đi trước bởi một lệnh mua cùng tài sản và ngay sau đó là lệnh bán cùng tài sản—cả hai đều đến từ các địa chỉ tương tự hoặc liên quan không.
Các dấu hiệu cảnh báo khác gồm: giá thực hiện lệch mạnh so với giá báo; toàn bộ ngưỡng trượt giá bị dùng hết; hoặc phí giao dịch cao bất thường so với các giao dịch khác trong khối. Nếu đồng thời xuất hiện các dấu hiệu này, rất có thể bạn đã bị sandwich attack.
Lưu ý rủi ro: Mọi giao dịch on-chain đều có thể gặp bất lợi về giá và phí. Luôn đánh giá rủi ro dựa trên quy mô vốn, và tránh swap lớn nếu chưa nắm rõ định tuyến, phí hay độ sâu pool.
Frontrunning là việc chèn giao dịch trước bạn để kiếm lời từ biến động giá do giao dịch của bạn gây ra; sandwich attack đặt một lệnh trước và một lệnh sau giao dịch của bạn, bao trọn lệnh của bạn để đảm bảo tạo ra chênh lệch giá có thể khai thác.
Đôi khi bạn sẽ nghe về “backrunning” (giao dịch ngay sau bạn), nhưng sandwich attack thực sự luôn gồm cả hành động trước và sau lệnh, nhắm chính xác vào trượt giá và giá thực hiện của bạn.
AMM xác định giá hoàn toàn dựa trên số dư tài sản trong pool, mọi giao dịch đều xếp hàng công khai trên chuỗi. Điều này giúp kẻ tấn công dễ dàng đẩy giá chỉ với một giao dịch trong phạm vi trượt giá người dùng đặt.
Ngược lại, sàn tập trung dùng công cụ khớp lệnh và sổ lệnh nội bộ, không công khai trên mempool. Bot bên ngoài không thể chèn lệnh bao quanh trong cùng một khối—vì vậy sandwich attack chủ yếu xảy ra trên AMM và router on-chain.
Khi dùng ví Web3 của Gate để kết nối với DEX, hãy ưu tiên endpoint RPC riêng tư hoặc lộ trình được bảo vệ MEV. Với giao dịch lớn, luôn thử lệnh nhỏ trước để kiểm tra cài đặt trượt giá và lộ trình định tuyến.
Nếu không cần swap AMM tức thì, giao dịch qua thị trường spot hoặc phái sinh của Gate sẽ giúp bạn tránh mempool công khai, giảm đáng kể rủi ro sandwich attack. Với các giao dịch cross-chain hoặc swap tổng hợp, hãy chọn lộ trình thanh khoản sâu, minh bạch và tránh gửi lệnh lớn vào giờ cao điểm.
Nhắc nhở bảo mật: Luôn kiểm soát ngưỡng trượt giá, chia nhỏ lệnh lớn nếu có thể, theo dõi kỹ phí và chi tiết thực hiện để tránh mất mát do cấu hình sai.
Sandwich attack xoay quanh việc đặt lệnh ngay trước và sau giao dịch của bạn, khai thác cơ chế định giá AMM và khoảng trượt giá để thu lợi arbitrage. Để giảm rủi ro, hãy hạn chế công khai lệnh, thu hẹp phạm vi giá bị khai thác, chia nhỏ các giao dịch lớn. Luôn cân nhắc thời điểm, độ sâu pool, chất lượng định tuyến—và tận dụng kênh gửi riêng tư cùng công cụ limit/TWAP để nâng cao chất lượng thực hiện.
Sandwich attack làm tăng trượt giá thực tế, thường khiến giá thực hiện tệ hơn nhiều so với dự kiến. Kẻ tấn công bơm các lệnh lớn trước và sau bạn—đẩy giá lên rồi xả xuống—khiến lệnh của bạn phải chịu mức giá bất lợi ở giữa. Nói cách khác: lẽ ra bạn chỉ tốn 100 USD, nhưng có thể phải trả đến 110 USD, và 10 USD chênh lệch đó thuộc về kẻ tấn công.
Trên Gate, hãy đặt ngưỡng trượt giá thấp—thường từ 0,5%–2%. Chọn cặp giao dịch có thanh khoản sâu, tránh giao dịch vào giờ mạng tắc nghẽn, và hạn chế gửi lệnh lớn đơn lẻ khi có thể. Sử dụng công cụ tổng hợp để chia nhỏ dòng lệnh cũng giúp tránh bị bot nhắm vào các giao dịch lớn.
Tần suất tấn công phụ thuộc vào độ minh bạch và thanh khoản. Sàn có mempool công khai, lượng người dùng và khối lượng lớn tạo nhiều cơ hội cho kẻ tấn công quan sát, khai thác giao dịch lớn. Trớ trêu thay, cặp thanh khoản sâu lại khó bị khai thác hơn vì lệnh lớn ít ảnh hưởng giá. Chọn nền tảng như Gate với khối lượng lớn, thanh khoản sâu sẽ bảo vệ tốt hơn trước các cuộc tấn công này.
Trượt giá thông thường do biến động thị trường tự nhiên—không ai kiểm soát; sandwich attack là hành vi thao túng có chủ đích. Khác biệt ở chỗ: trượt giá tự nhiên ngẫu nhiên, khó đoán; sandwich attack là hành động có chủ đích, lặp lại, nhắm mục tiêu rõ ràng. Khi kiểm tra lịch sử hash giao dịch, trượt giá bất thường trên một số cặp thường là dấu hiệu sandwich attack.
Chắc chắn. Kiểm tra hash giao dịch trên block explorer giúp bạn xem trình tự giao dịch, biến động giá trước và sau lệnh. Nếu có giao dịch lớn cùng chiều ngay trước hoặc sau—đặc biệt nếu giá thực hiện tăng vọt—rất có thể bạn đã bị tấn công. Nắm vững cách đọc dữ liệu on-chain là chìa khóa để tự bảo vệ mình.


