0Pricing
Cyber Security Academy · บทเรียน

การเก็บข้อมูลและวิเคราะห์ iOS

ดึงและวิเคราะห์ข้อมูล iOS

การเก็บข้อมูลและวิเคราะห์ iOS เป็นบทเรียน Cyber Security Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Cyber Security Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Cyber Security Academy มีบทเรียนทั้งหมด 4 บทเรียน

แบบจำลองความปลอดภัยของ iOS

นิติวิทยาศาสตร์ดิจิทัลบน iOS ถูกกำหนดโดย แบบจำลองความปลอดภัยของฮาร์ดแวร์ที่ผสานรวมอย่างแน่นหนา

  • ตัวประมวลผลร่วมที่แยกออกมาอย่างปลอดภัย (SEP) — ตัวประมวลผลร่วมที่แยกออกมาและเก็บวัสดุกุญแจไว้ การพยายามใส่รหัสผ่านจะถูกจำกัดอัตราโดยฮาร์ดแวร์
  • การปกป้องข้อมูล — กุญแจเข้ารหัสของแต่ละไฟล์เชื่อมโยงกับรหัสผ่านและ UID ของอุปกรณ์
  • การจำกัดแอปให้อยู่ในพื้นที่แยก — แอปแต่ละแอปถูกจำกัดให้อยู่ในพื้นที่ของตนเอง

นั่นหมายความว่าการลองรหัสผ่านแบบไล่ครบทุกค่าจะถูก SEP หน่วงไว้ และข้อมูลดัมพ์แฟลชดิบจะเป็นข้อความเข้ารหัส การเข้าถึงโดยชอบด้วยกฎหมายมักอาศัยอุปกรณ์ที่ปลดล็อกโดยผู้ใช้ หรืออยู่ในสถานะ AFU

ระดับการปกป้องข้อมูล

ไฟล์ทุกไฟล์จะได้รับการกำหนด ระดับการปกป้อง ซึ่งควบคุมว่ากุญแจของไฟล์จะพร้อมใช้งานเมื่อใด

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

นี่คือเหตุผลที่ AFU มีความสำคัญบน iOS: ไฟล์ในระดับจนกว่าจะมีการยืนยันตัวตนครั้งแรกจะสามารถอ่านได้ ทำให้เข้าถึงข้อมูลผู้ใช้ส่วนใหญ่ได้

การเก็บรวบรวมข้อมูลสำรองผ่าน iTunes/ไฟน์เดอร์

วิธีดึงข้อมูลเชิงตรรกะที่เข้าถึงได้ง่ายที่สุดคือ การเก็บรวบรวมข้อมูลสำรองผ่านความสัมพันธ์การจับคู่กับเครื่องโฮสต์ (กลไกเดียวกับ iTunes/ไฟน์เดอร์)

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

สร้างข้อมูลสำรองโดยใช้ไลบรารีสำหรับอุปกรณ์เคลื่อนที่ด้วยการอนุญาตที่เหมาะสม:

idevice_id -l                       # list connected UDIDs
ideviceinfo -k ProductVersion       # confirm iOS version
idevicebackup2 backup --full ./ios_backup/

โครงสร้างข้อมูลสำรองและรายการกำกับ

ข้อมูลสำรองของ iOS จะไม่จัดเก็บไฟล์ตามชื่อ แต่จะคำนวณแฮชของเส้นทางและจัดเก็บไฟล์แบบแบน โดยมีไฟล์ฐานข้อมูลเอสคิวไลต์ Manifest.db เป็นดัชนี

  • Manifest.db จับคู่โดเมนกับเส้นทางสัมพัทธ์ไปยังชื่อไฟล์ที่ผ่านแฮชบนดิสก์
  • Info.plist / Status.plist เก็บข้อมูลกำกับของอุปกรณ์และข้อมูลสำรอง
  • ข้อมูลสำรองที่เข้ารหัสยังต้องคลายการห่อกุญแจพวงกุญแจด้วยรหัสผ่านข้อมูลสำรอง

ค้นหาหลักฐานที่ทราบตำแหน่งผ่านรายการกำกับ:

sqlite3 -readonly Manifest.db \
  "SELECT fileID, domain, relativePath FROM Files
   WHERE relativePath LIKE '%sms.db%';"

การดึงข้อมูลจากระบบไฟล์ทั้งหมด

การดึงข้อมูลจากระบบไฟล์ทั้งหมด (FFS) จะเกินขอบเขตข้อมูลที่อนุญาตให้รวมอยู่ในข้อมูลสำรอง ไปจนถึงพาร์ทิชันผู้ใช้ทั้งหมด รวมถึงแคชของแอป หลักฐานจากฐานข้อมูลความรู้ และฐานข้อมูลระบบ

  • ต้องใช้ ตัวแทนหรือช่องโหว่สำหรับใช้ประโยชน์ (เช่น อาศัยเช็กเอ็มแปดในชิปรุ่นเก่าที่มีช่องโหว่) และอุปกรณ์ที่อยู่ในสถานะ AFU
  • เก็บหลักฐานที่ข้อมูลสำรองไม่รวมไว้ เช่น knowledgeC.db, interactionC.db และแคชตำแหน่ง

FFS เป็นมาตรฐานสูงสุดสำหรับการวิเคราะห์ iOS รุ่นใหม่เมื่อสามารถได้มาโดยชอบด้วยกฎหมาย เนื่องจากทำให้เห็นฐานข้อมูลพฤติกรรมของระบบที่มองไม่เห็นในข้อมูลสำรองมาตรฐาน

ฐานข้อมูลหลักของ iOS

iOS จัดเก็บกิจกรรมของผู้ใช้ไว้ในฐานข้อมูลเอสคิวไลต์ที่รู้จักกันดีภายในโดเมนของแอป

  • sms.db — iMessage และ SMS (ตาราง: message, handle)
  • CallHistory.storedata — บันทึกการโทร
  • AddressBook.sqlitedb — รายชื่อติดต่อ
  • Photos.sqlite — ข้อมูลกำกับสื่อและลิงก์ไปยังรายการสื่อ

ค้นเนื้อหา iMessage แบบอ่านอย่างเดียวจากข้อมูลที่ดึงมา:

sqlite3 -readonly sms.db
sqlite> SELECT datetime(date/1000000000 + 978307200,'unixepoch') ts,
   ...>        h.id, m.text
   ...> FROM message m JOIN handle h ON m.handle_id=h.ROWID
   ...> ORDER BY m.date DESC LIMIT 20;

การประทับเวลาของแอปเปิล (แมค/โคโคอา)

iOS มักใช้เวลาแบบ ยุคอ้างอิงของแอปเปิล/โคโคอา ซึ่งเป็นจำนวนวินาทีตั้งแต่ 2001-01-01 UTC ไม่ใช่ปี 1970 ฐานข้อมูลบางแห่งจัดเก็บค่าในรูปนาโนวินาที

  • ค่าชดเชยไปยังยุคยูนิกซ์คือ 978307200 วินาที
  • date ของ iMessage คือจำนวนนาโนวินาทีตั้งแต่ปี 2001 ให้หารด้วย 1e9 แล้วบวกค่าชดเชย

การอ่านยุคอ้างอิงเวลาผิดจะทำให้วันที่คลาดเคลื่อนไป 31 ปี รูปแบบการแปลงคือ:

-- Cocoa seconds -> UTC
SELECT datetime(ZDATE + 978307200, 'unixepoch') FROM ZRECORD;

-- iMessage nanoseconds -> UTC
SELECT datetime(date/1000000000 + 978307200, 'unixepoch') FROM message;

ฐานข้อมูลพฤติกรรม

iOS เก็บ ข้อมูลวัดพฤติกรรมอย่างละเอียดสำหรับคุณลักษณะของระบบ ซึ่งมีคุณค่าอย่างมากต่อการสร้างลำดับเวลา

  • knowledgeC.db — การใช้งานแอป โหมดโฟกัส การล็อกและปลดล็อกอุปกรณ์ เหตุการณ์ของสิริ
  • interactionC.db — การสื่อสารกับผู้ติดต่อผ่านแอปต่าง ๆ
  • ข้อมูลตำแหน่งตามกิจวัตร / cache_encryptedB.db — ตำแหน่งสำคัญ

ข้อมูลเหล่านี้มีอยู่เฉพาะในการดึงข้อมูลแบบ FFS (ไม่อยู่ในข้อมูลสำรองมาตรฐาน) และสามารถระบุได้ว่าผู้ใช้กำลังทำอะไรในช่วงเวลาที่แน่นอนได้ แต่ต้องตีความอย่างระมัดระวัง เนื่องจากเหตุการณ์บางรายการสร้างขึ้นโดยระบบ ไม่ได้เกิดจากผู้ใช้โดยตรง

การกู้คืนพวงกุญแจ

พวงกุญแจเก็บรหัสผ่านไวไฟ โทเคน ข้อมูลรับรองของแอป และใบรับรอง โดยเข้ารหัสด้วยกุญแจระดับชั้นที่สร้างจากรหัสผ่าน

  • กู้คืนได้จาก ข้อมูลสำรอง iTunes ที่เข้ารหัส (โดยใช้รหัสผ่านข้อมูลสำรอง) หรือการดึงข้อมูลแบบ FFS
  • รายการแต่ละรายการมีระดับการปกป้องของตนเอง และบางรายการพร้อมใช้งานเฉพาะในสถานะ AFU

เนื้อหาในพวงกุญแจอาจเผยให้เห็นการเข้าถึงบัญชีและบริบทแวดล้อมที่เกี่ยวเนื่อง จึงต้องจัดการด้วยความระมัดระวังทางกฎหมายเช่นเดียวกับข้อมูลรับรองทุกประเภท

การแยกวิเคราะห์อัตโนมัติด้วย iLEAPP

iLEAPP แยกวิเคราะห์ข้อมูลสำรองของ iOS และการดึงข้อมูลแบบ FFS เป็นรายงานที่มีโครงสร้าง ครอบคลุมหลักฐานหลายร้อยประเภท

  • ถอดรหัส knowledgeC, sms, ประวัติซาฟารี สถานะแอป และข้อมูลอื่น ๆ
  • ใช้เพื่อคัดกรองเบื้องต้น จากนั้นตรวจสอบข้อค้นพบสำคัญกับฐานข้อมูลเอสคิวไลต์ดิบ

เรียกใช้ iLEAPP กับข้อมูลสำรองหรือข้อมูลที่ดึงมา:

python3 ileapp.py -t fs -i ./ios_filesystem/ -o ./ileapp_report/
# Or -t itunes for a Finder/iTunes backup folder

iCloud และการตรวจสอบข้ามกัน

ข้อมูลที่ลบออกจากอุปกรณ์อาจยังคงอยู่ใน iCloud (ข้อมูลสำรอง รูปภาพ ข้อความใน iCloud และข้อมูลแอป)

  • การเข้าถึง iCloud ต้องมี อำนาจตามกฎหมายแยกต่างหาก และข้อมูลรับรองหรือโทเคนที่ถูกต้อง
  • ตรวจสอบข้อค้นพบจากอุปกรณ์โดยเปรียบเทียบกับสำเนาบนคลาวด์และเครื่องมืออีกชนิดหนึ่ง

เช่นเดียวกับทุกครั้ง ให้ยืนยันแฮชของข้อมูลที่ดึงมาก่อนและหลังการวิเคราะห์ และบันทึกรุ่นของเครื่องมือกับคำสั่งต่าง ๆ เพื่อให้ผู้ตรวจสอบคนอื่นทำซ้ำผลลัพธ์ของคุณได้

ตรวจสอบอย่างรวดเร็ว

คุณถอดรหัสการประทับเวลาของ iMessage เป็นยุคยูนิกซ์ แล้ววันที่ออกมาเร็วเกินไป 31 ปี เกิดอะไรขึ้น

ทบทวน: การเก็บรวบรวมและวิเคราะห์หลักฐานจาก iOS

ขณะนี้คุณสามารถทำความเข้าใจชุดข้อมูลนิติวิทยาศาสตร์ดิจิทัลของ iOS ได้แล้ว

  • ระดับ Secure Enclave + การปกป้องข้อมูล ทำให้สถานะ AFU มีความสำคัญอย่างยิ่ง
  • ข้อมูลสำรองที่เข้ารหัสมีพวงกุญแจและข้อมูลสุขภาพ ส่วนการดึงข้อมูลแบบ FFS จะเพิ่มฐานข้อมูลพฤติกรรม
  • ข้อมูลสำรองมีดัชนีโดยใช้ Manifest.db พร้อมชื่อไฟล์ที่ผ่านแฮช
  • หลักฐานสำคัญ ได้แก่ sms.db, CallHistory, AddressBook, knowledgeC.db
  • ถอดรหัส การประทับเวลาแบบแอปเปิล/โคโคอา (ยุคปี 2001 และ +978307200)
  • คัดกรองเบื้องต้นด้วย iLEAPP ตรวจสอบด้วยตนเอง และพิจารณาใช้ iCloud เมื่อมีอำนาจตามกฎหมายที่เหมาะสม

ถัดไป: การแยกวิเคราะห์หลักฐานจากแอปและการจัดทำรายงาน

คำถามที่พบบ่อย

บทเรียน “การเก็บข้อมูลและวิเคราะห์ iOS” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “การเก็บข้อมูลและวิเคราะห์ iOS” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Cyber Security Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Cyber Security Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “การเก็บข้อมูลและวิเคราะห์ iOS”

ดึงและวิเคราะห์ข้อมูล iOS คุณปฏิบัติ Cyber Security Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Cyber Security Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Cyber Security Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน

บทเรียน “การเก็บข้อมูลและวิเคราะห์ iOS” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Cyber Security Academy นี้ได้ไหม

ได้ บทเรียน Cyber Security Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. พื้นฐานนิติวิทยาศาสตร์อุปกรณ์เคลื่อนที่
  2. การเก็บข้อมูลและวิเคราะห์ Android
  3. การเก็บข้อมูลและวิเคราะห์ iOS
  4. แอป ร่องรอย และการรายงาน
← กลับไปที่ Cyber Security Academy