1 คะแนน โดย GN⁺ 2023-12-23 | 1 ความคิดเห็น | แชร์ทาง WhatsApp

กระบวนการค้นพบ

  • ศึกษาวิธีที่ WhatsApp ส่งคำขอ HTTP ผ่านฟีเจอร์แสดงตัวอย่างลิงก์
  • ยืนยันได้ว่าลิงก์และตัวอย่างพรีวิวถูกส่งแยกกัน และใช้จุดนี้สร้างข้อความที่มีพรีวิวไม่ตรงกับลิงก์จริงได้สำเร็จ

ปัญหา #1 - ความไม่ตรงกันของตัวอย่างลิงก์

  • วิเคราะห์ลิงก์และข้อมูลพรีวิวที่อยู่ในข้อความ WhatsApp เพื่อหาวิธีทำให้เกิดความไม่ตรงกัน
  • ประสบความสำเร็จในการดักจับและแก้ไขข้อความ เพื่อส่งข้อความที่พรีวิวกับลิงก์จริงไม่ตรงกัน

ปัญหา #2 - การปลอมแปลงลิงก์ (2K2E)

  • ทดลองวิธีเปลี่ยนการแสดงผลของข้อความด้วยอักขระ Unicode
  • พัฒนาวิธีใช้ตัวอักษร U+202E (Right-To-Left Override) เพื่อแสดงลิงก์แบบย้อนกลับ และทำให้ URL ปลอมดูเหมือนเป็น URL จริง

ผลลัพธ์สุดท้าย

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

สถานการณ์การโจมตี

  • ผู้โจมตีซื้อโดเมนปลอมและสร้างข้อความที่ใช้พรีวิวของโดเมนปกติ
  • ลบพร็อพเพอร์ตี matchedText และแก้ไขพร็อพเพอร์ตี text ให้เป็นอักขระ U+202E พร้อม URL ปลอม เพื่อดัดแปลงข้อความ
  • จากนั้นส่งข้อความที่ถูกดัดแปลงนี้ไปยังเหยื่อ

ปฏิกิริยาของ Meta

  • Meta มีระบบที่สามารถปรับตรรกะการทำ URL normalization แบบไดนามิกได้ เพราะต้องรองรับหลายแพลตฟอร์มและหลายสภาพแวดล้อม
  • อย่างไรก็ตาม Meta ดูไม่มีเจตนาจะแก้ปัญหาด้านความปลอดภัยนี้ และน่าจะตอบสนองก็ต่อเมื่อถูกตรวจจับว่าเป็นสแปมเท่านั้น

วิธีบรรเทาความเสี่ยง

  • เนื่องจาก Meta ไม่มีเจตนาจะแก้ปัญหานี้ จึงไม่สามารถเชื่อถือลิงก์ใน WhatsApp ได้
  • ก่อนคลิกลิงก์ ควรคัดลอกลิงก์เพื่อตรวจสอบที่อยู่ลิงก์ซึ่งถูกทำความสะอาดจากอักขระ U+202E แล้วในพรีวิวของคลิปบอร์ด

อัปเดต

  • นอกจาก WhatsApp แล้ว ยังมีบริการอื่น ๆ ที่เสี่ยงต่อ 2K2E เช่นกัน เนื่องจากไม่มีการทำความสะอาดข้อมูลอย่างเหมาะสม

GN⁺ ความเห็น:

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

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

 
GN⁺ 2023-12-23
ความคิดเห็นจาก Hacker News
  • เป็นการผสมผสานการใช้ฟีเจอร์ในทางที่ผิดได้อย่างชาญฉลาด แต่ประเมินว่าผลกระทบด้านความปลอดภัยต่ำ เพราะหากผู้โจมตีไม่ใช่ตำรวจหรือหน่วยข่าวกรอง ก็ยังต้องมีการโจมตีเพิ่มเติมอีก เพื่อความแม่นยำทางเทคนิค คิดว่าการเรียกสิ่งนี้ว่า "คลิกแจ็กกิง" ไม่ค่อยเหมาะสม คลิกแจ็กกิงหมายถึงเทคนิคเฉพาะ โดยเป็นการวาง HTML frame ที่มองไม่เห็นซ้อนทับอยู่เหนือคอนเทนต์อื่น
  • คลิกแจ็กกิงคือกรณีที่องค์ประกอบอื่นที่ไม่ใช่องค์ประกอบที่ผู้ใช้ตั้งใจจะคลิก เป็นตัวรับเหตุการณ์คลิกแทน ผู้โจมตีสามารถตรวจจับได้ว่าผู้ใช้คลิกอะไร สิ่งที่ OP ค้นพบนั้นเจ๋งมาก และจริง ๆ แล้วเป็นการหาวิธีเปลี่ยนการแสดงลิงก์ในอีกระบบหนึ่งที่ไม่ใช่คลิกแจ็กกิง
  • ผู้ใช้มีปัญหาในการจดจำโดเมนเมื่อคลิกลิงก์ และหลายคนก็ไม่เข้าใจหรือแยกแยะไม่ได้ แม้ว่าลิงก์จะติดตามได้และดูน่าสงสัย ก็ไม่มีใครตั้งข้อสังเกตว่าเป็นปัญหา
  • Meta ควรยอมรับและแก้ไขปัญหาที่ URL ของข้อความกับ URL ของพรีวิวอาจไม่ตรงกัน เรื่องนี้อาจมีไว้เพื่อคลาย URL แบบย่อ แต่ Meta และ WhatsApp ก็น่าจะหาวิธีแก้ที่ฉลาดกว่านี้ได้
  • ปัญหาที่แท้จริงไม่ใช่ WhatsApp หรืออักขระยูนิโค้ดแบบย้อนทิศทาง แต่คือ URL เองที่เข้าใจยาก แม้แต่ URL ง่าย ๆ อย่าง visa.securesite.com ก็ยังหลอกคนจำนวนมากได้ ดูแล้วไม่น่าจะมีทางออกที่ดีในอนาคตอันใกล้
  • รู้สึกผิดหวังที่ Meta ไม่แก้ปัญหานี้และไม่จ่ายบั๊กบาวน์ตีให้กับนักวิจัย
  • น่าสนใจที่การโจมตีนี้ถูกจัดประเภทเป็น "รีเวิร์สเอนจิเนียริง"
  • RTL เป็นสาเหตุใหญ่ของช่องโหว่ด้านความปลอดภัยมาตลอดช่วงที่มันมีอยู่ ควรมีตัวเลือกในระบบปฏิบัติการให้ปิดการใช้งาน RTL เพื่อไม่ให้คนที่ไม่ได้ใช้ RTL ต้องเผชิญความเสี่ยง
  • การโจมตีนั้นเจ๋งมาก และบทความก็อ่านง่ายเข้าใจง่าย มีคำถามพื้นฐานว่าใช้ดีบักเกอร์กับเว็บแอป WhatsApp หรือใช้กับบนโทรศัพท์ หรือใช้เอมูเลเตอร์หรือไม่
  • ขอบคุณที่แชร์ไอเดียและช่องโหว่ที่น่าสนใจ เป็นสรุปที่กระชับและชัดเจน
  • ยืนยันแล้วว่าลิงก์กับพรีวิวถูกส่งแยกจากกัน การออกแบบ UI ที่ทำให้ผู้ใช้ต้องเปรียบเทียบลิงก์กับพรีวิวเองเพื่อความปลอดภัยนั้นเป็นปัญหาที่ใหญ่กว่า