สคริปต์เชลล์ของการโจมตี xz
- Andres Freund เปิดเผยการมีอยู่ของการโจมตี xz เมื่อวันที่ 29 มีนาคม 2024
- การโจมตีแบ่งออกเป็นสองส่วนคือ สคริปต์เชลล์และไฟล์อ็อบเจ็กต์
- สคริปต์เชลล์จะเพิ่มไฟล์อ็อบเจ็กต์เข้าไปในการบิลด์ระหว่างกระบวนการ
make
- ไฟล์อ็อบเจ็กต์ที่เป็นอันตรายและโค้ดเชลล์ถูกเพิ่มเข้ามาโดยอำพรางเป็น "อินพุตทดสอบ" พร้อมทั้งถูกบีบอัดและเข้ารหัส
โครงสร้าง
- xz-utils ใช้ GNU autoconf เพื่อกำหนดวิธีบิลด์ให้เหมาะกับระบบ
- ผู้โจมตีได้เพิ่มไลบรารีสนับสนุนที่ไม่คาดคิดลงใน tarball distribution
- ไลบรารีสนับสนุนนี้มีโค้ดที่เป็นอันตรายอยู่ภายใน
มองโครงสร้างอีกครั้ง
- ไลบรารีสนับสนุนที่ผู้โจมตีเพิ่มเข้ามาจะค้นหารูปแบบเฉพาะและตั้งค่าไฟล์นั้น
- สคริปต์นี้จะค้นหาไฟล์ที่เป็นอันตรายและรันไฟล์นั้นเพื่อฉีดโค้ดเชลล์
การรันสคริปต์เชลล์
- สคริปต์เชลล์ที่เป็นอันตรายจะทำงานเฉพาะในสภาพแวดล้อมที่ต้องการเท่านั้น หลังผ่านการตรวจสอบหลายขั้นตอน
- สคริปต์จะเพิ่มหลายบรรทัดลงใน Makefile เพื่อแทรกโค้ดที่เป็นอันตรายเข้าไปในกระบวนการบิลด์
ความเห็นของ GN⁺
- การโจมตีนี้เผยให้เห็นช่องโหว่ด้านความปลอดภัยของซอฟต์แวร์โอเพนซอร์ส และนักพัฒนาควรตระหนักถึงความสำคัญของการรีวิวโค้ดและการตรวจสอบความปลอดภัย
- วิธีการโจมตีนี้เป็นตัวอย่างหนึ่งของการโจมตีซัพพลายเชนซอฟต์แวร์ และจำเป็นต้องมีมาตรการเพื่อป้องกันการโจมตีลักษณะนี้
- บทความนี้อาจช่วยกระตุ้นให้นักพัฒนาตื่นตัว โดยแสดงให้เห็นวิธีการโจมตีที่อาศัยการใช้ประโยชน์จากความซับซ้อนของสคริปต์เชลล์และระบบบิลด์
- หากมองอย่างวิพากษ์ การโจมตีลักษณะนี้อาจทำให้เกิดคำถามต่อความน่าเชื่อถือของโครงการโอเพนซอร์ส
- โดยอาศัยความรู้ในสาขาที่เกี่ยวข้อง บทความนี้เน้นย้ำความสำคัญของการตรวจสอบความปลอดภัยในกระบวนการพัฒนาและเผยแพร่ซอฟต์แวร์
ยังไม่มีความคิดเห็น