แฮกเกอร์ใช้คุณสมบัติของโปรโตคอล OpenPGP ที่รู้จักกันมานานกว่าสิบปี
เราบอกคุณว่าประเด็นคืออะไรและเหตุใดพวกเขาจึงไม่สามารถปิดมันได้
/Unsplash/
ปัญหาเครือข่าย
กลางเดือนมิถุนายนไม่ทราบ
แฮกเกอร์เจาะข้อมูลใบรับรองของผู้ดูแลโครงการ GnuPG สองคน ได้แก่ Robert Hansen และ Daniel Gillmor การโหลดใบรับรองที่เสียหายจากเซิร์ฟเวอร์จะทำให้ GnuPG ล้มเหลว ระบบจะหยุดทำงานทันที มีเหตุผลที่เชื่อได้ว่าผู้โจมตีจะไม่หยุดเพียงแค่นั้น และจำนวนใบรับรองที่ถูกบุกรุกจะเพิ่มขึ้นเท่านั้น ขณะนี้ยังไม่ทราบขอบเขตของปัญหา
สาระสำคัญของการโจมตี
แฮกเกอร์ใช้ประโยชน์จากช่องโหว่ในโปรโตคอล OpenPGP เธอเป็นที่รู้จักของชุมชนมานานหลายทศวรรษ แม้กระทั่งบน GitHub
ตัวเลือกบางส่วนจากบล็อกของเราในHabré:
ตามข้อกำหนดของ OpenPGP ทุกคนสามารถเพิ่มลายเซ็นดิจิทัลลงในใบรับรองเพื่อยืนยันเจ้าของของตนได้ ยิ่งไปกว่านั้น จำนวนลายเซ็นสูงสุดไม่ได้ถูกควบคุมแต่อย่างใด และนี่คือปัญหาที่เกิดขึ้น - เครือข่าย SKS อนุญาตให้คุณวางลายเซ็นได้มากถึง 150 ลายเซ็นในใบรับรองเดียว แต่ GnuPG ไม่รองรับหมายเลขดังกล่าว ดังนั้นเมื่อโหลดใบรับรอง GnuPG (รวมถึงการใช้งาน OpenPGP อื่น ๆ ) จะหยุดทำงาน
หนึ่งในผู้ใช้
$ gpg --homedir=$PWD --recv C4BC2DDB38CCE96485EBE9C2F20691179038E5C6
gpg: key F20691179038E5C6: 4 duplicate signatures removed
gpg: key F20691179038E5C6: 54614 signatures not checked due to missing keys
gpg: key F20691179038E5C6: 4 signatures reordered
gpg: key F20691179038E5C6: public key "Daniel Kahn Gillmor <[email protected]>" imported
gpg: no ultimately trusted keys found
gpg: Total number processed: 1
gpg: imported: 1
$ ls -lh pubring.gpg
-rw-r--r-- 1 filippo staff 17M 2 Jul 16:30 pubring.gpg
ที่แย่กว่านั้นคือเซิร์ฟเวอร์คีย์ OpenPGP จะไม่ลบข้อมูลใบรับรอง การทำเช่นนี้เพื่อให้คุณสามารถติดตามห่วงโซ่ของการดำเนินการทั้งหมดด้วยใบรับรองและป้องกันการทดแทนได้ ดังนั้นจึงเป็นไปไม่ได้ที่จะกำจัดองค์ประกอบที่ถูกบุกรุก
โดยพื้นฐานแล้ว เครือข่าย SKS นั้นเป็น “ไฟล์เซิร์ฟเวอร์” ขนาดใหญ่ที่ใครๆ ก็สามารถเขียนข้อมูลได้ เพื่อแสดงให้เห็นถึงปัญหา เมื่อปีที่แล้วผู้อาศัย GitHub
เหตุใดช่องโหว่จึงไม่ปิด
ไม่มีเหตุผลที่จะปิดช่องโหว่ ก่อนหน้านี้ไม่ได้ใช้สำหรับการโจมตีของแฮ็กเกอร์ แม้ว่าชุมชนไอที
พูดตามตรงเป็นที่น่าสังเกตว่าในเดือนมิถุนายนพวกเขายังคงอยู่
/Unsplash/
สำหรับข้อบกพร่องในระบบเดิม กลไกการซิงโครไนซ์ที่ซับซ้อนทำให้ไม่สามารถแก้ไขได้ เครือข่ายเซิร์ฟเวอร์หลักเดิมเขียนขึ้นเพื่อพิสูจน์แนวคิดสำหรับวิทยานิพนธ์ระดับปริญญาเอกของ Yaron Minsky นอกจากนี้ ยังมีการเลือกภาษาที่ค่อนข้างเฉพาะเจาะจงคือ OCaml สำหรับงานนี้ โดย
ไม่ว่าในกรณีใด GnuPG ไม่เชื่อว่าเครือข่ายจะได้รับการแก้ไข ในโพสต์บน GitHub นักพัฒนาถึงกับเขียนว่าพวกเขาไม่แนะนำให้ทำงานกับ SKS Keyserver จริงๆ แล้ว นี่เป็นหนึ่งในสาเหตุหลักว่าทำไมพวกเขาถึงเริ่มเปลี่ยนไปใช้บริการใหม่ Keys.openpgp.org เราทำได้เพียงเฝ้าดูพัฒนาการของเหตุการณ์ต่อไปเท่านั้น
เนื้อหาบางส่วนจากบล็อกองค์กรของเรา:
ที่มา: will.com