FROST ช่องโหว่ใหม่ที่ใช้ SSD แอบสอดแนมพฤติกรรมผู้ใช้ผ่านเบราว์เซอร์
ในโลกของการท่องเว็บ เรามักคุ้นเคยกับการถูกติดตามผ่านคุกกี้หรือการเก็บข้อมูลพฤติกรรมการใช้เมาส์และคีย์บอร์ด แต่ล่าสุดมีการค้นพบเทคนิคการสอดแนมรูปแบบใหม่ที่ล้ำลึกกว่าเดิม โดยการใช้ SSD (Solid-State Drive) หรือหน่วยความจำแบบแฟลชของเครื่องคอมพิวเตอร์เป็นเครื่องมือในการระบุตัวตนและติดตามกิจกรรมของผู้ใช้
เทคนิคนี้มีชื่อว่า FROST (fingerprinting remotely using OPFS-based SSD timing) ซึ่งช่วยให้เว็บไซต์ที่ประสงค์ร้ายสามารถล่วงรู้ได้ว่าผู้ใช้กำลังเปิดเว็บไซต์ใดอยู่ในแท็บอื่น หรือแม้กระทั่งทราบว่ามีแอปพลิเคชันใดกำลังทำงานอยู่ในเครื่อง โดยที่ผู้ใช้ไม่ต้องกดอนุญาตหรือโต้ตอบใดๆ เพียงแค่เปิดหน้าเว็บไซต์ที่มีการฝังโค้ดโจมตีนี้ไว้เท่านั้น
กลไกการทำงานของ FROST: การโจมตีผ่านช่องทางข้างเคียง
หัวใจสำคัญของ FROST คือการใช้สิ่งที่เรียกว่า Side Channel หรือช่องทางข้างเคียง ซึ่งเป็นการรั่วไหลของข้อมูลที่เกิดจากลักษณะทางกายภาพของฮาร์ดแวร์ เช่น การแผ่รังสีแม่เหล็กไฟฟ้า หรือในกรณีนี้คือ ระยะเวลาที่ใช้ในการประมวลผลงาน (Timing)
โดยเฉพาะอย่างยิ่ง FROST ใช้การโจมตีแบบ Contention Side Channel ซึ่งเป็นการวัดการแย่งชิงทรัพยากรของระบบ เมื่อมีหลายโปรเซสพยายามเข้าถึงทรัพยากรเดียวกัน (ในที่นี้คือ SSD) จะเกิดความล่าช้าในการเขียนหรืออ่านข้อมูลที่แตกต่างกันออกไป
การใช้ OPFS และ AI ในการวิเคราะห์
การโจมตีนี้ทำงานผ่านเบราว์เซอร์โดยใช้ JavaScript เข้าไปจัดการกับ OPFS (Origin Private File System) ซึ่งเป็นพื้นที่จัดเก็บข้อมูลส่วนตัวที่เบราว์เซอร์จัดสรรไว้ให้แต่ละเว็บไซต์ แม้ว่า OPFS จะถูกออกแบบมาให้เป็น Sandbox (ระบบแยกส่วนเพื่อความปลอดภัยไม่ให้เข้าถึงข้อมูลส่วนอื่นของเครื่อง) แต่ผู้โจมตีสามารถใช้ JavaScript วัดความเร็วในการอ่านและเขียนข้อมูลในพื้นที่นี้ได้
จากนั้น ข้อมูลความล่าช้า (Latency) ที่วัดได้จะถูกส่งไปวิเคราะห์ด้วย Convolutional Neural Network (CNN) ซึ่งเป็นระบบโครงข่ายประสาทเทียมแบบ Deep Learning ที่มีความเชี่ยวชาญในการวิเคราะห์รูปแบบข้อมูล เพื่อระบุว่ารูปแบบความล่าช้าแบบนี้ ตรงกับการใช้งานแอปพลิเคชันหรือเว็บไซต์ใดที่กำลังเปิดอยู่
ข้อจำกัดและขอบเขตของการโจมตี
แม้จะดูน่ากลัว แต่ FROST ยังมีข้อจำกัดบางประการที่ทำให้การโจมตีในวงกว้างทำได้ยาก ดังนี้:
- ขนาดไฟล์: ผู้โจมตีต้องสร้างไฟล์ OPFS ขนาดใหญ่มาก (อาจถึง 1 GB หรือมากกว่า) ซึ่งอาจทำให้ผู้ใช้สังเกตเห็นความผิดปกติของพื้นที่จัดเก็บข้อมูลได้
- ตำแหน่งการจัดเก็บ: ไฟล์ OPFS ต้องอยู่บน SSD ลูกเดียวกับที่แอปพลิเคชันเป้าหมายใช้งาน หากผู้ใช้แยกไดรฟ์ติดตั้งแอปพลิเคชันไว้ต่างหาก FROST จะไม่สามารถตรวจพบแอปเหล่านั้นได้
| หัวข้อ | รายละเอียด |
|---|---|
| ชื่อเทคนิค | FROST (fingerprinting remotely using OPFS-based SSD timing) |
| ช่องทางโจมตี | Contention Side Channel (การแย่งชิงทรัพยากร SSD) |
| เครื่องมือที่ใช้ | JavaScript, OPFS, Convolutional Neural Network (CNN) |
| เป้าหมาย | ระบุเว็บไซต์และแอปพลิเคชันที่เปิดใช้งานอยู่ในเครื่อง |
| ระบบที่ทดสอบแล้ว | macOS (M2 Mac) และ Linux (ในระดับพื้นฐาน) |
ข้อเท็จจริงสำคัญ
- FROST สามารถตรวจจับกิจกรรมข้ามเบราว์เซอร์และข้ามแอปพลิเคชันได้
- การโจมตีเกิดขึ้นได้โดยไม่ต้องมีการโต้ตอบจากผู้ใช้ (Zero-interaction)
- ใช้ AI (CNN) ในการจำแนกรูปแบบความล่าช้าของ SSD เพื่อระบุตัวตนกิจกรรม
- ปัจจุบันยังไม่มีรายงานว่ามีการนำเทคนิคนี้ไปใช้โจมตีจริงในโลกออนไลน์
- การจำกัดขนาดไฟล์ OPFS เป็นหนึ่งในแนวทางป้องกันที่นักวิจัยเสนอให้ผู้พัฒนาเบราว์เซอร์นำไปใช้
คำถามที่พบบ่อย
FROST แตกต่างจากการติดตามด้วยคุกกี้อย่างไร?
คุกกี้เป็นการเก็บข้อมูลในรูปแบบไฟล์ขนาดเล็กเพื่อจำตัวตนผู้ใช้ แต่ FROST ใช้การวัดประสิทธิภาพทางกายภาพของฮาร์ดแวร์ (SSD) เพื่อวิเคราะห์ว่าผู้ใช้กำลังทำอะไรในเครื่อง ซึ่งมีความซับซ้อนและตรวจจับได้ยากกว่ามาก
เราจะป้องกันตัวเองจาก FROST ได้อย่างไรในเบื้องต้น?
วิธีที่ง่ายที่สุดคือการปิดแท็บเบราว์เซอร์ที่ไม่ใช้งานทันที และสำหรับผู้ใช้ที่มีความเชี่ยวชาญ สามารถตรวจสอบการสร้างไฟล์ OPFS ที่มีขนาดผิดปกติจากเว็บไซต์ที่ไม่รู้จักได้
การโจมตีนี้ใช้ได้กับทุกระบบปฏิบัติการหรือไม่?
นักวิจัยทดสอบการโจมตีเต็มรูปแบบบน macOS (ชิป M2) และยืนยันว่าหลักการทำงานใช้ได้กับ Linux เช่นกัน ส่วนระบบปฏิบัติการ Windows ยังไม่ได้ถูกนำมาทดสอบในงานวิจัยนี้
ทำไมการที่เบราว์เซอร์ทำงานได้ซับซ้อนขึ้นถึงทำให้เกิดช่องโหว่นี้?
เนื่องจากเบราว์เซอร์สมัยใหม่ไม่ได้เป็นเพียงตัวอ่านเอกสาร แต่เป็นแพลตฟอร์มที่รันแอปพลิเคชันหนักๆ ได้ (เช่น โปรแกรมตัดต่อวิดีโอหรือ IDE) ทำให้มีการเพิ่มฟีเจอร์อย่าง OPFS ซึ่งเป็นการขยาย Attack Surface หรือพื้นที่ที่ผู้โจมตีสามารถใช้เป็นช่องทางเข้าถึงระบบได้มากขึ้น



