Android รวมเอาคุณลักษณะด้านความปลอดภัยระดับชั้นนำของอุตสาหกรรม และทำงานร่วมกับนักพัฒนาซอฟต์แวร์และผู้ปรับใช้อุปกรณ์เพื่อให้แพลตฟอร์ม Android และระบบนิเวศปลอดภัย โมเดลการรักษาความปลอดภัยที่แข็งแกร่งเป็นสิ่งจำเป็นในการทำให้ระบบนิเวศของแอปและอุปกรณ์ต่างๆ สร้างขึ้นบนและรอบ ๆ แพลตฟอร์ม Android และรองรับโดยบริการคลาวด์ ด้วยเหตุนี้ ตลอดวงจรการพัฒนาทั้งหมด Android จึงอยู่ภายใต้โปรแกรมความปลอดภัยที่เข้มงวด
Android ถูกออกแบบมาให้เปิดได้ แอป Android ใช้ฮาร์ดแวร์และซอฟต์แวร์ขั้นสูง ตลอดจนข้อมูลในพื้นที่และบริการ ซึ่งเปิดเผยผ่านแพลตฟอร์มเพื่อนำนวัตกรรมและคุณค่ามาสู่ผู้บริโภค เพื่อให้ตระหนักถึงคุณค่านั้น แพลตฟอร์มนำเสนอสภาพแวดล้อมของแอพที่ปกป้องความลับ ความสมบูรณ์ และความพร้อมใช้งานของผู้ใช้ ข้อมูล แอพ อุปกรณ์ และเครือข่าย
การรักษาความปลอดภัยแพลตฟอร์มแบบเปิดต้องใช้สถาปัตยกรรมความปลอดภัยที่แข็งแกร่งและโปรแกรมความปลอดภัยที่เข้มงวด Android ได้รับการออกแบบด้วยการรักษาความปลอดภัยแบบหลายชั้นที่ยืดหยุ่นพอที่จะรองรับแพลตฟอร์มแบบเปิดในขณะที่ยังคงปกป้องผู้ใช้ทั้งหมดของแพลตฟอร์ม สำหรับข้อมูลเกี่ยวกับการรายงานปัญหาด้านความปลอดภัยและกระบวนการอัปเดต โปรดดูที่ การอัปเดตความปลอดภัยและทรัพยากร
Android ถูกออกแบบมาสำหรับนักพัฒนา การควบคุมความปลอดภัยได้รับการออกแบบมาเพื่อลดภาระให้กับนักพัฒนา นักพัฒนาที่เชี่ยวชาญด้านความปลอดภัยสามารถทำงานและพึ่งพาการควบคุมความปลอดภัยที่ยืดหยุ่นได้อย่างง่ายดาย นักพัฒนาที่ไม่ค่อยคุ้นเคยกับการรักษาความปลอดภัยจะได้รับการคุ้มครองโดยค่าเริ่มต้นที่ปลอดภัย
นอกเหนือจากการจัดหาแพลตฟอร์มที่เสถียรเพื่อสร้างต่อแล้ว Android ยังให้การสนับสนุนเพิ่มเติมแก่นักพัฒนาในหลายวิธี ทีมรักษาความปลอดภัยของ Android ค้นหาช่องโหว่ที่อาจเกิดขึ้นในแอปและแนะนำวิธีแก้ไขปัญหาเหล่านั้น สำหรับอุปกรณ์ที่มี Google Play บริการ Play จะส่งการอัปเดตความปลอดภัยสำหรับไลบรารีซอฟต์แวร์ที่สำคัญ เช่น OpenSSL ซึ่งใช้เพื่อความปลอดภัยในการสื่อสารของแอป ความปลอดภัยของ Android เปิดตัวเครื่องมือสำหรับทดสอบ SSL ( nogotofail ) ที่ช่วยให้นักพัฒนาค้นหาปัญหาด้านความปลอดภัยที่อาจเกิดขึ้นบนแพลตฟอร์มใดก็ตามที่พวกเขากำลังพัฒนา
ดูข้อมูลเพิ่มเติมสำหรับนักพัฒนาแอป Android ได้ที่ developer.android.com
Android ถูกออกแบบมาสำหรับผู้ใช้ ผู้ใช้จะได้รับสิทธิ์การเข้าถึงที่ร้องขอโดยแต่ละแอพและควบคุมการอนุญาตเหล่านั้น การออกแบบนี้รวมถึงความคาดหวังว่าผู้โจมตีจะพยายามทำการโจมตีทั่วไป เช่น การโจมตีทางวิศวกรรมสังคมเพื่อโน้มน้าวให้ผู้ใช้อุปกรณ์ติดตั้งมัลแวร์ และการโจมตีแอปของบุคคลที่สามบน Android Android ได้รับการออกแบบมาเพื่อลดความน่าจะเป็นของการโจมตีเหล่านี้ และจำกัดผลกระทบของการโจมตีในกรณีที่ประสบความสำเร็จอย่างมาก ความปลอดภัยของ Android ยังคงดำเนินต่อไปหลังจากที่อุปกรณ์อยู่ในมือของผู้ใช้ Android ทำงานร่วมกับ พันธมิตรและสาธารณชน ในการจัดหาแพตช์สำหรับอุปกรณ์ Android ที่ยังคงได้รับการอัปเดตความปลอดภัยอย่างต่อเนื่อง
ดูข้อมูลเพิ่มเติมสำหรับผู้ใช้ปลายทางได้ในศูนย์ช่วยเหลือของ Nexus ศูนย์ช่วยเหลือ ของ Pixel หรือศูนย์ช่วยเหลือ ของผู้ผลิตอุปกรณ์ของคุณ
หน้านี้สรุปเป้าหมายของโปรแกรมความปลอดภัยของ Android อธิบายพื้นฐานของสถาปัตยกรรมความปลอดภัยของ Android และตอบคำถามที่เกี่ยวข้องมากที่สุดสำหรับสถาปนิกระบบและนักวิเคราะห์ความปลอดภัย โดยมุ่งเน้นที่คุณลักษณะด้านความปลอดภัยของแพลตฟอร์มหลักของ Android และไม่กล่าวถึงปัญหาด้านความปลอดภัยที่มีลักษณะเฉพาะสำหรับแอปบางแอป เช่น แอปที่เกี่ยวข้องกับเบราว์เซอร์หรือแอป SMS
พื้นหลัง
Android มีแพลตฟอร์มโอเพ่นซอร์สและสภาพแวดล้อมแอปสำหรับอุปกรณ์มือถือ
ส่วนและหน้าด้านล่างอธิบายคุณลักษณะความปลอดภัยของแพลตฟอร์ม Android รูปที่ 1 แสดงองค์ประกอบความปลอดภัยและการพิจารณาระดับต่างๆ ของสแต็คซอฟต์แวร์ Android แต่ละองค์ประกอบถือว่าส่วนประกอบด้านล่างมีความปลอดภัยอย่างเหมาะสม ด้วยข้อยกเว้นของโค้ดระบบปฏิบัติการ Android จำนวนเล็กน้อยที่ทำงานเป็นรูท โค้ดทั้งหมดที่อยู่เหนือเคอร์เนลของ Linux จะถูกจำกัดโดย Application Sandbox
รูปที่ 1. กองซอฟต์แวร์ Android
บล็อคการสร้างแพลตฟอร์ม Android หลักคือ:
- ฮาร์ดแวร์ของอุปกรณ์: Android ทำงานบนการกำหนดค่าฮาร์ดแวร์ที่หลากหลาย รวมถึงโทรศัพท์มือถือ แท็บเล็ต นาฬิกา รถยนต์ สมาร์ททีวี กล่องเกม OTT และกล่องรับสัญญาณ Android เป็นโปรเซสเซอร์ที่ไม่เชื่อเรื่องพระเจ้า แต่ใช้ประโยชน์จากความสามารถด้านความปลอดภัยเฉพาะของฮาร์ดแวร์บางอย่าง เช่น ARM eXecute-Never
- ระบบปฏิบัติการ Android: ระบบ ปฏิบัติการหลักสร้างขึ้นบนเคอร์เนล Linux ทรัพยากรอุปกรณ์ทั้งหมด เช่น ฟังก์ชันกล้อง ข้อมูล GPS ฟังก์ชัน Bluetooth ฟังก์ชันโทรศัพท์ และการเชื่อมต่อเครือข่ายจะเข้าถึงได้ผ่านระบบปฏิบัติการ
- รันไทม์ของแอปพลิเคชัน Android: แอป Android มักเขียนด้วยภาษาการเขียนโปรแกรม Java และรันในรันไทม์ของ Android (ART) อย่างไรก็ตาม แอปจำนวนมาก รวมถึงบริการและแอปหลักของ Android เป็นแอปที่มาพร้อมเครื่องหรือรวมไลบรารีดั้งเดิม ทั้งแอป ART และเนทีฟทำงานในสภาพแวดล้อมการรักษาความปลอดภัยเดียวกัน ซึ่งอยู่ภายใน Application Sandbox แอพจะได้รับส่วนหนึ่งของระบบไฟล์โดยเฉพาะ ซึ่งพวกเขาสามารถเขียนข้อมูลส่วนตัว รวมถึงฐานข้อมูลและไฟล์ดิบ
แอพ Android ขยายระบบปฏิบัติการ Android หลัก มีสองแหล่งที่มาหลักสำหรับแอป:
- แอปที่ติดตั้งไว้ล่วงหน้า: Android ประกอบด้วยชุดแอปที่ติดตั้งไว้ล่วงหน้า ได้แก่ โทรศัพท์ อีเมล ปฏิทิน เว็บเบราว์เซอร์ และรายชื่อติดต่อ ฟังก์ชันเหล่านี้เป็นแอปของผู้ใช้และให้ความสามารถของอุปกรณ์หลักที่แอปอื่นสามารถเข้าถึงได้ แอปที่ติดตั้งไว้ล่วงหน้าอาจเป็นส่วนหนึ่งของแพลตฟอร์มโอเพ่นซอร์ส Android หรืออาจได้รับการพัฒนาโดยผู้ผลิตอุปกรณ์สำหรับอุปกรณ์เฉพาะ
- แอพ ที่ผู้ใช้ติดตั้ง: Android ให้สภาพแวดล้อมการพัฒนาแบบเปิดที่รองรับแอพของบุคคลที่สาม Google Play มีแอปให้ผู้ใช้หลายแสนแอป
บริการความปลอดภัยของ Google
Google มีชุดบริการบนระบบคลาวด์ที่ใช้ได้กับอุปกรณ์ Android ที่เข้ากันได้กับ Google Mobile Services แม้ว่าบริการเหล่านี้จะไม่ได้เป็นส่วนหนึ่งของ Android Open Source Project (AOSP) แต่ก็รวมอยู่ในอุปกรณ์ Android จำนวนมาก สำหรับข้อมูลเพิ่มเติมเกี่ยวกับบริการเหล่านี้ โปรดดูที่การ ตรวจสอบปี 2018 ของ Android Security
บริการรักษาความปลอดภัยหลักของ Google คือ:
- Google Play: Google Play คือชุดบริการที่อนุญาตให้ผู้ใช้ค้นพบ ติดตั้ง และซื้อแอปจากอุปกรณ์ Android หรือเว็บ Google Play ช่วยให้นักพัฒนาเข้าถึงผู้ใช้ Android และผู้มีโอกาสเป็นลูกค้าได้ง่าย Google Play ยังมีการตรวจสอบโดยชุมชน การ ยืนยันใบอนุญาต แอป การสแกนความปลอดภัยของแอป และบริการความปลอดภัยอื่นๆ
- การอัปเดต Android: บริการอัปเดต Android นำเสนอความสามารถและการอัปเดตความปลอดภัยใหม่ๆ แก่อุปกรณ์ Android ที่เลือก รวมถึงการอัปเดตผ่านเว็บหรือทางอากาศ (OTA)
- บริการแอป: กรอบงานที่อนุญาตให้แอป Android ใช้ความสามารถระบบคลาวด์ เช่น ( สำรองข้อมูล ) ข้อมูลแอปและการตั้งค่า และการส่งข้อความจากระบบคลาวด์ไปยังอุปกรณ์ ( C2DM ) สำหรับการส่งข้อความแบบพุช
- ตรวจสอบแอป: เตือนหรือบล็อกการติดตั้งแอปที่เป็นอันตรายโดยอัตโนมัติ และสแกนแอปบนอุปกรณ์อย่างต่อเนื่อง เตือนเกี่ยวกับหรือนำ แอปที่เป็นอันตราย ออก
- SafetyNet: ระบบตรวจจับการบุกรุกที่รักษาความเป็นส่วนตัวเพื่อช่วยติดตาม Google บรรเทาภัยคุกคามความปลอดภัยที่รู้จัก และระบุภัยคุกคามความปลอดภัยใหม่
- SafetyNet Attestation: API บุคคลที่สามเพื่อตรวจสอบว่าอุปกรณ์เข้ากันได้กับ CTS หรือไม่ การ รับรอง ยังสามารถระบุแอป Android ที่สื่อสารกับเซิร์ฟเวอร์แอปได้
- โปรแกรมจัดการอุปกรณ์ Android: เว็บแอป และ แอป Android เพื่อค้นหาอุปกรณ์ที่สูญหายหรือถูกขโมย
ภาพรวมโปรแกรมความปลอดภัย
องค์ประกอบหลักของโปรแกรมความปลอดภัยของ Android ได้แก่:
- การตรวจสอบการออกแบบ: กระบวนการรักษาความปลอดภัยของ Android เริ่มต้นในช่วงชีวิตการพัฒนาด้วยการสร้างรูปแบบและการออกแบบการรักษาความปลอดภัยที่สมบูรณ์และกำหนดค่าได้ คุณลักษณะหลักแต่ละประการของแพลตฟอร์มได้รับการตรวจสอบโดยทรัพยากรด้านวิศวกรรมและความปลอดภัย โดยมีการควบคุมความปลอดภัยที่เหมาะสมซึ่งรวมอยู่ในสถาปัตยกรรมของระบบ
- การทดสอบการเจาะระบบและการตรวจสอบโค้ด: ในระหว่างการพัฒนาแพลตฟอร์ม ส่วนประกอบที่สร้างโดย Android และโอเพ่นซอร์สจะต้องได้รับการตรวจสอบความปลอดภัยอย่างเข้มงวด การตรวจสอบเหล่านี้ดำเนินการโดยทีมความปลอดภัยของ Android ทีมวิศวกรรมความปลอดภัยของข้อมูลของ Google และที่ปรึกษาด้านความปลอดภัยอิสระ เป้าหมายของการตรวจสอบเหล่านี้คือการระบุจุดอ่อนและจุดอ่อนที่เป็นไปได้ก่อนการเผยแพร่ที่สำคัญ และเพื่อจำลองประเภทของการวิเคราะห์ที่ดำเนินการโดยผู้เชี่ยวชาญด้านความปลอดภัยภายนอกเมื่อมีการเผยแพร่
- การตรวจสอบโอเพนซอร์สและชุมชน: AOSP เปิดใช้งานการตรวจสอบความปลอดภัยในวงกว้างโดยผู้มีส่วนได้ส่วนเสีย Android ยังใช้เทคโนโลยีโอเพ่นซอร์สที่ได้รับการตรวจสอบความปลอดภัยภายนอกที่สำคัญ เช่น เคอร์เนลของ Linux Google Play มีฟอรัมสำหรับผู้ใช้และบริษัทเพื่อให้ข้อมูลเกี่ยวกับแอปเฉพาะแก่ผู้ใช้โดยตรง
- การตอบสนองต่อเหตุการณ์: แม้จะมีข้อควรระวังเหล่านี้ ปัญหาด้านความปลอดภัยอาจเกิดขึ้นหลังจากจัดส่ง ซึ่งเป็นสาเหตุที่โครงการ Android ได้สร้างกระบวนการตอบกลับด้านความปลอดภัยที่ครอบคลุม สมาชิกทีมรักษาความปลอดภัย Android แบบเต็มเวลาจะตรวจสอบชุมชนความปลอดภัยเฉพาะของ Android และชุมชนความปลอดภัยทั่วไปเพื่อหารือเกี่ยวกับช่องโหว่ที่อาจเกิดขึ้น และตรวจสอบจุด บกพร่องด้านความปลอดภัย ที่บันทึกไว้ในฐานข้อมูลจุดบกพร่องของ Android เมื่อตรวจพบปัญหาที่ถูกต้อง ทีมงาน Android มีกระบวนการตอบสนองที่ช่วยให้สามารถบรรเทาช่องโหว่ได้อย่างรวดเร็ว เพื่อให้แน่ใจว่าความเสี่ยงที่อาจเกิดขึ้นกับผู้ใช้ Android ทุกคนจะลดลง คำตอบที่รองรับระบบคลาวด์เหล่านี้อาจรวมถึงการอัปเดตแพลตฟอร์ม Android (การอัปเดต AOSP) การลบแอปออกจาก Google Play และการนำแอปออกจากอุปกรณ์ในภาคสนาม
- การอัปเดตความปลอดภัยรายเดือน: ทีมรักษาความปลอดภัยของ Android ให้ การอัปเดตรายเดือน สำหรับอุปกรณ์ Google Android และพันธมิตรผู้ผลิตอุปกรณ์ทั้งหมดของเรา
สถาปัตยกรรมความปลอดภัยของแพลตฟอร์ม
Android พยายามที่จะเป็นระบบปฏิบัติการที่ปลอดภัยและใช้งานได้มากที่สุดสำหรับแพลตฟอร์มมือถือโดยนำการควบคุมความปลอดภัยของระบบปฏิบัติการแบบดั้งเดิมมาใช้ใหม่เพื่อ:
- ปกป้องแอพและข้อมูลผู้ใช้
- ปกป้องทรัพยากรระบบ (รวมถึงเครือข่าย)
- ให้แอปแยกจากระบบ แอปอื่นๆ และจากผู้ใช้
เพื่อให้บรรลุวัตถุประสงค์เหล่านี้ Android จึงมีคุณลักษณะด้านความปลอดภัยที่สำคัญเหล่านี้:
- ความปลอดภัยที่แข็งแกร่งในระดับ OS ผ่านเคอร์เนลลินุกซ์
- แซนด์บ็อกซ์แอปบังคับสำหรับแอปทั้งหมด
- การสื่อสารระหว่างกระบวนการที่ปลอดภัย
- การลงนามแอป
- สิทธิ์ที่กำหนดโดยแอปและให้สิทธิ์โดยผู้ใช้