ด่วน!! พบช่องโหว่บน Mikrotik จนทำให้ Hacker ยึด Router ได้

พบช่องโหว่จากการ Downgrade MikrotikOS โดยการทำ DNS Sniffing เพื่อหลอกให้ MikrotikOS ทำการ Downgrade version ของตัวเองลง และทำให้เกิดช่องโหว่จนทำให้สามารถเข้ายึด Router ได้

นักวิจัยจาก Tenable ได้เปิดเผยช่องโหว่จำนวน 2 ตัว เมื่อวันที่ 11 กันยายน 2019 (CVE-2019-3976 and CVE-2019-3977) และอีก 2 ตัวถัดมา เมื่อวันที่ 13 กันยายน 2019 CVE-2019-3978 and CVE-2019-3979) โดยทางทีมวิจัยได้กล่าวว่า “ช่องโหว่ประเภทนี้ เป็นช่องโหว่ที่ต้องทำงานร่วมกันทั้งหมด จนทำให้ผู้ไม่หวังดี สามารถเข้าควบคุม Mikrotik Router ผ่านทาง port 8291 ได้ (Winbox) , โดยในกรณี้ จะมีการหลอกให้ตัว Mikrotik Router ทำการ Downgrade version ลงแบบอัตโนมัติ และตัว Mikrotik Router จะทำการ reset password ของตัวเองจนกลายเป็นค่าว่าง(blank)อีกครั้ง” MikroTik ออก patches แก้ไขแล้วเมื่อวันที่ 28 ตุลาคม 2019.

โดยในขั้นตอนแรก Hacker จะทำการตั้ง DNS Server หลอก เพื่อให้ตัว Mikrotik Router ได้ที่อยู่ผิดๆ ของการขอ patch update version ใหม่ของ OS

โดยตัว Mikrotik ที่เปิด หรือ ไม่ได้เปิด การให้บริการ DNS Server ก็ตาม (Allow Remote Request) จะมีการเก็บ cache dns ไว้ในตัวเครื่องเสมอ เพื่อใช้งานเอง

โดย Hacker จะทำการสั่งให้ Router Mikrotik ไปเรียก DNS Server ที่ Hacker ทำการตั้งขึ้น โดยใช้ Bug ของ Winbox

Bug ของ Mikrotik Router ตรงนี้ เอื้อประโยชน์ คือ Hacker สามารถสั่งให้ Mikrotik Router ทำการ Resolve ค่า DNS Server จาก IP ใดๆ ก็ได้ตามที่ Hacker ต้องการ ผ่านทาง Winbox โดยไม่จำเป็นต้องรู้ User และ Password ของ Mikrtik Router และ Mikrotik Router จะเก็บค่านั้นๆ เป็น cache ลงบน DNS Cache ของ Mikrotik Router (ตัวอย่าง Code https://github.com/tenable/routeros/tree/master/poc/winbox_dns_request )

หลังจาก Mikrotik Router ของเหยื่อ ได้รับค่า IP ของ Domain ที่ใช้สำหรับ Update software ของ Mikrotik Router ไปแบบผิดๆ แล้ว Hacker ก็จะรอให้เหยื่อทำการ update patch ที่เป็น version v6.42.12  หรือ ต่ำกว่า ซึ่งผลที่ได้คือ ค่า user และ password สำหรับเข้าจัดการ Mikrotik Router จะถูก reset กลับเป็นค่าโรงงานทั้งหมด โดยยังคงค่า config เดิมไว้ ทำให้ Hacker สามารถเข้าควบคุมเครื่อง Mikrotik Router ได้

สำหรับผู้สนใจข้อมูลโดยละเอียดเกี่ยวกับช่องโหว่และการใช้งานสามารถติดตามเพิ่มเติมได้จากบล็อกของ Tenable (https://medium.com/tenable-techblog/routeros-chain-to-root-f4e0b07c0b21)