การวิเคราะห์แบ็กดอร์ 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 อาจเป็นเครื่องมือที่มีประโยชน์
- เมื่อนำเทคโนโลยีใหม่หรือโอเพนซอร์สมาใช้ ควรตรวจสอบด้านความปลอดภัยอย่างรอบคอบ และดำเนินมาตรการที่เหมาะสมเพื่อปกป้องระบบจากการโจมตีลักษณะนี้
ยังไม่มีความคิดเห็น