Sandwich Attack เป็นรูปแบบการหาผลประโยชน์จากการเทรดใน DeFi โดยบอตจะคอยสอดส่องธุรกรรมของผู้ใช้อื่นที่รอการยืนยันในเมมพูล แล้วแทรกธุรกรรมของตัวเองเข้าไปทั้งก่อนและหลังธุรกรรมนั้น เพื่อทำกำไรจากส่วนต่างราคาที่เกิดขึ้น การทำความเข้าใจว่าการโจมตีรูปแบบนี้ทำงานอย่างไรเป็นสิ่งสำคัญสำหรับผู้ใช้ DeFi ที่ต้องการปกป้องสินทรัพย์ของตนเอง บทความนี้จะอธิบายกลไกการทำงาน วิธีสังเกตสัญญาณ และแนวทางป้องกันตัวเองจากการโจมตีเหล่านี้
Sandwich Attack คืออะไร
Sandwich Attack เป็นรูปแบบการหาผลประโยชน์จากการเทรด (exploit) ที่เกิดขึ้นบนบล็อกเชน โดยผู้โจมตีจะวางธุรกรรมของตัวเองไว้ทั้งก่อนและหลังธุรกรรมของเหยื่อ เปรียบเสมือนแซนด์วิชที่ธุรกรรมของเหยื่อถูกประกบอยู่ระหว่างธุรกรรมสองรายการของผู้โจมตี สิ่งที่ทำให้การโจมตีนี้เป็นไปได้คือธุรกรรมที่รอการยืนยันจะถูกเก็บไว้ในเมมพูล (mempool) ซึ่งเป็นพื้นที่สาธารณะที่ใครก็สามารถมองเห็นได้ก่อนที่ธุรกรรมจะถูกบรรจุลงในบล็อก
ผู้โจมตีอาศัยข้อเท็จจริงที่ว่าธุรกรรมต่าง ๆ จะถูกประมวลผลตามลำดับที่ผู้ขุดหรือผู้สร้างบล็อกเป็นผู้กำหนด โดยจะส่งธุรกรรมของตนเองพร้อมค่าแก๊สที่สูงกว่าเพื่อแซงธุรกรรมของเหยื่อให้ถูกประมวลผลก่อน จากนั้นอาศัยการเปลี่ยนแปลงราคาที่เกิดจากธุรกรรมของเหยื่อ แล้วขายโทเคนที่ถืออยู่ในภายหลังเพื่อทำกำไรจากส่วนต่างราคา
วิธีการทำงานทางเทคนิค
เมื่อผู้ใช้สร้างธุรกรรมสำหรับแลกเปลี่ยนโทเคนบน DEX (Decentralized Exchange) ธุรกรรมนั้นจะเข้าสู่เมมพูลสาธารณะซึ่งใครก็สามารถมองเห็นได้ บอตโจมตีจะตรวจสอบธุรกรรมในเมมพูลอย่างต่อเนื่อง เมื่อพบธุรกรรมที่มีแนวโน้มทำให้ราคาเปลี่ยนแปลงมากพอ บอตจะส่งธุรกรรมแรก (front-run) พร้อมค่าแก๊สที่สูงกว่าเพื่อให้ถูกประมวลผลก่อนธุรกรรมของเหยื่อ ธุรกรรมนี้มักเป็นการซื้อโทเคนตัวเดียวกัน ซึ่งดันราคาโทเคนให้สูงขึ้น เมื่อธุรกรรมของเหยื่อถูกประมวลผลตามมา เหยื่อจึงได้รับราคาที่แย่กว่าที่ควรจะเป็น (Slippage สูงขึ้นจากการเปลี่ยนแปลงราคาที่ถูกสร้างขึ้น)
หลังจากธุรกรรมของเหยื่อถูกประมวลผล บอตจะส่งธุรกรรมที่สาม (back-run) เพื่อขายโทเคนที่ซื้อไว้ก่อนหน้านี้ในราคาที่สูงขึ้น เกิดเป็นกำไร กระบวนการทั้งหมดนี้มักเกิดขึ้นภายในบล็อกเดียวกัน ทำให้บอตสามารถสกัดกำไรจากธุรกรรมของผู้ใช้อื่นได้อย่างรวดเร็ว
ลักษณะเฉพาะของ Sandwich Attack
Sandwich Attack มีลักษณะเฉพาะหลายประการที่ทำให้แตกต่างจากการหาผลประโยชน์รูปแบบอื่นบนบล็อกเชน ประการแรกคือผู้โจมตีอาศัยข้อมูลที่เปิดเผยต่อสาธารณะอยู่แล้ว นั่นคือธุรกรรมที่รอการยืนยันในเมมพูล ประการที่สองคือการใช้ประโยชน์จาก Slippage โดยจัดการลำดับการประมวลผลธุรกรรมผ่านค่าแก๊สที่สูงกว่า และประการที่สามคือการปิดสถานะทันทีหลังจากธุรกรรมของเหยื่อถูกประมวลผล เพื่อรับกำไรก่อนที่ราคาจะกลับสู่ระดับปกติ
อีกลักษณะเฉพาะที่สำคัญคือการโจมตีนี้ไม่จำเป็นต้องอาศัยช่องโหว่ของสัญญาอัจฉริยะหรือเทคนิคการแฮกใด ๆ บอตเพียงใช้ประโยชน์จากธรรมชาติของเครือข่ายแบบเปิดเผยและกฎการเรียงลำดับธุรกรรมที่มีอยู่แล้วในระบบ ทำให้การดำเนินการโจมตีลักษณะนี้มีความเสี่ยงทางกฎหมายและทางเทคนิคค่อนข้างต่ำสำหรับผู้โจมตีเมื่อเทียบกับการโจมตีรูปแบบอื่น
กรณีการใช้งานและผลกระทบ
Sandwich Attack ส่งผลกระทบต่อหลากหลายกรณีการใช้งานใน DeFi โดยมักเกิดขึ้นบน AMM (Automated Market Maker) อย่าง Uniswap และ SushiSwap ผู้ใช้ที่ทำธุรกรรมแลกเปลี่ยนขนาดใหญ่มีแนวโน้มเผชิญปัญหานี้มากกว่า โดยเฉพาะเมื่อเทรดในพูลสภาพคล่อง (liquidity pool) ที่มีขนาดเล็ก เนื่องจากธุรกรรมขนาดใหญ่ในพูลเล็กทำให้ราคาเปลี่ยนแปลงได้ง่ายกว่า
เมื่อกิจกรรมของบอตประเภทอื่น เช่น liquidation bot หรือ arbitrage bot เข้ามาเกี่ยวข้องด้วย ผลกระทบต่อผู้ใช้ก็อาจยิ่งซับซ้อนและรุนแรงขึ้น ผู้ที่เทรดขนาดใหญ่บ่อยครั้งหรือใช้งาน DeFi เป็นประจำจึงมีความเสี่ยงสะสมที่จะสูญเสียมูลค่าจากปัญหานี้มากกว่าผู้ที่เทรดเป็นครั้งคราว
เปรียบเทียบกับวิธีการแบบอื่น
Sandwich Attack แตกต่างจาก Front-Running ทั่วไป เพราะการโจมตีแบบ Sandwich ต้องใช้ธุรกรรมสองฝั่ง คือทั้งก่อนและหลังธุรกรรมของเหยื่อ เพื่อสร้างกำไร ในขณะที่ Front-Running ทั่วไปอาศัยเพียงการส่งธุรกรรมหนึ่งเข้าไปแซงหน้าเท่านั้น การโจมตีนี้จัดอยู่ในหมวดของ MEV (Maximal Extractable Value) แต่ MEV เป็นแนวคิดที่กว้างกว่า เพราะครอบคลุมถึงการเรียงลำดับธุรกรรมใหม่ (reordering) และเทคนิคการสกัดมูลค่าอื่น ๆ อีกหลายรูปแบบ
Sandwich Attack ยังแตกต่างจากการแฮกแบบดั้งเดิม เพราะไม่ได้อาศัยช่องโหว่ของสัญญาอัจฉริยะหรือการเจาะระบบใด ๆ แต่เป็นการใช้ประโยชน์จากกลไกการทำงานปกติของเครือข่ายและกฎการเรียงลำดับธุรกรรม ไม่ได้เกี่ยวข้องกับการเจาะโค้ดหรือขโมยกุญแจส่วนตัวแต่อย่างใด
ความเสี่ยงและข้อจำกัดของผู้โจมตี
แม้ Sandwich Attack จะเป็นปัญหาที่ส่งผลกระทบจริง แต่ก็มีความเสี่ยงและข้อจำกัดสำหรับฝั่งผู้โจมตีเช่นกัน ความเสี่ยงด้านการเงินคือผู้โจมตีเองก็มีโอกาสขาดทุนได้ หากการเปลี่ยนแปลงราคาไม่เป็นไปตามที่คาดการณ์ไว้ นอกจากนี้ค่าแก๊สอาจสูงมากในบางช่วงเวลาที่เครือข่ายแออัด ซึ่งทำให้กำไรที่ได้ลดลงอย่างมีนัยสำคัญหรืออาจไม่คุ้มค่าเลย
อีกประเด็นหนึ่งคือบอตโจมตีหลายตัวมักแข่งขันกันเองเพื่อแย่งชิงโอกาสจากธุรกรรมเดียวกัน ทำให้ต้นทุนค่าแก๊สถูกดันขึ้นอย่างรวดเร็วจากการประมูลแข่งกัน (gas auction) และลดกำไรสุทธิลงไปมาก นอกจากนี้ validator หรือโหนดบางรายในเครือข่ายอาจถูกตั้งค่าให้ปฏิเสธหรือกรองธุรกรรมที่มีรูปแบบเข้าข่ายการโจมตีลักษณะนี้
ความพยายามแก้ไขปัญหาในระบบนิเวศจริง
Sandwich Attack เป็นปัญหาที่เกิดขึ้นจริงในระบบนิเวศ DeFi หลายเครือข่าย ไม่ใช่เฉพาะบน Ethereum เท่านั้น ชุมชนนักพัฒนาได้เสนอแนวทางหลายรูปแบบเพื่อลดผลกระทบ เช่น บริการส่งธุรกรรมแบบส่วนตัว (private transaction relay) อย่าง Flashbots Protect และแนวคิดการแยกบทบาทระหว่างผู้เสนอบล็อกกับผู้สร้างบล็อก (Proposer-Builder Separation หรือ PBS) ซึ่งเป็นส่วนหนึ่งของความพยายามปรับโครงสร้างการจัดการ MEV บนเครือข่าย Ethereum
นอกจากนี้ยังมีข้อเสนอเชิงงานวิจัยอย่าง MEV-Burn รวมถึงการใช้ mempool ส่วนตัว (private mempool) ที่ผู้ให้บริการหลายรายนำมาปรับใช้เพื่อลดการมองเห็นธุรกรรมก่อนถูกยืนยัน เครือข่ายอื่นอย่าง BNB Smart Chain และ Polygon ก็เผชิญปัญหา Sandwich Attack ในลักษณะใกล้เคียงกัน และแต่ละเครือข่ายก็มีการพัฒนาเครื่องมือป้องกันของตนเองอย่างต่อเนื่องตามสถาปัตยกรรมที่แตกต่างกัน
วิธีป้องกันตัวเอง
การตั้งค่า Slippage Tolerance ให้ต่ำลง (เช่น 0.1-0.5% แทนที่จะเป็น 5%) เป็นวิธีพื้นฐานที่ช่วยลดความเสี่ยงจากการโจมตีรูปแบบนี้ อย่างไรก็ตาม การตั้งค่าต่ำเกินไปอาจทำให้ธุรกรรมของคุณไม่สำเร็จหากราคาผันผวนเกินกว่าที่กำหนดไว้ อีกวิธีที่มีประสิทธิภาพกว่าคือการใช้ Private RPC เช่น Flashbots Protect หรือ MEV-Blocker ซึ่งส่งธุรกรรมของคุณตรงไปยังผู้สร้างบล็อกโดยไม่เปิดเผยผ่านเมมพูลสาธารณะจนกว่าจะถูกบรรจุลงบล็อก
อีกแนวทางหนึ่งคือการเลือกใช้ DEX หรือโปรโตคอลที่ออกแบบมาให้ต้านทาน MEV มากขึ้น เช่น CoW Protocol ซึ่งใช้กลไกการจับคู่คำสั่งแบบกลุ่ม (batch auction) บางแพลตฟอร์ม เช่น 1inch หรือ Matcha ก็มีฟีเจอร์หรือตัวเลือกที่ช่วยส่งธุรกรรมผ่านช่องทางที่มีการป้องกัน MEV เพื่อลดความเสี่ยงจากการถูกโจมตี ผู้ใช้ควรตรวจสอบการตั้งค่าของแพลตฟอร์มที่ใช้งานอยู่เสมอ เพราะฟีเจอร์เหล่านี้อาจไม่ได้เปิดใช้งานเป็นค่าเริ่มต้นเสมอไป
แนวโน้มในอนาคตของการป้องกัน Sandwich Attack
การป้องกัน Sandwich Attack ยังคงเป็นหัวข้อที่ได้รับการพัฒนาอย่างต่อเนื่องในวงการ DeFi ทีมพัฒนาโปรโตคอลและนักวิจัยด้าน MEV ยังคงทำงานเพื่อออกแบบกลไกที่ลดแรงจูงใจในการโจมตีโดยไม่กระทบต่อประสิทธิภาพและการกระจายศูนย์ของเครือข่าย แนวทางอย่างการจับคู่คำสั่งแบบกลุ่ม การเข้ารหัสธุรกรรมชั่วคราว (encrypted mempool) และการปรับปรุงมาตรฐานของ private RPC ล้วนเป็นทิศทางที่มีการพูดถึงและทดลองใช้งานอย่างต่อเนื่อง
สำหรับผู้ใช้ทั่วไป สิ่งที่ทำได้จริงในตอนนี้คือการติดตามพัฒนาการของเครื่องมือป้องกันเหล่านี้ เลือกใช้แพลตฟอร์มและกระเป๋าเงินที่ให้ความสำคัญกับความปลอดภัยจาก MEV และปรับพฤติกรรมการเทรดของตนเอง เช่น หลีกเลี่ยงการเทรดขนาดใหญ่ในพูลสภาพคล่องต่ำ เพื่อลดความเสี่ยงในระหว่างที่มาตรฐานการป้องกันในระดับโปรโตคอลยังคงพัฒนาต่อไป
คำถามที่พบบ่อย
ติดตามข่าว Crypto ล่าสุด
รับบทวิเคราะห์และข่าวสาร Bitcoin, Altcoins ทุกวันจาก 678.in.th
ดูบทความทั้งหมดสรุป
Sandwich Attack เป็นปัญหาที่เกิดขึ้นจริงในระบบนิเวศ DeFi ซึ่งส่งผลกระทบโดยตรงต่อผู้ใช้ปลายทางที่ทำการแลกเปลี่ยนโทเคนบน DEX การเข้าใจว่าการโจมตีนี้ทำงานอย่างไร และการนำเครื่องมือป้องกันที่เหมาะสมมาใช้ เช่น การตั้งค่า Slippage ให้ต่ำอย่างสมเหตุสมผล หรือการส่งธุรกรรมผ่าน Private RPC สามารถช่วยลดความเสี่ยงได้อย่างมีนัยสำคัญ แม้ปัญหานี้จะยังไม่หมดไปทั้งหมด แต่เครื่องมือและมาตรฐานด้านความปลอดภัยในวงการ DeFi ก็มีการพัฒนาอย่างต่อเนื่องเพื่อทำให้การเทรดปลอดภัยมากขึ้นสำหรับผู้ใช้ทุกคน
บทความนี้มีวัตถุประสงค์เพื่อการศึกษาเท่านั้น ไม่ถือเป็นคำแนะนำทางการเงิน