ข้ามไปยังเนื้อหาหลัก

การโจมตี Blockchain: การโจมตี 51%, การใช้จ่ายสองครั้ง และอื่น ๆ

เทคโนโลยี Blockchain มีชื่อเสียงในด้านความปลอดภัย แต่ก็ไม่ได้ปราศจากความเสี่ยง การเข้าใจเวกเตอร์การโจมตีที่คุกคาม Blockchain networks เป็นสิ่งสำคัญสำหรับบุคคลใดก็ตามที่ถือหรือทำธุรกรรมในสกุลเงินดิจิทัล แม้ว่าโปรโตคอล Blockchain เองได้แสดงการรับแรงกระแทกอย่างน่าทึ่ง — Bitcoin ไม่เคยถูกโจมตีอย่างสำเร็จในระดับโปรโตคอล — แต่ระบบนิเวศที่กว้างขึ่งของ wallets, exchanges, bridges และ smart contracts ต้องเผชิญกับภัยคุกคามอย่างต่อเนื่อง

คู่มือนี้จัดประเภทหมวดหมู่หลักของการโจมตี Blockchain, อธิบายวิธีการทำงาน, ให้ตัวอย่างจากโลกแห่งความเป็นจริง และแนะนำสำหรับการปกป้องสินทรัพย์ของคุณ

การโจมตีในระดับโปรโตคอล

การโจมตีประเภทนี้มุ่งเป้าไปที่โปรโตคอล Blockchain เอง — กลไกการมีส่วนร่วม, โทโพโลยีเครือข่าย หรือรากฐานการเข้ารหัสลับ

การโจมตี 51% (Majority Attack)

การโจมตี 51% เกิดขึ้นเมื่อนิติบุคคลเดียวหรือกลุ่มประสานงานได้รับการควบคุมมากกว่า 50% ของ hash power ของเครือข่าย Proof of Work (หรือมากกว่า 33%/67% ของ stake ในเครือข่าย Proof of Stake ขึ้นอยู่กับประเภทการโจมตี)

วิธีการทำงาน:

  1. ผู้โจมตีสะสม hash power ที่มีข้าง, โดยสร้าง/ซื้อฮาร์ดแวร์การขุด หรือเช่า hash power จากบริการเช่น NiceHash
  2. ผู้โจมตีเริ่มขุดเชนส่วนตัว — ส่วนแยก Blockchain ที่มีเฉพาะพวกเขาเท่านั้น
  3. บนเชนสาธารณะ, ผู้โจมตีส่งสกุลเงินดิจิทัลไปยัง exchange และขายเป็นเงินฟิยต หรือสกุลเงินดิจิทัลอื่น
  4. เมื่อ exchange เครดิตการขาย, ผู้โจมตีออกอากาศเชนส่วนตัว ซึ่งยาวกว่า (มีการสะสมงานมากขึ้น) กว่าเชนสาธารณะ
  5. เครือข่ายยอมรับเชนที่ยาวกว่าเป็นเชนที่ถูกต้อง และธุรกรรมดั้งเดิมของผู้โจมตีหายไป — เงินกลับคืนไปยังกระเป๋า Wallet ของผู้โจมตี
  6. ผู้โจมตีมีการใช้จ่ายเหรียญสองครั้งอย่างมีประสิทธิผล: ครั้งหนึ่งบน exchange (ได้รับการชำระเงิน) และครั้งหนึ่งบนเชนส่วนตัว (เหรียญที่ส่งกลับ)

ต้นทุนของการโจมตี 51%:

เครือข่ายต้นทุนการโจมตี 1 ชั่วโมงโดยประมาณ (2026)
Bitcoin10+ พันล้านดอลลาร์ (ปฏิบัติไม่ได้เลย)
Ethereum (PoS)30+ พันล้านดอลลาร์ (ได้มา 33% ของ ETH ที่เก็บไว้)
Litecoin~500K-1M ดอลลาร์
Bitcoin Cash~100K-300K ดอลลาร์
Ethereum Classic~10K-50K ดอลลาร์

ตัวอย่างจากโลกแห่งความเป็นจริง:

  • Ethereum Classic (2019, 2020): ประสบการโจมตี 51% หลายครั้งส่งผลให้มีการใช้จ่ายสองครั้งนับล้าน
  • Bitcoin Gold (2018, 2020): ถูกโจมตีหลายครั้ง โดยการโจมตีหนึ่งครั้งส่งผลให้มีการใช้จ่ายสองครั้ง 70,000+ ดอลลาร์
  • Verge (2018): ถูกโจมตีหลายครั้งเนื่องจากการออกแบบ PoW ที่ใช้หลายอัลกอริทึม

ข้อมูลเชิงลึก: การโจมตี 51% เป็นภัยคุกคามหลักต่อห่วงโซ่ PoW ที่มีขนาดเล็ก Hash rate ของ Bitcoin มหาศาลจนทำให้การโจมตี 51% ไม่สามารถนำไปใช้ได้ทางเศรษฐกิจ สำหรับห่วงโซ่ PoS ขนาดใหญ่เช่น Ethereum ต้นทุนในการได้มาซึ่ง stake ที่เพียงพอ (และแน่นอนว่าจะสูญเสียมันผ่าน slashing) ทำให้การโจมตีไม่สามารถนำไปใช้ได้เช่นเดียวกัน

การโจมตีแบบใช้จ่ายสองครั้ง

การใช้จ่ายสองครั้ง — การใช้เงินเดียวกันสำหรับธุรกรรมที่แตกต่างกันสองครั้ง — เป็นปัญหาพื้นฐานที่ Blockchain ได้รับการออกแบบเพื่อแก้ไข แม้ว่าการโจมตี 51% เป็นวิธีหนึ่งในการใช้จ่ายสองครั้ง เทคนิคอื่น ๆ ก็มีอยู่สำหรับจำนวนที่น้อยกว่า:

Race attack (zero-confirmation):

  1. ผู้โจมตีส่งธุรกรรมไปยังพ่อค้าด้วยค่าธรรมเนียมต่ำ
  2. ในเวลาเดียวกัน, ผู้โจมตีส่งธุรกรรมขัดแย้ง (ใช้จ่ายเหรียญเดียวกัน) ให้กับตัวเอง ด้วยค่าธรรมเนียมที่สูงขึ้น
  3. หากพ่อค้ายอมรับการชำระเงินก่อนยืนยัน, ธุรกรรมค่าธรรมเนียมที่สูงกว่าจะมีแนวโน้มที่จะได้รับการยืนยันก่อน และการชำระเงินของพ่อค้าจะหายไป

Finney attack:

  1. คนขุด pre-mines บล็อกที่มีธุรกรรมส่งเหรียญให้กับตัวเอง
  2. จากนั้น, คนขุดส่งธุรกรรมขัดแย้งไปยังพ่อค้า
  3. หลังจากได้รับสินค้า/บริการ, คนขุดปล่อย pre-mined block ทำให้การชำระเงินของพ่อค้าไม่มีผล

การป้องกัน: เสมอรอให้ block confirmations เพียงพอก่อนที่จะพิจารณาธุรกรรมว่าเป็นที่สุดท้าย สำหรับจำนวนที่มีนัยสำคัญ, Bitcoin confirmations 6 ครั้งหรือการสิ้นสุดของ Ethereum (~15 นาที) ให้การป้องกันที่ชัดเจน

การขุดแบบเห็นแก่ตัว

การขุดแบบเห็นแก่ตัวเป็นกลยุทธ์ที่คนขุดที่มี hash power มีนัยสำคัญ (แต่ไม่ใช่ข้าง) ปกปิดบล็อกที่ค้นพบ และปล่อยพวกมันโดยเชิงอย่างชาญฉลาดเพื่อเสียเวลาของคนขุดที่มีความซื่อสัตย์

วิธีการทำงาน:

  1. คนขุดแบบเห็นแก่ตัวค้นพบบล็อก แต่ไม่ออกอากาศทันที
  2. ในขณะที่คนขุดที่มีความซื่อสัตย์เสียเวลาผ้าเบสสายโต้งเก่า, คนขุดแบบเห็นแก่ตัวจะสร้างเชนส่วนตัวของตัวเอง
  3. คนขุดแบบเห็นแก่ตัวปล่อยบล็อกโดยชาญฉลาดเพื่อลบออกจากงานของคนขุดที่มีความซื่อสัตย์, ยึดส่วนแบ่งที่มีมูลค่าสูงกว่าของรางวัลบล็อก

ผลกระทบ: งานวิจัยแสดงให้เห็นว่าการขุดแบบเห็นแก่ตัวสามารถทำกำไรได้สำหรับคนขุดที่มี hash power เพียง 25-33% ของทั้งหมด (เกณฑ์ที่แน่นอนขึ้นอยู่กับการเชื่อมต่อเครือข่ายของคนขุด) อย่างไรก็ตาม ในทางปฏิบัติ, การขุดแบบเห็นแก่ตัวไม่ได้เป็นปัญหาที่สำคัญบนเครือข่ายหลัก เนื่องจากกลยุทธ์นี้สามารถตรวจหาได้, มีความเสี่ยง (เชนส่วนตัวสามารถลบออกได้) และแรงจูงใจทางเศรษฐกิจส่วนใหญ่สนับสนุนการขุดที่มีความซื่อสัตย์

การโจมตี Sybil

การโจมตี Sybil เกี่ยวข้องกับการสร้างตัวตนปลอมมากมาย (โหนด) เพื่อให้ได้อิทธิพลที่ไม่สมดุลต่อเครือข่าย

วิธีการทำงาน:

  1. ผู้โจมตีสร้างโหนดปลอมนับพันบนเครือข่าย Blockchain
  2. โหนดเหล่านี้ล้อมรอบโหนดที่มีความซื่อสัตย์, ควบคุมมุมมองของเหยื่อต่อเครือข่าย
  3. จากนั้นผู้โจมตีสามารถตัดสินการทำธุรกรรม, ให้ข้อมูลเท็จ, หรือรบกวนการสื่อสารของเครือข่ายแบบ peer-to-peer

การป้องกัน: กลไกการมีส่วนร่วมของ Blockchain ได้รับการออกแบบโดยเฉพาะเพื่อป้องกันการโจมตี Sybil การสร้างโหนดปลอมใน PoW ไม่มีประโยชน์หากไม่มี hash power — แต่ละโหนดต้องพิสูจน์งานเพื่อสนับสนุนการมีส่วนร่วม ใน PoS, ผู้ตรวจสอบแต่ละคนต้องเก็บทุนจริงไว้ ต้นทุนของการเรียกใช้การโจมตี Sybil บน Blockchain ที่ออกแบบมาอย่างดีคือต้นทุนของการได้มาซึ่งทรัพยากร (hash power หรือ stake) ที่จำเป็นสำหรับการมีส่วนร่วมในการมีส่วนร่วม

การโจมตี Eclipse

การโจมตี Eclipse มุ่งเป้าไปที่โหนดเฉพาะแทนที่จะเป็นเครือข่ายทั้งหมด, แยกตัวจากเพื่อนที่มีความซื่อสัตย์

วิธีการทำงาน:

  1. ผู้โจมตีระบุเพื่อนการเชื่อมต่อของโหนดเป้าหมาย
  2. ผู้โจมตีท่วมเป้าหมายด้วยคำขอการเชื่อมต่อจากโหนดที่ถูกควบคุมโดยผู้โจมตี
  3. การเชื่อมต่อของเพื่อนเป้าหมายจะถูกแทนที่ค่อย ๆ ด้วยโหนดที่ถูกควบคุมโดยผู้โจมตี
  4. เมื่อ eclipsed, เป้าหมายจะเห็นเฉพาะเวอร์ชันของ Blockchain ของผู้โจมตี
  5. ผู้โจมตีสามารถให้ธุรกรรมเท็จแก่เป้าหมาย, หน่วงเวลา หรือตัดสินข้อมูล, หรืออำนวยความสะดวกในการโจมตีใช้จ่ายสองครั้งต่อเหยื่อ eclipsed

ผลกระทบในโลกแห่งความเป็นจริง: การโจมตี Eclipse ได้ถูกสาธิตในเอกสารวิจัยต่อโหนด Bitcoin และ Ethereum พวกมันอันตรายที่สุดสำหรับไคลเอนต์ที่มีน้ำหนักเบา ซึ่งเชื่อมต่อกับเพื่อนไม่กี่คน

การป้องกัน: การใช้โหนดเต็ม ด้วยการเชื่อมต่อเพื่อนที่หลากหลาย, ใช้แหล่งข้อมูลหลายแหล่งเพื่อตรวจสอบสถานะของเชน, และรักษาการเชื่อมต่อเพื่อนที่คงที่กับโหนดที่น่าเชื่อถือ

การโจมตีระยะยาว (PoS specific)

ในระบบ Proof of Stake, การโจมตีระยะยาวใช้ประโยชน์จากข้อเท็จจริงที่ว่าคีย์ของผู้ตรวจสอบเก่าอาจพร้อมใช้งาน (ผ่านการรั่วไหลของคีย์, วิศวกรรมสังคม, หรือการซื้อจากผู้ตรวจสอบที่ออกจากระบบ)

วิธีการทำงาน:

  1. ผู้โจมตีได้รับคีย์ส่วนตัวของผู้ตรวจสอบที่ใช้งานอยู่ในจุดก่อนหน้าในประวัติของเชน
  2. ผู้โจมตีสร้างประวัติเชนทางเลือกเริ่มต้นจากบล็อกในอดีต
  3. เนื่องจากไม่มีต้นทุนทางกายภาพในการ "re-staking" ในอดีต (ซึ่งแตกต่างจาก PoW, ซึ่งต้องใช้ไฟฟ้าในการขุดใหม่) ผู้โจมตีสามารถสร้างเชนที่เสริมมาตรฐานได้ราคาถูก

การป้องกัน: ระบบ PoS สมัยใหม่ลดอันตรายจากการโจมตีระยะยาวผ่าน:

  • Weak subjectivity checkpoints: โหนดบันทึกสถานะของเชนเป็นระยะ ๆ และการแยก (fork) ที่เก่ากว่าช่วงจุดตรวจสอบจะถูกปฏิเสธโดยอัตโนมัติ
  • Social consensus: โหนดใหม่ขอสถานะเชนปัจจุบันจากแหล่งชุมชนที่น่าเชื่อถือ
  • Key deletion: ผู้ตรวจสอบได้รับการส่งเสริมให้ลบคีย์ลงนามเก่าหลังจากออกจากระบบ

การโจมตีในระดับเครือข่าย

BGP Hijacking

Border Gateway Protocol (BGP) ควบคุมวิธีการเดินทางของการจราจรอินเทอร์เน็ตระหว่างเครือข่าย การขโมย BGP เปลี่ยนเส้นทางการจราจรอินเทอร์เน็ตผ่านเครือข่ายที่ถูกควบคุมโดยผู้โจมตี

ผลกระทบต่อ Blockchain: ผู้โจมตีที่ขโมย BGP ของการจราจรระหว่างโหนด Blockchain สามารถหน่วงเวลาการแพร่กระจายบล็อก, แบ่งเครือข่าย, หรือสกัดและแก้ไขการสื่อสารระหว่างโหนด

ตัวอย่างจากโลกแห่งความเป็นจริง: งานวิจัยโดย ETH Zurich (2017) แสดงให้เห็นว่าการขโมย BGP ของผู้ให้บริการอินเทอร์เน็ตเพียงไม่กี่แห่งสามารถแบ่งเครือข่าย Bitcoin ได้ ในปี 2018 เหตุการณ์ BGP ที่น่าสงสัยเปลี่ยนเส้นทางการจราจรที่มีจุดหมายไปยังบริการ Amazon Route 53 DNS ทำให้เกิดการขโมย ~150,000 ดอลลาร์ใน Ethereum

Time-Jacking

ด้วยการจัดการการรับรู้เวลาของโหนด, ผู้โจมตีสามารถทำให้มันยอมรับบล็อกด้วยแสตมป์เวลาที่ไม่ถูกต้อง, อาจจะแยกตัวออกจากเครือข่ายที่มีความซื่อสัตย์

การป้องกัน: ไคลเอนต์ Blockchain ส่วนใหญ่นำเข้ากฎการตรวจสอบแสตมป์เวลาที่เข้มงวด และไม่ได้อาศัยเฉพาะแสตมป์เวลาที่รายงานโดยเพื่อน

Denial of Service (DoS)

การท่วมโหนดหรือเครือข่ายด้วยคำขอเพื่อเอาชนะความจุ ในขณะที่เครือข่าย Blockchain มีความต้านทานต่อ DoS โดยเนื้อแท้ (ค่าธรรมเนียมการทำธุรกรรมทำให้สแปมมีค่าแพง) โหนดแยก หรือบริการ (exchanges, block explorers, RPC providers) สามารถเป็นเป้าหมายได้

Solana ประสบเหตุการณ์หยุดชะงักของเครือข่ายหลายครั้งโดยส่วนหนึ่งได้อ้างถึงการท่วมธุรกรรมจากกิจกรรมโบต, เน้นย้ำว่าห่วงโซ่ที่มีความจุสูงอาจมีความเสี่ยงต่อการโจมตีแบบสแปมที่ไม่มีอยู่บนเชนที่ถูก จำกัด ด้วยค่าธรรมเนียมเช่น Bitcoin

การโจมตี Smart Contract

ความเสี่ยงของ smart contract แสดงถึงแหล่งที่มาของการสูญเสียเงินที่มากที่สุดในระบบนิเวศของสกุลเงินดิจิทัล ดู Smart Contracts Guide ของเราสำหรับการครอบคลุมที่ละเอียด

การโจมตี Reentrancy

วิธีการทำงาน: สัญญาที่เป็นอันตรายเรียกกลับไปยังสัญญาที่เสี่ยงต่อเวลาดำเนินการ, ก่อนที่สัญญาเหยื่อจะอัปเดตสถานะ

ตัวอย่างที่โดดเด่น: DAO hack (2016) — 60 ล้านดอลลาร์ถูกดึงออกจากกองทุนสมัครใจที่ใหญ่ที่สุดของ Ethereum

Flash Loan Attack

Flash loans คือสินเชื่อที่ไม่มีการจำนอง (uncollateralized) ที่ต้องยืมและชำระคืนภายในธุรกรรมเดียว ผู้โจมตีใช้มันเพื่อควบคุมทุนจำนวนมากชั่วคราวเพื่อจัดการโปรโตคอล DeFi

รูปแบบทั่วไป:

  1. ยืม millions ในสกุลเงินดิจิทัลผ่าน flash loan (ไม่ต้องจำนอง)
  2. ใช้เงินที่ยืมมาเพื่อจัดการ price oracle หรือ liquidity pool
  3. ใช้ประโยชน์จากราคาที่ถูกจัดการเพื่อสกัดค่าจากโปรโตคอลที่เสี่ยง
  4. ชำระคืน flash loan
  5. เก็บกำไรไว้

ขนาดของความเสียหาย: Flash loan attacks ได้ทำให้เกิดการสูญเสียนับร้อยล้านทั่ว DeFi ตัวอย่างที่โดดเด่น ได้แก่ Euler Finance (197 ล้านดอลลาร์, 2023), Cream Finance (130 ล้านดอลลาร์, 2021) และ Pancake Bunny (45 ล้านดอลลาร์, 2021)

การจัดการ Oracle

Smart contracts ที่อาศัยข้อเสนอแนะข้อมูลภายนอก (oracles) มีความเสี่ยงหากสามารถจัดการ oracle ได้ ผู้โจมตีใช้ประโยชน์จากโทเค็นที่มีการซื้อขายเบา ๆ หรือ pools ที่มีสภาพคล่องต่ำเพื่อสร้างการเคลื่อนไหวของราคาที่เทียม ซึ่งเรียกใช้เงื่อนไขที่ดำเนินการตามแนวใจในโปรโตคอลการให้ยืม, แพลตฟอร์มสินทรัพย์สังเคราะห์ หรือตลาดอนุพันธ์

การโจมตีด้านการปกครอง

โปรโตคอล DeFi บางตัวให้ผู้ถือโทเค็นโหวตสำหรับการเปลี่ยนแปลงโปรโตค