LoadLibrary ซึ่งเป็นเลเยอร์สำหรับโหลด Windows DLLs ลงในแอปพลิเคชัน Linux

ทาวิส ออร์ม็องดี (Tavis ormandy) นักวิจัยด้านความปลอดภัยของ Google ที่กำลังพัฒนาโครงการนี้ โหลดไลบรารีมุ่งเป้าไปที่การย้าย DLL ที่คอมไพล์สำหรับ Windows เพื่อใช้ในแอปพลิเคชัน Linux โปรเจ็กต์นี้มีไลบรารีเลเยอร์ซึ่งคุณสามารถโหลดไฟล์ DLL ในรูปแบบ PE/COFF และเรียกใช้ฟังก์ชันที่กำหนดไว้ในนั้นได้ PE/COFF bootloader ขึ้นอยู่กับโค้ด คนเก็บขยะ. รหัสโครงการ จัดจำหน่ายโดย ได้รับอนุญาตภายใต้ GPLv2

LoadLibrary ดูแลการโหลดไลบรารีลงในหน่วยความจำและการนำเข้าสัญลักษณ์ที่มีอยู่ ทำให้แอปพลิเคชัน Linux มี API แบบ dlopen รหัสปลั๊กอินสามารถดีบั๊กได้โดยใช้ gdb, ASAN และ Valgrind สามารถปรับโค้ดปฏิบัติการได้ในระหว่างการดำเนินการโดยการเชื่อมต่อ hooks และใช้แพตช์ (การแพตช์รันไทม์) รองรับการจัดการข้อยกเว้นและคลี่คลายสำหรับ C ++

เป้าหมายของโครงการคือการจัดระเบียบการทดสอบฟัซซิ่งแบบกระจายที่ปรับขนาดได้และมีประสิทธิภาพของไลบรารี DLL ในสภาพแวดล้อมที่ใช้ Linux บน Windows การทดสอบฟัซซิ่งและครอบคลุมไม่มีประสิทธิภาพมากนัก และมักต้องใช้อินสแตนซ์เสมือนของ Windows แยกต่างหาก โดยเฉพาะอย่างยิ่งเมื่อพยายามวิเคราะห์ผลิตภัณฑ์ที่ซับซ้อน เช่น ซอฟต์แวร์ป้องกันไวรัสที่ครอบคลุมเคอร์เนลและพื้นที่ผู้ใช้ นักวิจัยของ Google กำลังใช้ LoadLibrary ค้นหาช่องโหว่ในตัวแปลงสัญญาณวิดีโอ โปรแกรมสแกนไวรัส ไลบรารีการบีบอัดข้อมูล ตัวถอดรหัสรูปภาพ ฯลฯ

ตัวอย่างเช่น ด้วยความช่วยเหลือของ LoadLibrary เราจึงสามารถพอร์ตกลไกป้องกันไวรัส Windows Defender เพื่อให้ทำงานบน Linux ได้ การศึกษา mpengine.dll ซึ่งเป็นพื้นฐานของ Windows Defender ทำให้สามารถวิเคราะห์โปรเซสเซอร์ที่ซับซ้อนจำนวนมากสำหรับรูปแบบต่างๆ โปรแกรมจำลองระบบไฟล์ และล่ามภาษาที่อาจให้เวกเตอร์สำหรับ เป็นไปได้ การโจมตี.

LoadLibrary ยังใช้เพื่อระบุอีกด้วย ช่องโหว่ระยะไกล ในแพ็คเกจป้องกันไวรัส Avast เมื่อศึกษา DLL จากโปรแกรมป้องกันไวรัสนี้ พบว่ากระบวนการสแกนที่มีสิทธิพิเศษที่สำคัญมีล่าม JavaScript เต็มรูปแบบที่ใช้ในการจำลองการทำงานของโค้ด JavaScript บุคคลที่สาม กระบวนการนี้ไม่ได้แยกออกจากกันในสภาพแวดล้อมแบบแซนด์บ็อกซ์ ไม่ได้รีเซ็ตสิทธิ์ และวิเคราะห์ข้อมูลภายนอกที่ไม่ได้รับการตรวจสอบจากระบบไฟล์และการรับส่งข้อมูลเครือข่ายที่สกัดกั้น เนื่องจากช่องโหว่ใด ๆ ในกระบวนการที่ซับซ้อนและไม่มีการป้องกันนี้อาจนำไปสู่การประนีประนอมจากระยะไกลของทั้งระบบ เชลล์พิเศษจึงได้รับการพัฒนาโดยใช้ LoadLibrary สคริปต์ เพื่อวิเคราะห์ช่องโหว่ในเครื่องสแกนไวรัส Avast ในสภาพแวดล้อมที่ใช้ Linux

ที่มา: opennet.ru

เพิ่มความคิดเห็น