TeleMessage ช่องโหว่ความปลอดภัยร้ายแรงที่ทำให้ข้อมูลลับรัฐบาลและบริษัทดังรั่วไหล
เหตุการณ์ความประมาทเพียงเล็กน้อยอาจนำไปสู่หายนะทางข้อมูลระดับชาติ เมื่อภาพถ่ายของ Mike Waltz อดีตที่ปรึกษาด้านความมั่นคงแห่งชาติของประธานาธิบดีโดนัลด์ ทรัมป์ เผยให้เห็นว่าเขากำลังแอบใช้แอปพลิเคชันส่งข้อความภายใต้โต๊ะระหว่างการประชุมคณะรัฐมนตรี แต่สิ่งที่น่าตกใจไม่ใช่การแอบเล่นโทรศัพท์ แต่เป็นตัวแอปที่เขาเลือกใช้
Waltz ไม่ได้ใช้ Signal ซึ่งเป็นแอปมาตรฐานด้านการเข้ารหัสที่ทั่วโลกยอมรับ แต่กลับใช้ TeleMessage Signal (TM SGNL) ซึ่งเป็นแอปเลียนแบบที่พัฒนาโดยบริษัท TeleMessage (ปัจจุบันถูกซื้อกิจการโดย Smarsh) แม้หน้าตาจะคล้ายกัน แต่ TM SGNL มีการเก็บสำเนาข้อความทั้งหมดไว้ในระบบ ซึ่งเป็นการทำลายหลักการความปลอดภัยขั้นพื้นฐานของการสื่อสารแบบลับ
การเจาะระบบที่ง่ายจนน่าตกใจ
เพียงสองวันหลังจากภาพดังกล่าวถูกเผยแพร่ แฮกเกอร์นิรนามรายหนึ่งเปิดเผยว่าสามารถเจาะระบบของ TeleMessage ได้สำเร็จโดยใช้เวลาเพียง 15 ถึง 20 นาทีเท่านั้น โดยอาศัยช่องโหว่พื้นฐานที่เกิดจากการตั้งค่าระบบที่ผิดพลาดอย่างรุนแรง
จุดเริ่มต้นของการโจมตีเริ่มจากแผงควบคุมผู้ดูแลระบบ (Admin Panel) ที่มีการใช้ Hashing หรือการแปลงรหัสผ่านให้เป็นชุดตัวอักษรที่ไม่สามารถอ่านได้ แต่กลับใช้มาตรฐาน MD5 ซึ่งล้าสมัยและไม่ปลอดภัย อีกทั้งยังทำในฝั่ง Client-side ทำให้ตัว Hash นั้นกลายเป็นเสมือนรหัสผ่านเสียเอง ส่งผลให้ข้อมูลส่วนตัว เช่น อีเมล ชื่อผู้ใช้ และเบอร์โทรศัพท์ ถูกเปิดเผยต่อสาธารณะ
เส้นทางสู่การเข้าถึงข้อมูลลับ
แฮกเกอร์ใช้เครื่องมือที่ชื่อว่า feroxbuster เพื่อค้นหาไฟล์ที่เปิดสาธารณะบนเว็บไซต์ และได้พบ URL ที่ลงท้ายด้วย /heapdump ซึ่งนำไปสู่การดาวน์โหลด Java heap dump หรือไฟล์บันทึกสถานะหน่วยความจำของเซิร์ฟเวอร์ขนาดประมาณ 150 MB
ภายในไฟล์ Heap Dump นี้เองที่บรรจุข้อมูลสำคัญไว้มากมาย เนื่องจากเซิร์ฟเวอร์เก็บข้อมูลการร้องขอ HTTP ซึ่งรวมถึงชื่อผู้ใช้และรหัสผ่านของลูกค้าที่ล็อกอินเข้าสู่ระบบ ทำให้แฮกเกอร์สามารถสุ่มนำรหัสเหล่านี้ไปเข้าใช้งานระบบได้ทันที
ผลกระทบและความเสียหายต่อองค์กรระดับโลก
จากการเจาะระบบในครั้งนี้ ข้อมูลที่รั่วไหลครอบคลุมถึงหน่วยงานสำคัญและบริษัทชั้นนำ ดังนี้:
- หน่วยงานศุลกากรและป้องกันชายแดนสหรัฐฯ (CBP): แฮกเกอร์สามารถเข้าถึงบัญชีของผู้ใช้งานในหน่วยงานนี้ได้
- Coinbase: พบประวัติการแชทภายในของหนึ่งในแพลตฟอร์มแลกเปลี่ยนคริปโตเคอร์เรนซีที่ใหญ่ที่สุดในโลก แม้ทางบริษัทจะระบุว่าไม่มีข้อมูลลูกค้าที่ละเอียดอ่อนรั่วไหลก็ตาม
| จุดที่เกิดช่องโหว่ | สาเหตุทางเทคนิค | ข้อมูลที่รั่วไหล |
|---|---|---|
| Admin Panel | ใช้ MD5 Hashing ที่ล้าสมัย | อีเมล, ชื่อผู้ใช้, เบอร์โทรศัพท์ |
| Archive Server | เปิดเผย /heapdump endpoint สาธารณะ | รหัสผ่าน, ข้อความแชท, กุญแจเข้ารหัส |
| การรับส่งข้อมูล | ส่งข้อความแบบไม่เข้ารหัสไปยังเซิร์ฟเวอร์เก็บข้อมูล | เนื้อหาการสนทนาทั้งหมด |
เบื้องหลังความล้มเหลวทางเทคนิค
จากการวิเคราะห์ซอร์สโค้ด พบว่า TM SGNL ส่งข้อความที่ ไม่ได้เข้ารหัส ไปยังเซิร์ฟเวอร์เก็บข้อมูล (Archive Server) ก่อนจะส่งต่อไปยังปลายทาง ซึ่งขัดแย้งกับคำโฆษณาที่ระบุว่ามีการเข้ารหัสแบบ End-to-End (การเข้ารหัสจากต้นทางถึงปลายทางโดยไม่มีใครคั่นกลางได้)
เซิร์ฟเวอร์ดังกล่าวสร้างขึ้นด้วย Spring Boot ซึ่งมีฟีเจอร์ที่เรียกว่า Actuator สำหรับช่วยนักพัฒนาตรวจสอบระบบ แต่หนึ่งในฟีเจอร์นี้คือการสร้าง Heap Dump ซึ่งตามคู่มือระบุชัดเจนว่า ห้ามเปิดใช้งานในสภาพแวดล้อมจริง (Production) เพราะมีความเสี่ยงสูง
ความผิดพลาดนี้อาจเกิดจากสองกรณี คือ TeleMessage ใช้ Spring Boot เวอร์ชันเก่าแก่กว่า 8 ปีที่เปิดฟีเจอร์นี้เป็นค่าเริ่มต้น หรือมีนักพัฒนาตั้งค่าเปิดทิ้งไว้เพื่อทดสอบระบบแล้วลืมปิดก่อนใช้งานจริง
ข้อเท็จจริงสำคัญ
- TM SGNL ไม่ใช่ Signal: เป็นแอปเลียนแบบที่เก็บสำเนาข้อความไว้บนเซิร์ฟเวอร์
- ความปลอดภัยต่ำ: ใช้การเข้ารหัสรหัสผ่านแบบ MD5 ซึ่งไม่ปลอดภัยในปัจจุบัน
- การตั้งค่าผิดพลาด: เปิดเผยไฟล์ Heap Dump ทำให้แฮกเกอร์เห็นข้อมูลในหน่วยความจำเซิร์ฟเวอร์ได้
- คำโฆษณาเกินจริง: อ้างว่าเข้ารหัส End-to-End แต่ความจริงส่งข้อมูลแบบไม่เข้ารหัสไปยังเซิร์ฟเวอร์เก็บข้อมูล
- ความเสี่ยงระดับสูง: ข้อมูลของเจ้าหน้าที่รัฐสหรัฐฯ และบริษัทการเงินระดับโลกถูกเข้าถึงได้ในเวลาไม่ถึง 20 นาที
คำถามที่พบบ่อย
TeleMessage Signal แตกต่างจาก Signal อย่างไร?
Signal ของจริงใช้การเข้ารหัสแบบ End-to-End ที่สมบูรณ์และไม่เก็บข้อมูลข้อความบนเซิร์ฟเวอร์ แต่ TeleMessage Signal ถูกออกแบบมาเพื่อเก็บสำเนาข้อความไว้ในคลังข้อมูล (Archive) ทำให้ข้อมูลไม่เป็นความลับอย่างแท้จริง
Java Heap Dump คืออะไรและทำไมถึงอันตราย?
คือไฟล์ที่บันทึกภาพจำลองของหน่วยความจำในเซิร์ฟเวอร์ ณ ขณะนั้น หากไฟล์นี้ถูกเปิดเผย แฮกเกอร์สามารถค้นหาข้อมูลที่ค้างอยู่ในหน่วยความจำ เช่น รหัสผ่านที่ยังไม่ได้เข้ารหัส หรือกุญแจลับของระบบได้
ทำไมการใช้ MD5 ถึงไม่ปลอดภัย?
MD5 เป็นอัลกอริทึมการแฮชที่เก่าและมีช่องโหว่มาก ในปัจจุบันสามารถถูกถอดรหัสหรือหาค่าที่ตรงกันได้ง่ายด้วยคอมพิวเตอร์ประสิทธิภาพสูง ทำให้ไม่เหมาะสำหรับการเก็บรหัสผ่าน
Spring Boot Actuator คืออะไร?
เป็นเครื่องมือสำหรับนักพัฒนาในการตรวจสอบสุขภาพและประสิทธิภาพของแอปพลิเคชัน Java แต่หากตั้งค่าไม่ถูกต้อง จะกลายเป็นช่องทางให้ผู้ไม่หวังดีเข้าถึงข้อมูลภายในระบบได้
เหตุการณ์นี้ส่งผลกระทบต่อผู้ใช้ Signal ทั่วไปหรือไม่?
ไม่ส่งผลกระทบ เนื่องจากเหตุการณ์นี้เกิดขึ้นเฉพาะกับแอป TeleMessage Signal (TM SGNL) ซึ่งเป็นคนละซอฟต์แวร์กับแอป Signal ที่คนทั่วไปใช้งาน



