1 คะแนน โดย GN⁺ 2026-04-23 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • ข้อความที่ถูกลบหรือข้อความที่ตั้งให้หายไปอัตโนมัติ ในแอปส่งข้อความอาจยังคงอยู่ในแคชการแจ้งเตือนและถูกอ่านได้ด้วยเครื่องมือฟอเรนสิก และ Apple ได้แก้ปัญหานี้ด้วย อัปเดตซอฟต์แวร์ สำหรับ iPhone และ iPad
  • การแจ้งเตือนที่แสดงเนื้อหาข้อความอาจถูกเก็บไว้ในอุปกรณ์ได้นานสูงสุดหนึ่งเดือน โดยในประกาศด้านความปลอดภัยของ Apple ระบุว่าการแจ้งเตือนที่ถูกทำเครื่องหมายให้ลบอาจ คงอยู่ต่อไปโดยไม่คาดคิด
  • ช่องทางการดึงข้อมูลนี้เชื่อมโยงกับวิธีที่ ข้อความ Signal ที่ถูกลบ ยังคงค้างอยู่ในฐานข้อมูลของโทรศัพท์ ทำให้หน่วยงานบังคับใช้กฎหมายสามารถอ่านข้อความที่ถูกลบไปนานแล้วได้
  • หลังจากปัญหานี้ถูกเปิดเผย Signal ได้ขอให้ Apple ออกแพตช์แก้ไข และฟีเจอร์ ตัวตั้งเวลาลบอัตโนมัติ อาจช่วยผู้ใช้ที่ต้องการเก็บบทสนทนาเป็นความลับแม้ในกรณีที่อุปกรณ์ถูกยึด
  • การลบภายในแอปเพียงอย่างเดียวอาจไม่ทำให้เนื้อหาเดียวกันหายไปจาก ที่เก็บการแจ้งเตือน ระดับระบบปฏิบัติการ และการแก้ไขครั้งนี้ชี้ให้เห็นว่าการปกป้องความเป็นส่วนตัวของข้อความที่ลบอัตโนมัติต้องพึ่งพาชั้น OS ด้วย

การแก้บั๊กและผลกระทบ

  • Apple ได้ปล่อย อัปเดตซอฟต์แวร์ สำหรับ iPhone และ iPad เพื่อแก้บั๊กที่เปิดทางให้หน่วยงานบังคับใช้กฎหมายดึงข้อความที่ถูกลบหรือหายไปอัตโนมัติจากแอปส่งข้อความได้
    • ปัญหานี้เกิดจาก การแจ้งเตือน (notification) ที่แสดงเนื้อหาข้อความถูกแคชไว้ในอุปกรณ์ได้นานสูงสุดหนึ่งเดือน
  • ในประกาศด้านความปลอดภัยของ Apple ระบุว่าการแจ้งเตือนที่ถูกทำเครื่องหมายให้ลบอาจ คงอยู่ต่อไปโดยไม่คาดคิด บนอุปกรณ์
  • ยัง ไม่ทราบแน่ชัด ว่าเหตุใดเนื้อหาการแจ้งเตือนจึงถูกบันทึกไว้ตั้งแต่แรก
    • การแก้ไขครั้งนี้ทำให้เห็นว่าพฤติกรรมดังกล่าวเป็นบั๊ก
  • Apple ยังไม่ได้ตอบคำถามในทันทีว่าเหตุใดการแจ้งเตือนจึงถูกเก็บรักษาไว้
  • Apple ยังได้แบ็กพอร์ตการแก้ไขนี้ไปยัง iPhone และ iPad ที่รัน iOS 18 รุ่นเก่า ด้วย

ช่องทางการดึงข้อมูลที่ถูกเปิดเผย

  • การแก้ไขครั้งนี้เชื่อมโยงโดยตรงกับปัญหาที่ 404 Media เปิดเผยเมื่อต้นเดือนนี้
    • FBI สามารถใช้เครื่องมือฟอเรนสิกดึง ข้อความ Signal ที่ถูกลบ ออกจาก iPhone ของใครบางคนได้
  • ที่ดึงข้อมูลได้เป็นเพราะเนื้อหาข้อความเคยถูกแสดงเป็นการแจ้งเตือนมาก่อน แล้วจึงยังถูกเก็บไว้ในฐานข้อมูลของโทรศัพท์แม้หลังจากข้อความถูกลบออกจาก Signal แล้ว
  • เมื่อหน่วยงานบังคับใช้กฎหมายใช้ เครื่องมือฟอเรนสิก ก็สามารถอ่านข้อความที่ถูกลบไปนานแล้วได้

Signal และฟีเจอร์ข้อความลบอัตโนมัติ

  • Meredith Whittaker แห่ง Signal เปิดเผยว่าหลังจากปัญหานี้ถูกเปิดเผยแล้ว เธอได้ขอให้ Apple ดำเนินการแก้ไข
    • เธอเขียนว่าการแจ้งเตือนของข้อความที่ถูกลบไม่ควรหลงเหลืออยู่ในฐานข้อมูลการแจ้งเตือนของระบบปฏิบัติการใด ๆ
  • Signal เช่นเดียวกับแอปส่งข้อความอื่นอย่าง WhatsApp มี ฟีเจอร์ตัวตั้งเวลา สำหรับลบข้อความอัตโนมัติหลังผ่านไประยะเวลาหนึ่ง
  • ฟีเจอร์นี้อาจช่วยผู้ใช้ที่ต้องการรักษาบทสนทนาให้เป็นความลับ แม้ในกรณีที่เจ้าหน้าที่ยึดอุปกรณ์ไป

ความกังวลด้านความเป็นส่วนตัว

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

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

 
GN⁺ 2026-04-23
ความเห็นจาก Hacker News
  • ผมมองว่านี่เป็น บั๊ก ที่แคชค้างอยู่บนอุปกรณ์ แต่อีกด้านหนึ่งการที่ Apple กับ Google อยู่กลางเส้นทางของระบบแจ้งเตือนแทบทั้งหมดก็ยังน่ากังวล เพราะโครงสร้างมันทำให้เนื้อหาต้องผ่านเซิร์ฟเวอร์อยู่ดี ดังนั้นถ้าอยากให้ข้อความที่เข้ารหัสแบบต้นทางถึงปลายทางถูกเปิดเผยต่อคนน้อยลง ก็ควรตั้งค่าให้การแจ้งเตือนแสดงแค่ประมาณว่า มีข้อความใหม่เข้า และซ่อนเนื้อหาหรือผู้ส่งไว้
    • ผมคิดว่าคำอธิบายนี้ ผิดอยู่สองจุด หนึ่ง ประเด็นนี้คือ OS เก็บติดตามการแจ้งเตือนไว้ในเครื่อง ไม่ใช่ปัญหาที่เซิร์ฟเวอร์แจ้งเตือนของ Google หรือ Apple สอง ถึงการแจ้งเตือนจะผ่านเซิร์ฟเวอร์ของ Apple หรือ Google ก็ยังรักษา E2EE ได้ ถ้าเข้ารหัสข้อมูลเองหรือไม่ใส่เนื้อความข้อความลงไป จริง ๆ แล้ว Signal ก็ทำแบบนั้น จึงไม่ใช่โครงสร้างที่ Apple หรือ Google จะได้เห็นข้อความแบบ plaintext
    • เท่าที่ผมคิด Apple กับ Google ต่างก็มีความสามารถให้แอปดักรับและแก้ไขข้อความก่อนแสดงผลได้ ดังนั้นจึงสามารถส่ง การแจ้งเตือนแบบเข้ารหัส มา แล้วถอดรหัสด้วยโค้ดของแอปบนเครื่องผู้ใช้ก่อนแสดงได้
    • ผมว่าอันนี้พูดถูก เซิร์ฟเวอร์ส่งมาแค่การแจ้งเตือน แล้วค่อยเอาไปประกอบกับข้อความที่อ่านได้หลังปลดล็อกบนเครื่องเพื่อแสดงผลก็พอ ไม่เห็นจำเป็นต้องส่งข้อความ plaintext ไปถึงเซิร์ฟเวอร์ของ Apple หรือ Google เลย
    • จาก Matrix FAQ ที่ผมเพิ่งอ่านมา ผมมองว่าคำอธิบายนั้นไม่ค่อยตรงนัก ในแอป Matrix จะมีแค่ metadata บางส่วนวิ่งจากเซิร์ฟเวอร์แชต ผ่าน push server แล้วไปยังอุปกรณ์ของผมผ่าน Google ส่วนเนื้อความยังคงอยู่ในสถานะ E2EE แอปจะถูกปลุกด้วยการแจ้งเตือน metadata แล้วค่อยไปดึงข้อความจริงมาแสดงในการแจ้งเตือนอีกที และอย่างที่ความเห็นสุดท้ายชี้ไว้ ฝั่ง Android ก็ยังมีปัญหาการเก็บไว้ในเครื่องจนกว่าจะมีการแก้ไข
    • ในกรณีนี้ก็คือเราใช้ OS notification API ของ Google และ Apple พร้อมกับส่งข้อความ plaintext ให้มันจริง ๆ
  • ผมคิดว่า บั๊ก ที่บทความพูดถึงเป็นแค่ส่วนหนึ่งของปัญหา ประเด็นหลักคือข้อความในการแจ้งเตือนถูกเก็บไว้ในฐานข้อมูลของโทรศัพท์นอก Signal และถ้าอยากหลีกเลี่ยงก็ต้องเปลี่ยนการตั้งค่า ในกรณีนี้จำเลยลบตัวแอป Signal ไปแล้ว และตามปกติการแจ้งเตือนของแอปนั้นก็ควรถูกทำเครื่องหมายว่าลบภายในด้วย แต่ดูเหมือนว่าจะไม่ถูกลบ ซึ่งน่าจะเป็นสิ่งที่มีการแก้ไขครั้งนี้ แก่นของข้อมูลที่เปิดเผยคือ การแจ้งเตือนที่ถูกทำเครื่องหมายว่าเป็นเป้าหมายให้ลบ อาจยังคงอยู่บนอุปกรณ์ได้โดยไม่คาดคิด และจากคำอธิบายที่เรียกว่า logging issue ก็อาจเป็นไปได้ว่ามันไปค้างอยู่ในฝั่ง log มากกว่าตัวฐานข้อมูลหลัก
    • เท่าที่ผมเห็น น้ำเสียงมันเหมือนว่าไม่ได้มีแค่ log แต่ลามไปถึง logs, json, plist, SQLite DB ด้วย ใน /private/var/mobile/Library/Biome/streams/.../Notification/segments/ ของ Biome มี raw log ของหัวข้อและเนื้อหา ใน /var/mobile/Library/{BulletinBoard,UserNotificationsCore}/ ของ BulletinBoard และ UserNotificationsCore มีไฟล์ json, plist ของสถานะส่งแล้วและปิดแล้ว และใน /var/mobile/Library/CoreDuet/coreduetdClassD.db ของ CoreDuet ก็มี SQLite ที่ใส่เหตุการณ์จาก Biome กลับเข้าไปอีกที ที่มาคือทวีตนี้
    • ผมคิดว่าการตีความนั้นยังเป็นแค่ การคาดเดา คำว่าถูกทำเครื่องหมายให้ลบอาจไม่ได้หมายถึงเฉพาะหลังลบทั้งแอป แต่อาจหมายถึงหลังจากผู้ใช้ปัดปิดการแจ้งเตือนก็ได้
    • สิ่งแรกที่ผมนึกถึงคือความเป็นไปได้ของ SQLite WAL
    • ผมคิดว่าสองอย่างนี้อาจเป็น ปัญหาเดียวกัน โดยแทบไม่ต่างกันเลย เลยสงสัยว่าทำไมถึงมองว่าเป็นคนละเรื่อง
  • ผมคิดว่าวิธีของ Signal ที่ใช้ การแจ้งเตือนแบบทั่วไป อย่าง “คุณได้รับข้อความ” เป็นแนวปฏิบัติด้านความปลอดภัยที่ดีโดยรวม
    • จริง ๆ แบบนี้ทำได้กับแทบทุกแอป แค่ไปตั้งค่า notifications shows previews ใน iOS เป็น never
  • ผมค่อนข้าง อึดอัดใจ ที่ Signal ไม่สื่อสารเรื่องนี้กับผู้ใช้อย่างจริงจัง ผมปิดการแจ้งเตือนไว้แล้ว แต่ Signal ก็ยังคอยเตือนให้เปิดกลับมา
  • เรื่องนี้ทำให้ผมย้อนถามตัวเองว่า สำหรับ Mythos แล้ว ความกังวลที่ใหญ่ที่สุดคือ การค้นพอช่องโหว่ หรือ การแก้ไขช่องโหว่ กันแน่
  • ตอนแรกผมก็สับสนอยู่เหมือนกัน เพราะผมคิดว่าการแจ้งเตือนแบบพุชถูก เข้ารหัสแบบต้นทางถึงปลายทาง ดังนั้นบริการพุชจึงไม่น่าจะแคชไว้ในรูปที่อ่านได้ และตัวแอปค่อยรับไปถอดรหัสบนอุปกรณ์ แต่ดูเหมือนความจริงคือแอปถอดรหัสแล้วส่งให้ผู้ใช้ผ่าน OS API จากนั้นข้อความแจ้งเตือนนั้นก็ถูกเก็บซ้ำลงไปในอะไรสักอย่างคล้าย ฐานข้อมูลประวัติการแจ้งเตือน บนเครื่อง
    • ผมก็เข้าใจว่าเป็น พฤติกรรมลักษณะนั้น เหมือนกัน
    • เท่าที่ผมเห็น ในสถาปัตยกรรม push ของ Apple และ Google มี metadata จำนวนมากที่ยังเป็น plaintext
  • ในแง่ความเป็นส่วนตัว ผมมองว่าปัญหานี้เป็นที่รู้กันมาพักใหญ่แล้ว Google กับ Apple บางครั้งส่งเนื้อหาการแจ้งเตือนไปยังเซิร์ฟเวอร์ของตัวเอง ทำให้เกิดการข้ามขอบเขตของแอปได้ ถ้าอยากอ่านคำอธิบายหมวดใกล้เคียงกัน ก็มีบทความนี้ที่น่าอ้างอิง
    • ผมคาดว่า Signal จะ เข้ารหัสล่วงหน้า ข้อมูลการแจ้งเตือนก่อนส่งไปยัง Apple แล้วค่อยถอดรหัสบนอุปกรณ์ด้วย Notification Service Extension นี่เป็นแพตเทิร์นที่ใช้กันทั่วไปเพื่อไม่ต้องเชื่อใจ Apple ดังนั้นสุดท้ายจึงไม่ใช่ Apple ที่ถอดรหัส แต่เป็นฝั่งอุปกรณ์ที่ถอดแล้วเก็บ plaintext ไว้
    • ในกรณีที่ถูกรายงานครั้งนี้ ผมเข้าใจว่าเนื้อหาไม่ได้หลุดออกจากเซิร์ฟเวอร์ แต่ถูก หน่วยงานสืบสวนของรัฐบาลกลาง ดึงออกมาจากโทรศัพท์โดยตรง
    • ผมนึกถึงพวก Snapchat หรือ WhatsApp ด้วย WhatsApp พูดเรื่อง end-to-end แต่ก็มีข้อกล่าวหาว่าส่งสำเนาข้อความบางส่วนให้เจ้าหน้าที่ตามคีย์เวิร์ดได้ ทำให้รู้สึกว่าจัดอยู่ในกลุ่มความกังวลคล้ายกัน
  • แอปไม่สามารถสั่ง iOS ได้ว่าอย่า เก็บรักษา การแจ้งเตือนนี้หลังจากแสดงแล้ว ดังนั้น payload จึงน่าจะถูกแคชไว้ตามปกติ สุดท้ายมันก็เป็นปัญหาแบบคลาสสิกว่า “ถูกลบแล้วไม่ได้แปลว่าหายไปจริง” และข้อมูลมักหลงเหลืออยู่ในที่ต่าง ๆ มากกว่าที่คิด ในแง่นั้นผมรู้สึกว่า Signal ยกกรณีนี้ขึ้นมาได้ตรงประเด็นดี
  • น่ายินดีที่ Apple backport การแก้ไขนี้กลับมาที่ iOS 18 ด้วย
    • ไม่ใช่แค่นั้น iOS 18.7.8 ดูเหมือนจะถูกปล่อยให้กับอุปกรณ์ที่รัน iOS 26 ได้ด้วยโดยไม่มีทางอ้อมอะไรเป็นพิเศษ ซึ่งก็น่าสนใจ ตรงกันข้ามกับ 18.7.3 ถึง .6 ที่ไม่เป็นแบบนั้น เลยทำให้น่าสงสัยว่ารุ่นย่อยระหว่างทางเหล่านั้นเดิมทีควรจะออกมาอยู่แล้ว แต่มี ปัญหาการปล่อยอัปเดต และไม่มีใครแก้หรือเปล่า
  • ผมเป็นพวกที่ไม่คิดจะพึ่งระบบปิดสำหรับการส่งข้อความที่ปลอดภัยเด็ดขาด โดยเฉพาะเวลาต้องสื่อสารกับ คนจำนวนมากที่ไม่เจาะจงตัวตน
    • ถึงอย่างนั้น iOS ก็น่าจะยังเป็น แพลตฟอร์มมือถือ ที่ปลอดภัยที่สุดสำหรับการส่งข้อความแบบปลอดภัย โดยเฉพาะเมื่อใช้ lock down mode