กว่า 50 ปีหลังจากข้อความระหว่างเครือข่ายครั้งแรก เครือข่ายแบบเพียร์ทูเพียร์ยังคงเป็นสัตว์ร้ายที่หายากในป่าของอินเทอร์เน็ต ความสามารถของ Bitcoin ในการจัดหาระบบการเงินแบบเปิดนั้นขึ้นอยู่กับสถาปัตยกรรมแบบเพียร์ทูเพียร์ และทั่วทั้งพื้นผิวการโจมตีนั้นก็คือเลเยอร์เครือข่าย ซึ่งเป็นวิธีที่เพื่อนร่วมงานค้นพบและเชื่อมต่อถึงกัน ซึ่งเป็นกลุ่มที่มีความเสี่ยงมากที่สุด มีปัญหาหลักสองประการที่อาจเกิดขึ้นได้: โปรโตคอลเพียร์ของ Bitcoin เอง และโปรโตคอลอินเทอร์เน็ตที่โปรโตคอลของ Bitcoin ขึ้นอยู่กับ ในแง่นี้ Core มีหน้าที่สองประการในการป้องกันเวกเตอร์ Denial of Service (DOS) ที่สามารถนำมาใช้ในทางที่ผิดระหว่างโหนด และช่วยให้โหนดสามารถสื่อสารได้อย่างปลอดภัยในสภาพแวดล้อมที่เป็นปฏิปักษ์ในวงกว้างซึ่งก็คืออินเทอร์เน็ต
พีทูพี
“รัฐบาลเก่งในการตัดเครือข่ายที่ควบคุมจากส่วนกลางอย่าง Napster ออก แต่เครือข่าย P2P ล้วนๆ เช่น Gnutella และ Tor ดูเหมือนจะเป็นของตัวเอง”
– ซาโตชิ 7 พ.ย. 2551 (1)
โปรโตคอล P2P ครอบคลุมวิธีที่โหนดแลกเปลี่ยนข้อความเกี่ยวกับธุรกรรม บล็อก และเพียร์อื่นๆ การแลกเปลี่ยนข้อมูลนี้จำเป็นก่อนที่ธุรกรรมหรือการตรวจสอบฉันทามติใดๆ จะเกิดขึ้นได้ และด้วยเหตุนี้จึงเป็นข้อกังวลหลัก
มีข้อบกพร่องหลายประการในพื้นที่นี้ในช่วงหลายปีที่ผ่านมา ตัวอย่างเช่น ในปี 2560 ช่องโหว่เซิร์ฟเวอร์ SOCKS ที่เป็นอันตรายได้รับการแก้ไขและเปิดเผย (2) ช่องโหว่ “บัฟเฟอร์ล้น” ในทางทฤษฎีอาจนำไปสู่การโจมตีต่างๆ มากมาย: ทำให้โหนดเสียหาย ปล่อยเพย์โหลดที่เป็นอันตราย หรือแก้ไขข้อมูลบนโหนด ในปี 2020 มีการรายงานช่องโหว่ที่มีความรุนแรงสูงและแพตช์โดยที่เพียร์ระยะไกลสามารถรับที่อยู่ที่ถูกแบน เพิ่มแบนลิสต์แบบทวีคูณ และดังนั้นจึงเป็น DOS บนโหนด (3) ช่องโหว่นี้ไม่ได้รับการเปิดเผยจนถึงปี 2024 จุดบกพร่องนี้ถูกทำเครื่องหมายอย่างถูกต้องว่าเป็น “ความรุนแรงสูง” เนื่องจากการโจมตีนั้นดำเนินการได้ง่าย ผลกระทบของมันส่งผลให้สูญเสียฟังก์ชันสำหรับโหนด และมีเงื่อนไขเบื้องต้นบางประการที่จำเป็นในการทำให้มันทำงานได้ สิ่งเหล่านี้เป็นข้อบกพร่องประเภทที่ทำให้นักพัฒนา Core ตื่นกลางดึก และเหตุใดจึงขอแนะนำอย่างยิ่งให้อัปเดตโหนดของคุณเป็นเวอร์ชันที่ยังคงรักษาไว้ (Core เวอร์ชันเก่าไม่ได้รับการดูแลรักษา/อัปเดตอย่างจริงจัง)
เครือข่ายแบบกระจายนี้ที่เราเรียกว่า Bitcoin ยังคงค่อนข้างเล็ก: จำนวนโหนด clearnet อยู่ที่ประมาณ 20,000 โหนด และถึงแม้จะสมมติว่ามีโหนด TOR ขนาดใหญ่ 100,000 โหนด เราก็ยังคงมีเครือข่ายขนาดเล็กที่เฝ้าระวังได้ง่าย เมื่อเร็วๆ นี้ Daniela Brozzoni และ naiyoma แสดงให้เห็น (4) ว่าหากโหนดทำงานด้วยทั้ง clearnet และ Tor การแมปที่อยู่ IPv4 และ Tor ของโหนดนั้นไม่ใช่เรื่องเล็กน้อย มีความเป็นไปได้มากที่หน่วยงานข่าวกรองและบริษัทวิเคราะห์ห่วงโซ่จะทำสิ่งนี้อยู่แล้ว จากนั้นจะสังเกตได้ง่ายว่าโหนดใดเผยแพร่ธุรกรรมใดก่อน โดยหัก IP ดั้งเดิมของธุรกรรม และตำแหน่งที่ตั้งด้วย แม้ว่านี่จะไม่ใช่จุดบกพร่องก็ตาม เนื่องจากโหนดไม่ได้ทำงานผิดพลาดหรือทำงานผิดปกติ จึงถือได้ว่าเป็นช่องโหว่ เนื่องจากโหนดนำเสนอวิธีการผูกที่อยู่ IP ที่กำหนดเข้ากับธุรกรรม
วิธีป้องกันสิ่งนี้อย่างมีประสิทธิผลยังคงเป็นคำถามเปิดอยู่
Badlands ของเว็บ
“เราสร้างคอมพิวเตอร์ของเราเหมือนที่เราสร้างเมืองของเรา เมื่อเวลาผ่านไป โดยไม่มีแผน อยู่เหนือซากปรักหักพัง” – เอลเลน อัลล์แมน (5)
Bitcoin ทำงานบนอินเทอร์เน็ต และความสามารถในการคงระบบกระจายและกระจายอำนาจนั้นขึ้นอยู่กับคุณสมบัติของอินเทอร์เน็ต น่าเสียดายที่สถาปัตยกรรมของอินเทอร์เน็ตที่เรารู้จักในปัจจุบันยังคงไม่ปลอดภัยอย่างยิ่ง โดยมีการโจมตีที่รู้จักเกิดขึ้นเป็นประจำ การโจมตีเหล่านี้ส่วนใหญ่ดำเนินการตรวจไม่พบจนกว่าจะเกิดความเสียหาย และนี่ยังไม่รวมถึงระบบการเฝ้าระวังที่แพร่กระจายอยู่ในอินเทอร์เน็ตในปัจจุบัน
เวกเตอร์การโจมตีที่เป็นที่รู้จักและใช้งานได้จริงที่สุดที่เกี่ยวข้องเรียกว่าการโจมตีแบบ eclipse โดยที่เพียร์ของโหนดเหยื่อล้วนเป็นอันตราย และป้อนมุมมองเฉพาะของห่วงโซ่หรือเครือข่ายไปยังโหนดของเหยื่อ การโจมตีระดับนี้เป็นพื้นฐานในระบบแบบกระจาย หากคุณควบคุมเพียร์ของโหนด คุณจะควบคุมการรับรู้ของเครือข่าย Ethan Heilman และผู้ทำงานร่วมกันนำเสนอหนึ่งในการโจมตีคราสเชิงปฏิบัติครั้งแรกบน Bitcoin ที่ USENIX 2015 (6) และในปี 2018 เอกสารการโจมตีของ Erebus บรรยายถึงการโจมตีคราสแบบ “ซ่อนเร้น” ผ่านระบบอัตโนมัติที่เป็นอันตราย (AS) (7)
การโจมตีเหล่านี้ใช้ประโยชน์จากจุดอ่อนในวิธีที่เครือข่ายอินเทอร์เน็ตสื่อสารระหว่างกันเป็นส่วนใหญ่ เช่น โทโพโลยีการกำหนดเส้นทาง AS หรือผ่านโปรโตคอลที่เรียกว่า Border Gateway Protocol (BGP) แม้ว่าจะมีความคิดริเริ่มอย่างต่อเนื่องในการรักษาความปลอดภัยโปรโตคอล BGP ได้แก่ BGPsec, RPKI แต่ทั้งสองมีข้อจำกัดที่เข้าใจกันดี และปล่อยให้ผู้ดูแลอินเทอร์เน็ตมองหาวิธีแก้ปัญหาที่แข็งแกร่งยิ่งขึ้น จนกว่าจะถึงตอนนั้น อินเทอร์เน็ตจะยังคงเป็นป่าตะวันตก
การวิเคราะห์ล่าสุดโดย cedarctic ที่ Chaincode Labs พบว่าโหนด Bitcoin อยู่ภายใน 4551 ASs ซึ่งเป็นส่วนย่อยที่ค่อนข้างเล็กของเครือข่ายส่วนประกอบที่ประกอบเป็นอินเทอร์เน็ต พวกเขาอธิบายชุดของการโจมตีที่สามารถนำไปสู่การโจมตี eclipse โดยประนีประนอม AS อัพสตรีมที่โหนดทำงานใน (8) การกระจายโหนดเล็กน้อยระหว่าง AS และความสัมพันธ์เฉพาะระหว่าง AS เหล่านี้จะสร้างเวกเตอร์การโจมตีที่เป็นเอกลักษณ์ แม้ว่าจะมีการแก้ไข แต่ก็ไม่ชัดเจนว่าเวกเตอร์การโจมตีนี้เข้าใจล่วงหน้าโดย Bitcoiners หรือฝ่ายตรงข้ามหรือไม่
การโจมตีใดๆ ที่ต้องอาศัยการโจมตี AS หนึ่งหรือหลายตัวต้องใช้ทรัพยากร การประสานงาน และทักษะในการบรรลุผล แม้ว่าจะไม่มีการรายงานการโจมตีประเภทนี้ที่ประสบความสำเร็จบนโหนด Bitcoin แต่การโจมตีดังกล่าวได้ถูกติดตั้งกับนักขุด (9), กระเป๋าเงิน (10), แพลตฟอร์มสลับ (11) และบริดจ์ (12) ได้สำเร็จ แม้ว่าเราจะไม่แก้ไขอินเทอร์เน็ต แต่เราสามารถติดตั้งโหนดด้วยเครื่องมือเพื่อดำเนินการในสภาพแวดล้อมที่ไม่เป็นมิตรนี้ได้
คลังแสงเครือข่าย
ด้านล่างนี้คือคุณสมบัติและฟังก์ชันบางอย่างที่ Bitcoin Core ได้พัฒนาหรือรวมการสนับสนุนไว้เพื่อติดอาวุธผู้ใช้จากการโจมตีระดับเครือข่าย:
TOR (เราเตอร์หัวหอม) เป็นเครือข่ายโอเวอร์เลย์ที่เน้นความเป็นส่วนตัวที่เก่าแก่ที่สุดที่รวมอยู่ใน Bitcoin Core มันสร้างการกระโดดระหว่างเครือข่ายเพื่อนแบบสุ่มเพื่อทำให้การรับส่งข้อมูลสับสน
v2การขนส่ง (13) เข้ารหัสการเชื่อมต่อระหว่างเพื่อน ซ่อนการรับส่งข้อมูลจากการสอดแนมและเซ็นเซอร์ จุดมุ่งหมายคือการขัดขวางผู้สังเกตการณ์เครือข่ายแฝงจากการสอดแนมเนื้อหาของการสื่อสารของคุณกับโหนดอื่น
I2P (โครงการอินเทอร์เน็ตที่มองไม่เห็น (14)) เป็นคุณสมบัติเสริมของ Core ซึ่งช่วยให้มีเลเยอร์เข้ารหัสเพิ่มเติมที่เป็นส่วนตัวสำหรับการเชื่อมต่อ มันเป็นเครือข่ายที่ไม่เปิดเผยตัวตนเหมือน Tor ซึ่งอาศัยเพื่อนเพื่อสร้างความสับสนการรับส่งข้อมูลระหว่างไคลเอนต์และเซิร์ฟเวอร์
ASmap (15) เป็นอีกหนึ่งคุณสมบัติเสริมของ Core ที่ใช้การบรรเทาการโจมตี Erebus ที่ผู้เขียนได้สรุปไว้ในรายงาน และนำไปใช้กับการโจมตีแบบ AS ทั้งหมด ด้วยการทำให้กลไกการเพียร์ริ่งของ Bitcoin ตระหนักถึง AS ที่เพียร์นั้นมาจากเพื่อให้แน่ใจว่ามีความหลากหลายในหมู่เพียร์เดียวกัน คราสจึงกลายเป็นเรื่องยากยิ่งขึ้นแบบทวีคูณ เนื่องจากผู้โจมตีจะต้องประนีประนอม AS จำนวนมาก ซึ่งไม่น่าเป็นไปได้สูงและแทบเป็นไปไม่ได้เลยหากไม่ถูกตรวจพบ Bitcoin Core รองรับการนำแผนที่ของเครือข่าย IP ไปยัง AS (AS-map) ของพวกเขาตั้งแต่ Core 20.0 และโครงการ Kartograf จะช่วยให้ผู้ใช้ทุกคนสามารถสร้าง ASmap ดังกล่าวได้อย่างง่ายดาย
เนื่องจากอินเทอร์เน็ตมีแนวโน้มที่จะยังคงเสี่ยงต่อการถูกโจมตีหลายครั้ง สิ่งหนึ่งที่เราทำได้คือการสังเกตพฤติกรรมของเพื่อนของเราเพื่อพยายามตรวจจับพฤติกรรมที่เป็นอันตราย นี่คือแรงผลักดันเบื้องหลัง โครงการผู้สังเกตการณ์ โดย 0xb10c (16) โดยจัดให้มีระบบการบันทึกตามจุดติดตาม eBPF เต็มรูปแบบ (วิธีการสังเกตการดำเนินการที่น้อยที่สุดในโปรแกรมที่ทำงานบนระบบปฏิบัติการ) เพื่อสังเกตกิจกรรมของโหนด รวมถึงพฤติกรรมของเพียร์ มันยังให้ทุกสิ่งที่คุณต้องการในการสร้างระบบบันทึกของคุณเอง
Bitcoin จะต้องแข็งแกร่ง
การรักษาความสามารถในการเชื่อมต่อกับเพื่อนฝูงและแลกเปลี่ยนข้อความเป็นองค์ประกอบสำคัญของสิ่งที่ทำให้ Bitcoin ติ๊ก
Bitcoin ทำงานในสภาพแวดล้อมที่เป็นปฏิปักษ์หลายมิติ ซึ่งภัยคุกคามจำนวนมากถูกสร้างขึ้นโดยข้อจำกัดของสถาปัตยกรรมของอินเทอร์เน็ตเอง หาก Bitcoin เพื่อความอยู่รอดและเจริญเติบโต นักพัฒนาและผู้ใช้จะต้องเรียนรู้ที่จะนำทางไปยังน่านน้ำที่แปลกประหลาดเหล่านี้
ราคาของเครือข่ายแบบเปิดคือการเฝ้าระวังชั่วนิรันดร์

อย่าพลาดโอกาสในการเป็นเจ้าของ ประเด็นหลัก — นำเสนอบทความที่เขียนโดย Core Builders หลายคนที่อธิบายโครงการที่พวกเขาทำด้วยตัวเอง!
งานชิ้นนี้เป็นจดหมายจากบรรณาธิการที่นำเสนอล่าสุด พิมพ์ นิตยสาร Bitcoin ฉบับ The Core Problem เรากำลังแชร์แนวคิดนี้ที่นี่เพื่อเป็นการดูแนวคิดต่างๆ ที่ได้รับการสำรวจในฉบับเต็มตั้งแต่เนิ่นๆ
(0) https://internet.mit.edu/gtmarx/www/join.html
(1) https://satoshi.nakamotoinstitute.org/emails/cryptography/4/
(2) https://bitcoincore.org/en/2019/11/08/CVE-2017-18350/
(3) https://bitcoincore.org/en/2024/07/03/disclose-unbounded-banlist/
(4) https://delvingbitcoin.org/t/fingerprinting-nodes-via-addr-requests/1786/
(5) https://en.wikiquote.org/wiki/Ellen_Ullman
(6) https://www.usenix.org/system/information/convention/usenixsecurity15/sec15-paper-heilman.pdf
(7) https://ihchoi12.github.io/belongings/tran2020stealthier.pdf
(8) https://delvingbitcoin.org/t/eclipsing-bitcoin-nodes-with-bgp-interception-attacks/1965
(9) https://www.theregister.com/2014/08/07/bgp_bitcoin_mining_heist/
(10) https://www.theverge.com/2018/4/24/17275982/myetherwallet-hack-bgp-dns-hijacking-stolen-ethereum
(11) https://medium.com/s2wblog/post-mortem-of-klayswap-incident-through-bgp-hijacking-en-3ed7e33de600
(12) www.coinbase.com/weblog/celer-bridge-incident-analysis
(13) https://bitcoinops.org/en/matters/v2-p2p-transport/
(14) https://geti2p.internet/en/
(15) https://asmap.org
(16) https://peer.observer
(13) https://github.com/asmap/kartograf
