3 คะแนน โดย GN⁺ 2024-11-18 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • iOS 18 ได้เพิ่มฟีเจอร์ความปลอดภัยใหม่สำหรับการรีบูตเมื่อไม่มีการใช้งาน: "รีบูตอัตโนมัติหากไม่มีการปลดล็อกเป็นเวลา 3 วัน"
  • การป้อนรหัสผ่านครั้งแรกหลังจากเปิด iPhone กับการป้อนรหัสผ่านภายหลังเพื่อปลดล็อกนั้นแตกต่างกันมาก
  • เมื่อป้อนรหัสผ่านตอนเริ่มใช้งาน iPhone ครั้งแรก ระบบจะเปิด key store ของ Secure Enclave Processor(SEP) ซึ่งใช้สำหรับเข้ารหัสข้อมูลใน iPhone
    • ในสถานะ ก่อนปลดล็อกครั้งแรก (BFU) ข้อมูลผู้ใช้ยังถูกเข้ารหัสอยู่ และ Face ID กับ Touch ID จะไม่ทำงาน ต้องป้อนรหัสผ่านเท่านั้น เนื่องจากรหัสผ่าน Wi‑Fi ถูกเข้ารหัสไว้จึงไม่สามารถเชื่อมต่อ Wi‑Fi ได้ แต่ยังเชื่อมต่อเครือข่ายเซลลูลาร์ได้หาก SIM ไม่ได้ป้องกันด้วย PIN และจะไม่แสดงตัวอย่างเนื้อหาการแจ้งเตือน
    • ในสถานะ หลังปลดล็อกครั้งแรก (AFU) ข้อมูลผู้ใช้จะถูกถอดรหัส ระหว่างที่ iOS ทำงาน key store จะยังเปิดอยู่ จึงเชื่อมต่อ Wi‑Fi และแสดงตัวอย่างการแจ้งเตือนข้อความได้ แต่สถานะนี้เสี่ยงต่อการโจมตีมากกว่า
  • จุดอ่อนด้านความปลอดภัยของสถานะ AFU: หากผู้โจมตีข้ามหน้าจอล็อกได้ ก็อาจเข้าถึงข้อมูลที่ถูกถอดรหัสแล้วได้ และเมื่อมีการเข้าถึงตัวเครื่องโดยตรง ความเป็นไปได้ในการใช้ช่องโหว่ผ่าน USB, Wi‑Fi, Bluetooth หรือการโจมตีทางฮาร์ดแวร์ก็จะสูงขึ้น

ข่าวลือเกี่ยวกับการรีบูต iPhone

  • หน่วยงานบังคับใช้กฎหมายจะเก็บ iPhone ให้อยู่ในสถานะตัดขาดจากอินเทอร์เน็ต เพื่อดึงข้อมูลสำคัญทางนิติเวชขณะเครื่องอยู่ในสถานะ AFU
  • มีข่าวลือว่าใน iOS 18 นั้น iPhone จะรีบูตเองได้แม้จะถูกตัดขาดจากเครือข่ายไร้สายทั้งหมดอย่างสมบูรณ์
  • นอกจากนี้ยังมีข้ออ้างว่า iPhone ที่ใช้ iOS 18 สามารถสั่งให้ iPhone ที่ใช้ iOS เวอร์ชันต่ำกว่าทำการรีบูตผ่านระบบไร้สายได้ด้วย (แต่ในทางเทคนิคมีความเป็นไปได้ต่ำ)

การค้นพบฟีเจอร์รีบูตเมื่อไม่มีการใช้งาน

  • Apple มักทิ้งเบาะแสไว้ผ่าน debug string เมื่อเพิ่มฟีเจอร์ใหม่
    • ตั้งแต่ iOS 18.1 เริ่มพบสตริง inactivity_reboot และใน iOS 18.2 เปลี่ยนเป็น inactivity_reboot_enabled
  • จากการทดสอบยืนยันได้ว่า จะเกิดการรีบูตเมื่อไม่มีการใช้งานหากไม่มีการปลดล็อกเป็นเวลา 3 วัน (72 ชั่วโมง)

วิศวกรรมย้อนกลับฟีเจอร์รีบูตเมื่อไม่มีการใช้งาน

  • Secure Enclave Processor(SEP) จะติดตามเวลาที่ปลดล็อกครั้งล่าสุด และเมื่อเกิน 3 วันจะส่งการแจ้งเตือนไปยัง AppleSEPKeyStore kernel module
  • AppleSEPKeyStore kernel module จะส่งสัญญาณไปยัง user space เพื่อเริ่มการรีบูต และ SpringBoard จะปิดทุกโปรเซสใน user space อย่างปลอดภัย
  • หลังรีบูต keybagd จะอ่านตัวแปร NVRAM ชื่อ "aks-inactivity" และหากถูกตั้งค่าไว้จะส่งอีเวนต์สำหรับการวิเคราะห์ไปยัง Apple
  • หากรีบูตไม่สำเร็จ จะเกิด kernel panic

การวิศวกรรมย้อนกลับ Secure Enclave Processor

  • SEP เป็นหนึ่งในความลับที่ Apple ปกป้องมากที่สุด และเฟิร์มแวร์ของมันถูกเข้ารหัสไว้
  • เฟิร์มแวร์ของ SEP ประกอบด้วยหลายแอป และแอปที่เกี่ยวข้องกับ SEPKeyStore มีชื่อว่า "sks"
  • SEP จะสร้างข้อความและส่งไปยัง SEPKeyStore kernel extension เมื่อระยะเวลาเกิน 3 วัน (72 ชั่วโมง)

เป็นมาตรการที่เล็งเป้าเฉพาะตำรวจหรือไม่?

  • ผลด้านการยกระดับความปลอดภัย: แม้สื่อจะรายงานว่าฟีเจอร์นี้ดูเหมือนมุ่งเป้าไปที่หน่วยงานบังคับใช้กฎหมายเป็นหลัก แต่ในแง่การป้องกันการโจรกรรมถือว่าเป็นการยกระดับความปลอดภัยครั้งใหญ่
    • อุปกรณ์ของหน่วยงานบังคับใช้กฎหมายรุ่นเก่ามักถูกขายในราคาถูกบนแพลตฟอร์มอย่าง eBay และฟีเจอร์นี้ช่วยลดกรณีที่โจรนำอุปกรณ์เหล่านั้นมาใช้เข้าถึงข้อมูลใน iPhone
    • ในความเป็นจริง โจรมักเข้าถึงเครื่องมือแฮ็กล่าสุดได้ยาก หรือไม่มีทรัพยากรพอจะปลดล็อกอุปกรณ์ให้ได้ภายใน 3 วัน
  • ความสำคัญของการอัปเดตอุปกรณ์: การคงไว้ซึ่ง iOS เวอร์ชันล่าสุดมีความสำคัญอย่างมากต่อการปกป้องข้อมูลส่วนบุคคลให้ปลอดภัย
  • ความจำเป็นที่หน่วยงานบังคับใช้กฎหมายต้องปรับตัว:
    • หน่วยงานบังคับใช้กฎหมายจำเป็นต้องปรับขั้นตอนการดึงข้อมูลให้เสร็จภายใน 3 วัน
    • ผู้ผลิตเครื่องมือนิติเวชบางรายได้ประกาศแล้วว่าสามารถจัดกระบวนการดึงข้อมูลให้เสร็จภายใน 24 ชั่วโมงได้
    • สิ่งนี้สะท้อนข้อจำกัดว่าการดึงข้อมูลทำได้เฉพาะในสถานะ AFU เท่านั้น
  • ความไม่สมมาตรของภัยคุกคามด้านความปลอดภัย:
    • สำหรับโจร ฟีเจอร์นี้ทำให้การได้มาซึ่งข้อมูลแทบเป็นไปไม่ได้ และกลายเป็นกำแพงด้านความปลอดภัยที่สำคัญ
    • ในทางกลับกัน หน่วยงานบังคับใช้กฎหมายต้องแบกรับภาระในการทำให้กระบวนการคล่องตัวขึ้นและตอบสนองให้เร็วกว่าเดิม

ประเด็นสำคัญ

  • ไม่เกี่ยวข้องกับกิจกรรมไร้สาย:
    • ฟีเจอร์นี้ไม่ได้เกี่ยวข้องกับกิจกรรมบนเครือข่ายไร้สาย
    • ข้ออ้างในเอกสารของหน่วยงานบังคับใช้กฎหมายที่ระบุว่า "มีการรีบูตจากการสื่อสารไร้สายระหว่างอุปกรณ์" นั้นยากจะเชื่อถือ
    • การรีบูตของอุปกรณ์ก่อน iOS 18 มีแนวโน้มว่าเกิดจากบั๊กซอฟต์แวร์มากกว่า
  • บทบาทของ SEP:
    • SEP เป็นผู้วัดระยะเวลาที่ไม่มีการใช้งานและเป็นตัวทริกเกอร์การรีบูต
    • SEP สื่อสารกับ SEPKeyStore kernel extension เพื่อดำเนินคำสั่งรีบูต
    • มีความเป็นไปได้สูงว่าการปรับเวลาโดยอาศัยแหล่งภายนอกผ่านอินเทอร์เน็ตหรือเครือข่ายเซลลูลาร์จะไม่ส่งผลต่อไทเมอร์ 3 วันนี้
  • ฟีเจอร์ความปลอดภัยที่แข็งแกร่ง:
    • หากผู้โจมตีต้องการป้องกันไม่ให้เกิดการรีบูตเมื่อไม่มีการใช้งาน ก็จำเป็นต้องมีสิทธิ์รันโค้ดในระดับเคอร์เนล
    • แม้นักวิเคราะห์นิติเวชอาจสามารถถ่วงเวลาการรีบูตเพื่อดึงข้อมูลได้ แต่การเจาะระบบครั้งแรกก็ยังต้องเกิดขึ้นภายใน 3 วัน
  • ภูมิทัศน์ภัยคุกคามที่เปลี่ยนไป:
    • ฟีเจอร์นี้สร้างความท้าทายใหม่ทั้งต่อโจรและนักวิเคราะห์นิติเวช
    • สำหรับโจร มันแทบจะปิดกั้นการเข้าถึงบัญชีธนาคารและข้อมูลอ่อนไหวอื่น ๆ ที่เก็บอยู่ใน iPhone
    • ส่วนหน่วยงานบังคับใช้กฎหมายจะถูกกดดันให้ต้องตอบสนองเร็วขึ้นเพื่อให้เข้าถึงข้อมูลได้

1 ความคิดเห็น

 
GN⁺ 2024-11-18
ความเห็นจาก Hacker News
  • ในสถานะ AFU ข้อมูลผู้ใช้จะถูกถอดรหัสได้ นักพัฒนาสามารถเลือกใช้คีย์ได้หลายแบบเพื่อปกป้องข้อมูล Apple ใช้คีย์บางประเภทเพื่อปกป้องข้อมูลที่อ่อนไหว เช่น ข้อมูลสุขภาพของผู้ใช้

    • ดูข้อมูลเกี่ยวกับคลาสการปกป้องข้อมูลของ Apple ได้ที่นี่
  • มีการตั้งข้อสงสัยว่าทำไมจึงเน้นมากเกินไปในประเด็นที่ว่าไม่เชื่อมต่อเครือข่าย GrapheneOS มีฟีเจอร์รีบูตอัตโนมัติหลังผ่านไประยะหนึ่งอยู่แล้ว ซึ่งมีประสิทธิภาพในการป้องกันข้อมูลรั่วไหล

  • มีการตั้งคำถามไว้สองข้อ:

      1. หาก iPhone ที่ล็อกอยู่รีบูตทุก 3 วันแบบไม่มีเงื่อนไข อาจทำให้เกิดปัญหาในกรณีการใช้งานที่ถูกต้องตามปกติได้
      1. หากบทความนี้ถูกต้อง การรีบูตมีจุดประสงค์เพื่อกลับไปสู่สถานะ "Before First Unlock" เพื่อความปลอดภัย จึงมีคำถามว่าทำไมไม่สามารถสลับไปยังสถานะนี้ได้โดยไม่ต้องรีบูต
    • คำถามโบนัส: โทรศัพท์ Android จะขอรหัสผ่านอีกครั้งเหมือนหลังรีบูตเมื่อไม่มีการเคลื่อนไหวเป็นเวลาหลายชั่วโมง สิ่งนี้แตกต่างจากสถานะ "Before First Unlock" ของ iPhone หรือไม่
  • มีการตั้งข้อสงสัยว่าทำไม Apple จึงเข้ารหัสเฟิร์มแวร์ของ SEP หากไม่ใช่สิ่งจำเป็นต่อโมเดลความปลอดภัย ก็อาจเป็นไปเพื่อปกป้องทรัพย์สินทางปัญญา

  • เป็นบทความที่ยอดเยี่ยมซึ่งแสดงให้เห็นว่า Apple นำหน้าในด้านความปลอดภัยของอุปกรณ์

  • มีการกล่าวถึงความเป็นไปได้ที่ iOS 18 อาจสั่งให้โทรศัพท์เครื่องอื่นรีบูตผ่านระบบไร้สายได้ แต่ดูเหมือนหลังจากนั้นจะไม่ได้พูดถึงอีก

  • มีความเห็นว่าคล้ายกับวิธีปลดล็อก BFU และ AFU ของ AOSP

  • มีความสงสัยว่าน่าจะถูกจัดการอยู่ใน Secure Enclave ซึ่งจะทำให้ปิดการทำงานได้ยากมาก แม้ iOS จะถูกเจาะจนเสียหายทั้งหมดก็ตาม

  • มีคำถามว่าทำไมจึงกำหนดเวลาเฉพาะเป็น 3 วัน และเหตุใดจึงไม่ให้ผู้ใช้ตั้งค่าระยะหน่วงเองได้

  • ขอบคุณสำหรับบทความที่ยอดเยี่ยม และเป็นการวิเคราะห์ที่ยอดเยี่ยม