สารบัญ:
- เกลียวใหม่สู่แนวทางเก่า
- การตรวจจับความผิดปกติ
- การบรรจุมัลแวร์
- ผลการทดสอบ
- ประโยชน์ของ PREC
- ความท้าทาย
ตลาดแอปพลิเคชัน Android เป็นวิธีที่สะดวกสำหรับผู้ใช้ในการรับแอพ ตลาดยังเป็นวิธีที่สะดวกสำหรับคนเลวที่จะส่งมัลแวร์ เจ้าของเครดิตในตลาดพยายามที่จะดมแอปที่ไม่ดีออกไปโดยใช้มาตรการรักษาความปลอดภัยเช่น Google Bouncer น่าเศร้าส่วนใหญ่ - รวมถึง Bouncer - ไม่ขึ้นอยู่กับภารกิจ คนเลวเกือบจะรู้ได้ทันทีว่าจะบอกได้อย่างไรว่าเมื่อ Bouncer สภาพแวดล้อมจำลองได้ทำการทดสอบโค้ดของพวกเขา ในการสัมภาษณ์ก่อนหน้านี้ Jon Oberheide ผู้ร่วมก่อตั้ง Duo Security และผู้ที่แจ้งให้ Google ทราบถึงปัญหาอธิบาย:
"เพื่อให้ Bouncer มีผลบังคับใช้จะต้องไม่สามารถแยกแยะได้จากอุปกรณ์พกพาของผู้ใช้จริงมิฉะนั้นแอปพลิเคชันที่เป็นอันตรายจะสามารถตรวจสอบได้ว่ามันกำลังทำงานกับ Bouncer และไม่ดำเนินการเพย์โหลดที่เป็นอันตราย"
อีกวิธีที่คนเลวหลอก Bouncer คือการใช้ระเบิดแบบลอจิก ตลอดประวัติศาสตร์ของพวกเขาตรรกะระเบิดได้คร่าชีวิตผู้คนในอุปกรณ์คอมพิวเตอร์ ในกรณีนี้รหัสวางระเบิดแบบลอจิคัลจะปิดกั้นตัวตรวจสอบมัลแวร์อย่างเงียบ ๆ เหมือนกับที่ Bouncer ไม่สามารถเปิดใช้งานเพย์โหลดได้จนกว่าแอปที่เป็นอันตรายจะติดตั้งบนอุปกรณ์มือถือจริง
สิ่งสำคัญที่สุดคือตลาดแอพ Android ยกเว้นว่าพวกเขาจะมีประสิทธิภาพในการตรวจจับปริมาณมัลแวร์ในแอพซึ่งอันที่จริงแล้วเป็นระบบการกระจายหลักสำหรับมัลแวร์
เกลียวใหม่สู่แนวทางเก่า
ทีมวิจัยของมหาวิทยาลัย North Carolina State แห่ง Tsung-Hsuan Ho, Daniel Dean, Xiaohui Gu และ William Enck อาจพบวิธีแก้ปัญหา ในบทความของพวกเขา PREC: การใช้ประโยชน์จากรูทที่เป็นประโยชน์สำหรับอุปกรณ์ Android ทีมวิจัยแนะนำรูปแบบการตรวจจับความผิดปกติ PREC ประกอบด้วยสององค์ประกอบ: องค์ประกอบหนึ่งที่ทำงานร่วมกับเครื่องตรวจจับมัลแวร์ของ app store และอีกหนึ่งองค์ประกอบที่ดาวน์โหลดด้วยแอปพลิเคชันไปยังอุปกรณ์มือถือ
ส่วนประกอบของร้านค้าแอพมีเอกลักษณ์ในการใช้งานสิ่งที่นักวิจัยเรียกว่า วิธีนี้สามารถระบุการโทรของระบบจากองค์ประกอบที่มีความเสี่ยงสูงเช่นไลบรารีของบุคคลที่สาม (ที่ไม่รวมอยู่ในระบบ Android แต่มาพร้อมกับแอปพลิเคชันที่ดาวน์โหลด) เหตุผลที่นี่คือแอพที่เป็นอันตรายจำนวนมากใช้ไลบรารีของตัวเอง
การเรียกใช้ระบบจากโค้ดของบุคคลที่สามที่มีความเสี่ยงสูงที่ได้รับจากการตรวจสอบนี้รวมถึงข้อมูลที่ได้จากกระบวนการตรวจสอบร้านค้า app ทำให้ PREC สามารถสร้างรูปแบบพฤติกรรมปกติ โมเดลถูกอัพโหลดไปยังบริการ PREC เปรียบเทียบกับรุ่นที่มีอยู่เพื่อความแม่นยำค่าใช้จ่ายและความทนทานต่อการโจมตีแบบล้อเลียน
โมเดลที่อัปเดตแล้วพร้อมที่จะดาวน์โหลดพร้อมกับแอปพลิเคชันทุกครั้งที่มีคนร้องขอแอปจากแอพสโตร์
นั่นคือการพิจารณาขั้นตอนการตรวจสอบ เมื่อโมเดลและแอปพลิเคชัน PREC ถูกดาวน์โหลดไปยังอุปกรณ์ Android แล้ว PREC จะเข้าสู่ขั้นตอนการบังคับใช้ - กล่าวอีกนัยหนึ่งคือการตรวจจับความผิดปกติและการบรรจุมัลแวร์
การตรวจจับความผิดปกติ
เมื่อติดตั้งแอพและรุ่น PREC บนอุปกรณ์ Android แล้ว PREC จะตรวจสอบรหัสบุคคลที่สามโดยเฉพาะการโทรของระบบ หากลำดับการเรียกของระบบแตกต่างจากที่ตรวจสอบใน app store, PREC จะพิจารณาความเป็นไปได้ที่พฤติกรรมที่ผิดปกติจะเป็นการใช้ประโยชน์ เมื่อ PREC พิจารณาว่ากิจกรรมนั้นเป็นอันตรายกิจกรรมนั้นจะเข้าสู่โหมดการ จำกัด มัลแวร์การบรรจุมัลแวร์
หากเข้าใจอย่างถูกต้องการบรรจุมัลแวร์จะทำให้ PREC ไม่เหมือนใครเมื่อพูดถึงมัลแวร์ Android เนื่องจากลักษณะของระบบปฏิบัติการ Android แอปพลิเคชันป้องกันมัลแวร์ Android ไม่สามารถลบมัลแวร์หรือวางไว้ในการกักกันได้เนื่องจากทุกแอปพลิเคชันอยู่ในแซนด์บ็อกซ์ ซึ่งหมายความว่าผู้ใช้จะต้องลบแอพที่เป็นอันตรายด้วยตนเองโดยค้นหามัลแวร์ในส่วนแอปพลิเคชันของตัวจัดการระบบของอุปกรณ์จากนั้นเปิดหน้าสถิติของแอพมัลแวร์และแตะที่ "ถอนการติดตั้ง"
สิ่งที่ทำให้ PREC มีความโดดเด่นคือสิ่งที่นักวิจัยเรียกว่า "กลไกการบรรจุอย่างละเอียดตามความล่าช้า" แนวคิดทั่วไปคือการชะลอการเรียกของระบบที่น่าสงสัยโดยใช้กลุ่มของเธรดแยกต่างหาก สิ่งนี้บังคับให้ใช้ประโยชน์จากการหมดเวลาส่งผลให้สถานะ "แอปพลิเคชันไม่ตอบสนอง" ซึ่งในที่สุดแอปจะถูกปิดโดยระบบปฏิบัติการ Android ในที่สุด
PREC อาจถูกตั้งโปรแกรมให้ฆ่าเธรดการเรียกระบบ แต่มันอาจจะหยุดการทำงานของแอปพลิเคชันปกติหากเครื่องตรวจจับความผิดปกติทำผิด แทนที่จะเป็นความเสี่ยงที่นักวิจัยแทรกความล่าช้าในระหว่างการดำเนินการของเธรด
"การทดลองของเราแสดงให้เห็นว่าการหาช่องโหว่ที่รูทส่วนใหญ่ไม่ได้ผลหลังจากที่เราลดความเร็วของเธรดเนทีฟที่เป็นอันตรายไปถึงจุดหนึ่งวิธีการที่อิงตามการหน่วงเวลาสามารถจัดการการเตือนที่ผิดพลาดได้อย่างงดงามยิ่งขึ้น "กระดาษอธิบาย
ผลการทดสอบ
ในการประเมิน PREC นักวิจัยได้สร้างต้นแบบและทดสอบกับแอพพลิเคชั่น 140 แอพ (80 รหัสเนทีฟและ 60 โดยไม่มีรหัสเนทีฟ) - บวก 10 แอพ (รู้จักสี่รูทแอปพลิเคชั่นรูท ที่มีมัลแวร์ มัลแวร์รวมถึง DroidDream, DroidKungFu, GingerMaster, RATC, ZimperLich และ GingerBreak
ผลลัพธ์ที่ได้:
- PREC ตรวจพบและหยุดการหาช่องโหว่ทั้งหมดที่ผ่านการทดสอบเรียบร้อยแล้ว
- มันยกสัญญาณเตือนที่ผิดพลาดเป็นศูนย์ในแอปพลิเคชันที่ไม่เป็นอันตรายโดยไม่ต้องมีรหัสเนทีฟ (รูปแบบดั้งเดิมเพิ่มการเตือนที่ผิดพลาดต่อแอป 67-92%)
- PREC ลดอัตราการเตือนที่ผิดพลาดในแอปพลิเคชั่นที่เป็นพิษเป็นภัยด้วยโค้ดเนทีฟมากกว่าหนึ่งลำดับความสำคัญเหนืออัลกอริธึมการตรวจจับความผิดปกติแบบดั้งเดิม
ประโยชน์ของ PREC
นอกเหนือจากการทดสอบและส่งต่อวิธีที่ใช้การได้ดีเพื่อให้มีมัลแวร์ Android แล้ว PREC ยังมีตัวเลขที่ดีขึ้นเมื่อพิจารณาจากผลบวกปลอมและการสูญเสียประสิทธิภาพ สำหรับผลการดำเนินงานกระดาษระบุว่า "แผนการตรวจสอบที่เป็นความลับของ PREC นั้นมีค่าใช้จ่ายน้อยกว่า 1% และอัลกอริทึมการตรวจจับความผิดปกติของ SOM เรียกเก็บค่าใช้จ่ายสูงถึง 2% โดยรวมแล้ว PREC นั้นมีน้ำหนักเบา
ระบบตรวจจับมัลแวร์ในปัจจุบันที่ใช้โดยร้านค้าแอปไม่มีประสิทธิภาพ PREC มอบความแม่นยำในการตรวจจับระดับสูงเปอร์เซ็นต์การเตือนที่ผิดพลาดและการควบคุมมัลแวร์ในระดับต่ำซึ่งเป็นสิ่งที่ไม่มีอยู่ในปัจจุบัน
ความท้าทาย
กุญแจสำคัญในการทำให้ PREC สามารถทำงานได้คือการซื้อจากตลาดแอพ มันเป็นเพียงเรื่องของการสร้างฐานข้อมูลที่อธิบายวิธีการทำงานของแอปพลิเคชันตามปกติ PREC เป็นเครื่องมือหนึ่งที่สามารถใช้เพื่อทำให้สำเร็จ จากนั้นเมื่อผู้ใช้ดาวน์โหลดแอปพลิเคชันที่ต้องการข้อมูลประสิทธิภาพ (โปรไฟล์ PREC) จะไปกับแอพและจะถูกใช้เพื่อเป็นพื้นฐานในการทำงานของแอพขณะที่ติดตั้งบนอุปกรณ์ Android