สรุปสั้น
ผู้ไม่หวังดีเริ่มใช้งานช่องโหว่ร้ายแรงในระบบโทรศัพท์ VoIP สำหรับองค์กรของบริษัท Sangoma ที่ชื่อ Switchvox เพื่อสั่งรันโค้ดจากระยะไกลโดยไม่ต้องยืนยันตัวตน ช่องโหว่ดังกล่าวคือ CVE-2026-9586 ซึ่งได้คะแนน CVSS 9.3 เป็นช่องโหว่ SQL injection ที่ไม่ต้องมีบัญชีผู้ใช้ใน Switchvox SMB Edition 8.3 (104997) และเปิดทางให้ผู้โจมตีรันคำสั่งในสิทธิ์ superuser ของฐานข้อมูล PostgreSQL ได้โดยตรง
บริษัท Sangoma ออกแพตช์แก้ไขไปแล้วใน Switchvox เวอร์ชัน 8.4.0.2 เมื่อวันที่ 14 กรกฎาคม 2569 แต่บริษัท Horizon3.ai ระบุว่าเริ่มเห็นความพยายามโจมตีที่ใช้ได้จริงในธรรมชาติตั้งแต่วันที่ 30 สิงหาคม 2569 เป็นต้นมา และประเมินว่ามีเครื่อง Switchvox ที่เปิดสู่อินเทอร์เน็ตราว 4,000 เครื่อง โดยส่วนใหญ่อยู่ในสหรัฐอเมริกา
ความพยายามโจมตีที่ตรวจพบจากกับดัก honeypot คือการวาง reverse shell บนเครื่องที่ถูกยึด แล้วตามด้วยการรันคำสั่งที่เข้ารหัสแบบ Base64 เพื่อไล่ดูโปรเซสที่กำลังทำงานอยู่ ซึ่งเป็นพฤติกรรมสำรวจระบบก่อนขยายผล และเนื่องจากความพยายามทั้งหมดมาจากไอพีต้นทางเดียวกันในเวลาไล่เลี่ยกันหลายกับดัก นักวิจัยจึงเชื่อว่าเครื่องที่เปิดสู่อินเทอร์เน็ตส่วนใหญ่น่าจะถูกยิงไปแล้วหรือกำลังจะถูกยิงในไม่ช้า
รายละเอียดข่าว
เว็บไซต์ The Hacker News รายงานเมื่อวันที่ 2 กันยายน 2569 ว่า ผู้ไม่หวังดีกำลังใช้ประโยชน์จากช่องโหว่ร้ายแรงใน Sangoma Switchvox ซึ่งเป็นแพลตฟอร์มโทรศัพท์ VoIP สำหรับองค์กร โดยช่องโหว่นี้เปิดทางให้สั่งรันโค้ดจากระยะไกลได้โดยไม่ต้องผ่านการยืนยันตัวตนใด ๆ
Horizon3.ai ระบุว่า CVE-2026-9586 เป็นหนึ่งใน 12 ช่องโหว่ที่แยกจากกันซึ่งบริษัทรายงานไปยัง Sangoma ตั้งแต่เดือนเมษายน 2569 และตอนนี้เริ่มเห็นความพยายามโจมตีที่ใช้งานได้จริงพุ่งเป้ามาที่ช่องโหว่นี้ตั้งแต่วันที่ 30 สิงหาคม 2569 นอกจากนี้ช่องโหว่เดียวกันยังถูกค้นพบและรายงานอย่างเป็นอิสระโดยทีม Security Risk Advisors (SRA) Labs ตั้งแต่เดือนพฤษภาคม ซึ่งการที่ทีมวิจัยสองทีมเจอช่องโหว่เดียวกันในเวลาไล่เลี่ยกันมักเป็นสัญญาณว่าช่องโหว่นั้นค้นหาได้ไม่ยากสำหรับผู้ที่ตั้งใจมอง

SRA Labs อธิบายผลการทดสอบว่า ในฐานะผู้โจมตีที่ไม่มีบัญชีผู้ใช้ ทีมงานสามารถดำเนินการกับฐานข้อมูลได้ตามใจ ทั้งการดึงเนื้อหาในฐานข้อมูลออกมา แก้ไขระเบียนผู้ใช้ และยกระดับสิทธิ์ขึ้นเป็นผู้ดูแลระบบเว็บของ Switchvox ตลอดจนสั่งรันโค้ดตามอำเภอใจบนเซิร์ฟเวอร์และเรียก reverse shell กลับมายังเครื่องของผู้โจมตีได้สำเร็จ
ตัวอย่างหนึ่งที่ SRA Labs หยิบมาแสดงคือการใช้ช่องโหว่นี้ดึงกุญแจที่ใช้เซ็นคุกกี้ (cookie signing key) ออกไปยังเซิร์ฟเวอร์ภายนอก ซึ่งเท่ากับผู้โจมตีสามารถปลอมข้อมูลยืนยันตัวตนของผู้ใช้รายใดก็ได้ในระบบ จุดนี้สำคัญมากเพราะแปลว่าแม้จะปิดช่องโหว่แล้ว หากกุญแจถูกขโมยไปก่อนหน้านั้น ผู้โจมตียังคงเข้าระบบได้ต่อไปจนกว่าจะมีการหมุนกุญแจใหม่
นาย Zach Hanley นักวิจัยด้านความปลอดภัยของ Horizon3.ai ระบุว่า เมื่อพิจารณาจากความพยายามโจมตีที่เกิดขึ้นต่อเนื่องกันอย่างรวดเร็วบนกับดักหลายตัวจากไอพีต้นทางเดียวกัน เชื่อว่าเครื่อง Switchvox ที่เปิดสู่อินเทอร์เน็ตส่วนใหญ่จะตกเป็นเป้าหมายหรือถูกโจมตีไปแล้ว
รายละเอียดช่องโหว่
ตามคำอธิบายของช่องโหว่บนเว็บไซต์ CVE.org ปัญหาอยู่ที่ปลายทาง /pa ซึ่งประมวลผลเนื้อหา XML ที่ขึ้นต้นด้วยแท็ก <PolycomIPPhone> แล้วนำค่า PhoneIP ที่ผู้ใช้ควบคุมได้ไปต่อสตริงเข้ากับคำสั่งสอบถามของ PostgreSQL โดยตรง โดยไม่มีการทำความสะอาดข้อมูลนำเข้าและไม่ได้ใช้การผูกพารามิเตอร์ ผลคือผู้โจมตีจากระยะไกลที่ไม่มีบัญชีผู้ใช้สามารถส่งคำขอที่ประดิษฐ์ขึ้นเพียงคำขอเดียว แล้วรันคำสั่ง SQL ตามอำเภอใจกับฐานข้อมูล PostgreSQL เบื้องหลังได้ รวมถึงการดำเนินการกับฐานข้อมูลและการรันโค้ดจากระยะไกล
สิ่งที่ทำให้ช่องโหว่นี้อันตรายกว่า SQL injection ทั่วไปคือสิทธิ์ที่ได้มา เพราะการเข้าถึงอยู่ในระดับ superuser ของ PostgreSQL ซึ่งเปิดทางให้ยกระดับจากการอ่านเขียนฐานข้อมูลไปสู่การรันคำสั่งระดับระบบปฏิบัติการได้ ทำให้เส้นทางจากคำขอ HTTP หนึ่งครั้งไปถึง reverse shell สั้นมาก และไม่ต้องอาศัยข้อมูลยืนยันตัวตนใด ๆ เลย
Sangoma ออกแพตช์แก้ไขใน Switchvox เวอร์ชัน 8.4.0.2 เมื่อวันที่ 14 กรกฎาคม 2569 หมายความว่ามีระยะห่างระหว่างวันที่แพตช์ออกกับวันที่เริ่มพบการโจมตีจริงราวหนึ่งเดือนครึ่ง ซึ่งเป็นช่วงเวลาที่องค์กรควรใช้อัปเดตแต่หลายแห่งกลับปล่อยผ่านไป
ผลกระทบ
ผู้ที่ได้รับผลกระทบโดยตรงคือองค์กรขนาดกลางและเล็กที่ใช้ Switchvox SMB Edition เป็นระบบโทรศัพท์ภายใน ซึ่งจากการประเมินของ Horizon3.ai มีเครื่องที่เปิดสู่อินเทอร์เน็ตราว 4,000 เครื่อง โดยส่วนใหญ่อยู่ในสหรัฐอเมริกา และเมื่อระบบถูกยึด ผู้โจมตีจะเข้าถึงข้อมูลที่ระบบโทรศัพท์องค์กรเก็บไว้ได้ทั้งหมด ทั้งบันทึกการโทร ข้อมูลผู้ใช้ ไปจนถึงข้อความเสียง
ความเสียหายไม่ได้จบที่ตัวระบบโทรศัพท์ เพราะเครื่อง PBX มักถูกวางไว้ในเครือข่ายภายในและได้รับความไว้วางใจจากระบบอื่น การได้ reverse shell บนเครื่องเหล่านี้จึงเป็นหัวสะพานที่ดีสำหรับการเคลื่อนตัวด้านข้างไปยังระบบอื่นในองค์กร นอกจากนี้ระบบ VoIP ที่ถูกยึดยังมักถูกนำไปใช้ฉ้อโกงค่าโทรระหว่างประเทศ ซึ่งสร้างความเสียหายเป็นตัวเงินได้อย่างรวดเร็วก่อนที่เจ้าของระบบจะรู้ตัว
ประเด็นที่ต้องเน้นคือการแพตช์อย่างเดียวอาจไม่พอ เพราะหากกุญแจที่ใช้เซ็นคุกกี้ถูกดึงออกไปแล้วในช่วงที่ระบบยังมีช่องโหว่ ผู้โจมตีจะยังปลอมข้อมูลยืนยันตัวตนของผู้ใช้รายใดก็ได้ต่อไป องค์กรที่อัปเดตช้าจึงต้องถือว่าเครื่องของตัวเองอาจถูกเข้าถึงไปแล้วและดำเนินการตรวจสอบย้อนหลัง ไม่ใช่แค่ติดตั้งแพตช์แล้วจบ
คำแนะนำ
ผู้ดูแลระบบควรอัปเดต Switchvox เป็นเวอร์ชัน 8.4.0.2 หรือใหม่กว่าทันที และหากยังอัปเดตไม่ได้ในทันที ให้จำกัดการเข้าถึงส่วนบริหารจัดการและปลายทาง /pa ไว้เฉพาะเครือข่ายภายในหรือผ่าน VPN เท่านั้น อย่าเปิดหน้าเว็บของระบบโทรศัพท์สู่อินเทอร์เน็ตสาธารณะโดยไม่มีการกรองที่ชั้นหน้า
เนื่องจากมีการโจมตีจริงเกิดขึ้นแล้ว องค์กรที่ยังไม่ได้แพตช์ควรถือว่าระบบอาจถูกบุกรุกไปแล้ว และตรวจสอบร่องรอยตามตัวชี้วัดด้านล่าง โดยเฉพาะบันทึกที่ /var/log/switchvox/db-quirks.log บนเครื่องที่เปิด SSH ไว้ พร้อมทั้งไล่ดูโปรเซสแปลกปลอมและการเชื่อมต่อขาออกที่ไม่ควรมี
หลังอัปเดตแล้วต้องหมุนกุญแจและข้อมูลลับทั้งหมดที่เกี่ยวข้อง ทั้งกุญแจที่ใช้เซ็นคุกกี้ รหัสผ่านผู้ดูแลระบบ และข้อมูลยืนยันตัวตนของบัญชีในฐานข้อมูล รวมถึงตรวจสอบว่ามีบัญชีผู้ดูแลระบบที่ถูกเพิ่มหรือแก้ไขสิทธิ์โดยไม่ทราบที่มาหรือไม่ เพราะช่องโหว่นี้เปิดทางให้แก้ไขระเบียนผู้ใช้ได้โดยตรง สุดท้ายควรเฝ้าระวังปริมาณการโทรระหว่างประเทศที่ผิดปกติเพื่อจับการฉ้อโกงค่าโทรตั้งแต่เนิ่น ๆ
Indicators of Compromise (IoCs)
หมายเหตุ: ตัวชี้วัดด้านล่างถูก defang แล้ว หากนำไปใช้ต้องแปลงกลับก่อน
| ตัวชี้วัด | ประเภท | คำอธิบาย |
|---|---|---|
176.65.148[.]184 | ไอพีของผู้โจมตี | ไอพีต้นทางที่ใช้ยิงช่องโหว่ใส่กับดักของ Horizon3.ai ถูกแจ้งบน VirusTotal ว่าเกี่ยวข้องกับการสแกนพอร์ต การเดารหัสผ่าน และการโจมตีช่องโหว่ |
/var/log/switchvox/db-quirks.log | ไฟล์บันทึก | บนเครื่องที่เปิดใช้งาน SSH จะพบร่องรอยของเพย์โหลด SQL injection ที่ถูกใช้อยู่ในไฟล์บันทึกนี้ |
| reverse shell + คำสั่งเข้ารหัส Base64 | พฤติกรรม | หลังเจาะสำเร็จ ผู้โจมตีวาง reverse shell แล้วรันคำสั่งที่เข้ารหัส Base64 เพื่อไล่ดูโปรเซสที่กำลังทำงานอยู่ |
