ในช่วงปีที่ผ่านมา มูลนิธิ Ethereum ได้ขยายทีมนักวิจัยและวิศวกรด้านความปลอดภัยโดยเฉพาะให้เติบโตขึ้นอย่างมาก สมาชิกเข้าร่วมจากหลากหลายสาขา ตั้งแต่การเข้ารหัส สถาปัตยกรรมความปลอดภัย การจัดการความเสี่ยง การพัฒนาช่องโหว่ รวมถึงเคยทำงานในทีมสีแดงและสีน้ำเงิน สมาชิกมาจากหลากหลายสาขาและทำงานด้านการรักษาความปลอดภัยทุกอย่าง ตั้งแต่บริการอินเทอร์เน็ตที่เราทุกคนต่างพึ่งพาในแต่ละวัน ไปจนถึงระบบการดูแลสุขภาพแห่งชาติและธนาคารกลาง
เมื่อ The Merge เข้ามาใกล้ ทีมงานจะทุ่มเทความพยายามอย่างมากในการวิเคราะห์ ตรวจสอบ และค้นคว้า Consensus Layer ในรูปแบบต่างๆ เช่นเดียวกับ The Merge เอง ตัวอย่างงานสามารถดูได้ด้านล่าง
การตรวจสอบการใช้งานของลูกค้า 🛡️
สมาชิกในทีมตรวจสอบการใช้งานไคลเอนต์ต่างๆ ด้วยเครื่องมือและเทคนิคที่หลากหลาย
การสแกนอัตโนมัติ 🤖
การสแกนอัตโนมัติสำหรับฐานโค้ดมีจุดมุ่งหมายเพื่อตรวจจับผลลัพธ์ที่คาดไม่ถึง เช่น ช่องโหว่ด้านการอ้างอิง (และช่องโหว่ที่อาจเกิดขึ้น) หรือพื้นที่ที่ต้องปรับปรุงในโค้ด เครื่องมือบางส่วนที่ใช้ในการวิเคราะห์แบบคงที่ ได้แก่ CodeQL, semgrep, ErrorProne และ Nosy
เนื่องจากมีการใช้ภาษาที่แตกต่างกันมากมายระหว่างไคลเอนต์ เราจึงใช้ทั้งเครื่องสแกนแบบทั่วไปและแบบเฉพาะภาษาสำหรับฐานโค้ดและรูปภาพ สิ่งเหล่านี้เชื่อมโยงกันผ่านระบบที่วิเคราะห์และรายงานผลการค้นพบใหม่จากเครื่องมือทั้งหมดไปยังช่องทางที่เกี่ยวข้อง การสแกนอัตโนมัติเหล่านี้ทำให้สามารถรับรายงานเกี่ยวกับปัญหาที่ผู้ไม่หวังดีอาจพบได้อย่างง่ายดายได้อย่างรวดเร็ว จึงเพิ่มโอกาสในการแก้ไขปัญหาได้ก่อนที่จะถูกใช้ประโยชน์
การตรวจสอบด้วยตนเอง 🔨
การตรวจสอบส่วนประกอบของสแต็กด้วยตนเองก็เป็นเทคนิคที่สำคัญเช่นกัน ความพยายามเหล่านี้รวมถึงการตรวจสอบการพึ่งพาร่วมกันที่สำคัญ (BLS), libp2p, ฟังก์ชันใหม่ในฮาร์ดฟอร์ก (เช่น คณะกรรมการการซิงค์ใน Altair), การตรวจสอบอย่างละเอียดในการใช้งานไคลเอนต์เฉพาะ หรือการตรวจสอบ L2 และบริดจ์
นอกจากนี้ เมื่อมีการรายงานช่องโหว่ผ่าน โครงการ Ethereum Bug Bountyนักวิจัยสามารถตรวจสอบปัญหาต่างๆ กับลูกค้าทั้งหมดเพื่อดูว่าพวกเขาได้รับผลกระทบจากปัญหาที่รายงานด้วยหรือไม่
การตรวจสอบบุคคลที่สาม 🧑🔧
บางครั้ง บริษัทภายนอกจะเข้ามาตรวจสอบส่วนประกอบต่างๆ การตรวจสอบของบริษัทภายนอกจะใช้เพื่อให้บุคคลภายนอกตรวจสอบลูกค้ารายใหม่ ข้อกำหนดโปรโตคอลที่อัปเดต การอัปเกรดเครือข่ายที่กำลังจะมีขึ้น หรือสิ่งอื่นๆ ที่ถือว่ามีมูลค่าสูง
ระหว่างการตรวจสอบของบุคคลที่สาม นักพัฒนาซอฟต์แวร์และนักวิจัยด้านความปลอดภัยของทีมของเราจะร่วมมือกับผู้ตรวจสอบเพื่อให้ความรู้และช่วยเหลือตลอดเวลา
ฟัซซิ่ง 🦾
มีความพยายามทดสอบฟัซเซอร์อย่างต่อเนื่องมากมายที่นำโดยนักวิจัยด้านความปลอดภัยของเรา สมาชิกในทีมลูกค้า รวมถึงผู้มีส่วนสนับสนุนในระบบนิเวศน์ เครื่องมือส่วนใหญ่เป็นโอเพ่นซอร์สและทำงานบนโครงสร้างพื้นฐานเฉพาะ ฟัซเซอร์มุ่งเป้าไปที่พื้นผิวการโจมตีที่สำคัญ เช่น ตัวจัดการ RPC การเปลี่ยนสถานะ และการนำการเลือกฟอร์กไปใช้ เป็นต้น ความพยายามเพิ่มเติมได้แก่ Nosy Neighbor (การสร้างฟัซเซอร์อัตโนมัติตาม AST) ซึ่งใช้ CI และสร้างจากไลบรารี Go Parser
การจำลองและทดสอบระดับเครือข่าย 🕸️
นักวิจัยด้านความปลอดภัยในทีมของเราสร้างและใช้เครื่องมือเพื่อจำลอง ทดสอบ และโจมตีสภาพแวดล้อมเครือข่ายที่ควบคุม เครื่องมือเหล่านี้สามารถสร้างเครือข่ายทดสอบภายในและภายนอก (“เครือข่ายโจมตี”) ที่ทำงานภายใต้การกำหนดค่าต่างๆ ได้อย่างรวดเร็วเพื่อทดสอบสถานการณ์พิเศษที่ไคลเอนต์ต้องได้รับการเสริมความแข็งแกร่ง (เช่น DDOS การแยกส่วนเพียร์ การเสื่อมคุณภาพของเครือข่าย)
เครือข่ายโจมตีมอบสภาพแวดล้อมที่มีประสิทธิภาพและปลอดภัยสำหรับการทดสอบแนวคิด/การโจมตีต่างๆ อย่างรวดเร็วในสภาพแวดล้อมส่วนตัว เครือข่ายโจมตีส่วนตัวไม่สามารถถูกตรวจสอบโดยผู้โจมตีที่อาจเกิดขึ้นได้ และช่วยให้เราสามารถทำลายสิ่งต่างๆ ได้โดยไม่รบกวนประสบการณ์การใช้งานของเครือข่ายทดสอบสาธารณะ ในสภาพแวดล้อมเหล่านี้ เรามักใช้เทคนิคที่ก่อกวน เช่น การหยุดเธรดและการแบ่งเครือข่ายเป็นประจำ เพื่อขยายสถานการณ์ให้กว้างขึ้น
การวิจัยความหลากหลายของลูกค้าและโครงสร้างพื้นฐาน 🔬
ความหลากหลายของลูกค้าและโครงสร้างพื้นฐาน ได้รับความสนใจจากชุมชนเป็นอย่างมาก เรามีเครื่องมือสำหรับตรวจสอบความหลากหลายจากไคลเอนต์ ระบบปฏิบัติการ ISP และสถิติของโปรแกรมรวบรวมข้อมูล นอกจากนี้ เรายังวิเคราะห์อัตราการมีส่วนร่วมของเครือข่าย ความผิดปกติของเวลารับรอง และสุขภาพเครือข่ายโดยทั่วไป ข้อมูลนี้ แชร์ ข้าม หลายรายการ ตำแหน่งเพื่อเน้นย้ำความเสี่ยงที่อาจเกิดขึ้น
โครงการ Bug Bounty 🐛
ปัจจุบัน EF มีโปรแกรมล่ารางวัลสำหรับตรวจจับจุดบกพร่องอยู่ 2 โปรแกรม โดยโปรแกรมหนึ่งมุ่งเป้าไปที่ ชั้นการดำเนินการ และอีกอันมุ่งเป้าไปที่ ชั้นฉันทามติสมาชิกของทีมรักษาความปลอดภัยจะคอยตรวจสอบรายงานที่เข้ามา ทำงานเพื่อยืนยันความถูกต้องและผลกระทบ และตรวจสอบปัญหากับลูกค้ารายอื่น ๆ เมื่อไม่นานนี้ เราได้เผยแพร่การเปิดเผยข้อมูลทั้งหมด ช่องโหว่ที่รายงานก่อนหน้านี้–
เร็วๆ นี้ โปรแกรมทั้งสองนี้จะรวมเป็นหนึ่งเดียว แพลตฟอร์มทั่วไปจะได้รับการปรับปรุง และจะมีการมอบรางวัลเพิ่มเติมให้กับนักล่าเงินรางวัล ติดตามข้อมูลเพิ่มเติมเกี่ยวกับเรื่องนี้เร็วๆ นี้!
ความปลอดภัยในการปฏิบัติการ 🔒
การรักษาความปลอดภัยในการปฏิบัติงานครอบคลุมความพยายามมากมายของ EF ตัวอย่างเช่น มีการตั้งค่าการติดตามทรัพย์สินซึ่งคอยตรวจสอบโครงสร้างพื้นฐานและโดเมนอย่างต่อเนื่องเพื่อหาช่องโหว่ที่ทราบ
การตรวจสอบเครือข่าย Ethereum 🩺
ระบบตรวจสอบเครือข่าย Ethereum ใหม่กำลังได้รับการพัฒนา ระบบนี้ทำงานคล้ายกับ สยาม และสร้างขึ้นเพื่อรับฟังและตรวจสอบเครือข่าย Ethereum สำหรับกฎการตรวจจับที่กำหนดไว้ล่วงหน้า รวมถึงการตรวจจับความผิดปกติแบบไดนามิกที่สแกนหาเหตุการณ์ที่ผิดปกติ เมื่อติดตั้งแล้ว ระบบนี้จะแจ้งเตือนล่วงหน้าเกี่ยวกับการหยุดชะงักของเครือข่ายที่กำลังเกิดขึ้นหรือกำลังจะเกิดขึ้น
การวิเคราะห์ภัยคุกคาม 🩻
ทีมของเราได้ดำเนินการวิเคราะห์ภัยคุกคามโดยเน้นที่ The Merge เพื่อระบุพื้นที่ที่สามารถปรับปรุงได้ในแง่ของความปลอดภัย ภายในงานนี้ เราได้รวบรวมและตรวจสอบแนวทางปฏิบัติด้านความปลอดภัยสำหรับการตรวจสอบโค้ด ความปลอดภัยของโครงสร้างพื้นฐาน ความปลอดภัยของนักพัฒนา ความปลอดภัยของการสร้าง (DAST, SCA และ SAST ที่สร้างไว้ใน CI เป็นต้น) ความปลอดภัยของที่เก็บข้อมูล และอื่นๆ จากทีมลูกค้า นอกจากนี้ การวิเคราะห์นี้ยังสำรวจถึงวิธีป้องกันข้อมูลที่ผิดพลาด ซึ่งอาจก่อให้เกิดภัยพิบัติ และวิธีที่ชุมชนอาจฟื้นตัวในสถานการณ์ต่างๆ นอกจากนี้ ความพยายามบางอย่างที่เกี่ยวข้องกับการฝึกการกู้คืนจากภัยพิบัติก็มีความน่าสนใจเช่นกัน
กลุ่มความปลอดภัยไคลเอนต์ Ethereum 🤝
เมื่อการผสานกำลังใกล้เข้ามา เราได้จัดตั้งกลุ่มความปลอดภัยซึ่งประกอบด้วยสมาชิกจากทีมลูกค้าที่ทำงานทั้งในเลเยอร์การดำเนินการและเลเยอร์ฉันทามติ กลุ่มนี้จะประชุมเป็นประจำเพื่อหารือเกี่ยวกับเรื่องต่างๆ ที่เกี่ยวข้องกับความปลอดภัย เช่น ช่องโหว่ เหตุการณ์ แนวทางปฏิบัติที่ดีที่สุด งานด้านความปลอดภัยที่กำลังดำเนินการ ข้อเสนอแนะ ฯลฯ
การตอบสนองต่อเหตุการณ์ 🚒
ความพยายามของ Blue Crew ช่วยเชื่อมช่องว่างระหว่างเลเยอร์การดำเนินการและเลเยอร์ฉันทามติในขณะที่การรวมกำลังใกล้เข้ามา ห้องสงครามสำหรับการตอบสนองต่อเหตุการณ์ได้ผลดีในอดีต โดยการสนทนาจะเกิดขึ้นกับผู้ที่เกี่ยวข้องในระหว่างเหตุการณ์ แต่การรวมกำลังทำให้เกิดความซับซ้อนมากขึ้น มีการทำงานเพิ่มเติมเพื่อ (ตัวอย่างเช่น) แบ่งปันเครื่องมือ สร้างความสามารถในการแก้ไขข้อบกพร่องและคัดแยกเพิ่มเติม และสร้างเอกสาร
ขอบคุณและร่วมสนุก💪
นี่คือความพยายามบางส่วนที่เกิดขึ้นในปัจจุบันในรูปแบบต่างๆ และเรารอคอยที่จะแบ่งปันกับคุณอีกมากมายในอนาคต!
หากคุณคิดว่าคุณพบช่องโหว่ด้านความปลอดภัยหรือจุดบกพร่องใดๆ โปรดส่งรายงานจุดบกพร่องไปที่ ชั้นการดำเนินการ หรือ ชั้นความเห็นพ้องต้องกัน โปรแกรมล่ารางวัลสำหรับนักจับผิด! 💜🦄