การวิเคราะห์แบ็กดอร์ xz

  • Filippo Valsorda สังเกตเห็นว่ามีบางคนกำลังทำรีเวิร์สเอนจิเนียริงแบ็กดอร์ xz และได้แชร์ผลการวิเคราะห์เบื้องต้น
  • ฮุก RSA_public_decrypt จะตรวจสอบลายเซ็นของคีย์ Ed448 แบบตายตัวที่ใช้กับ host key ของเซิร์ฟเวอร์ และส่งเพย์โหลดเข้าสู่ระบบ
  • นี่ไม่ใช่การข้ามการยืนยันตัวตน แต่เป็นการรันโค้ดจากระยะไกล (RCE) ใช้ได้เพียงครั้งเดียวและเล่นซ้ำไม่ได้

การโจมตีซัพพลายเชน

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

การดึงและตรวจสอบเพย์โหลด

  • เพย์โหลดถูกดึงออกมาจากค่า N (กุญแจสาธารณะ) ที่ส่งเข้า RSA_public_decrypt จากนั้นถูกตรวจด้วยฟิงเกอร์พรินต์อย่างง่าย และถอดรหัสด้วยคีย์ ChaCha20 แบบตายตัวก่อนการตรวจสอบลายเซ็น Ed448

ฟังก์ชัน RSA_public_decrypt

  • RSA_public_decrypt ทำหน้าที่ตรวจสอบลายเซ็น แม้ว่าชื่อจะฟังดูแปลกก็ตาม
  • การตรวจสอบลายเซ็น RSA ใช้การคำนวณแบบเดียวกับการเข้ารหัส RSA

ใบรับรอง OpenSSH และการควบคุมโดยผู้โจมตี

  • กุญแจสาธารณะของ RSA_public_decrypt สามารถถูกผู้โจมตีควบคุมได้ก่อนการยืนยันตัวตนผ่านการใช้ใบรับรอง OpenSSH
  • ใบรับรอง OpenSSH มีคีย์สาธารณะของผู้ลงลายเซ็นรวมอยู่ และ OpenSSH จะตรวจสอบลายเซ็นระหว่างการพาร์ส

สคริปต์สำหรับส่งกุญแจสาธารณะแบบกำหนดเองไปยังระบบที่มีแบ็กดอร์

  • ผ่านสคริปต์ที่เขียนโดย Keegan Ryan สามารถใช้ฟังก์ชันฮุกเพื่อนำกุญแจสาธารณะแบบกำหนดเองใส่เข้าไปในใบรับรองและส่งไปถึงระบบที่มีแบ็กดอร์ได้

กลไกความปลอดภัยของแบ็กดอร์

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

ความเห็นของ GN⁺

  • แบ็กดอร์ลักษณะนี้เป็นภัยคุกคามร้ายแรงต่อความปลอดภัยของระบบ และหากถูกฝังอยู่ในไลบรารีที่ใช้อย่างแพร่หลาย ผลกระทบก็จะยิ่งขยายวงกว้าง
  • การที่การโจมตีถูกค้นพบโดยบังเอิญ แสดงให้เห็นช่องโหว่ของระบบความปลอดภัย และตอกย้ำว่าการมอนิเตอร์และการตรวจสอบอย่างต่อเนื่องมีความสำคัญเพียงใด
  • บทความนี้อาจช่วยเพิ่มการตระหนักรู้เกี่ยวกับความปลอดภัยของซอฟต์แวร์ซัพพลายเชน และเป็นสัญญาณเตือนให้กับนักพัฒนาและผู้ดูแลระบบ
  • เพื่อรับมือกับภัยคุกคามด้านความปลอดภัยอย่างแบ็กดอร์ ควรใช้งานเครื่องมือความปลอดภัยโอเพนซอร์สหรือสแกนเนอร์ช่องโหว่ ตัวอย่างเช่น OWASP ZAP หรือ Nessus อาจเป็นเครื่องมือที่มีประโยชน์
  • เมื่อนำเทคโนโลยีใหม่หรือโอเพนซอร์สมาใช้ ควรตรวจสอบด้านความปลอดภัยอย่างรอบคอบ และดำเนินมาตรการที่เหมาะสมเพื่อปกป้องระบบจากการโจมตีลักษณะนี้

ยังไม่มีความคิดเห็น

ยังไม่มีความคิดเห็น