นักวิจัยจาก Duo Labs และศูนย์ตอบสนองสถานการณ์ฉุกเฉินทางคอมพิวเตอร์ของสหรัฐฯ (CERT/CC) ได้เผยรายละเอียดช่องโหว่ของ SAML (ซึ่งเป็น Open Standard ในการแลกเปลี่ยนข้อมูลการพิสูจน์ตัวตนและสิทธิ์ของตัวตนระหว่างผู้เกี่ยวข้อง นอกจากนี้มันยังอยู่บนพื้นฐานภาษา XML อีกด้วย) ที่ทำให้สามารถล็อกอินในชื่อผู้อื่นได้

เนื่องจาก SAML เป็นปัจจัยสำคัญที่สุดในโซลูชันของ Single sign-on (อนุญาตผู้ใช้เข้าถึงบัญชีโดยใช้ตัวตนเดียวกัน) ซึ่งมีการเก็บข้อมูลตัวตนผู้ใช้งานไว้บนเซิร์ฟเวอร์ส่วนกลาง ยกตัวอย่างการทำงานคือเมื่อมีผู้ใช้ล็อกอินเข้าแอปพลิเคชัน (กล่าวได้ว่าเป็น Service provider – SP) มันจะเรียกผ่าน SAML ไปยังเซิร์ฟเวอร์ SSO ส่วนกลาง (เรียกว่าเป็น identity Provider – IdP)
สาเหตุของช่องโหว่คือการจัดการคอมเม้นต์ของ XML
ตามรูปด้านบน จุดเริ่มต้นคือเกิดจากการจัดการคอมเม้นต์ XML ของไลบรารี่ต่างๆ ในระหว่างการสื่อสารกันด้วย SAML โดยนักวิจัยได้สังเกตว่าจะเกิดอะไรขึ้นหากผู้ใช้งานเพิ่มคอมเม้นต์เข้าไปภายใน Field ของ Username เพื่อแตก Username ออก ดังนั้นผู้โจมตีอาจจะได้รับการเข้าถึงของผู้ใช้ที่ถูกต้องได้ ซึ่งเงื่อนไขเดียวของการใช้ช่องโหว่นี้คือต้องมีบัญชีใช้งานบนเครือข่ายเดียวกับเหยื่อเพื่อรองขอไปยัง SAML Provider และปลอมส่งการร้องขอ “หลอกล่อให้ระบบ SAML เข้าสู่การพิสูจน์ตัวตนเป็นผู้อื่น”
ปัญหาเกิดขึ้นกับซอฟต์แวร์ SSO ซึ่งส่วนมากเป็น Open-source
นักวิจัยจาก Duo Labs เผยว่าช่องโหว่ที่เกิดขึ้นกับหลายซอฟต์แวร์ SSO และไลบรารี่ Open-source หลายเจ้าที่มีการรองรับ SAML ในกระบวนการทำ SSO นอกจากนี้ยังได้ระบุถึงเจ้าของผู้ใช้บริการ SSO ที่ได้รับผลกระทบและผู้ที่นำไลบรารี่ตามด้านล่างนี้ไปใช้ อย่างไรก็ตามทาง Duo Labs กล่าวว่าช่องโหว่นี้ไม่ได้ส่งผลกระทบกับผู้ให้บริการ SSO ในทางเดียวกัน

วิธีการป้องกันนักวิจัยแนะนำว่า
- สำหรับเครือข่ายที่ค่อนข้างสุ่มเสี่ยงอย่าเปิดให้มีการลงทะเบียนได้แบบสาธารณะและต้องตรวจสอบผู้ใช้งานอย่างรอบคอบเพื่อป้องกันคนร้ายลักลอบลงทะเบียนเข้ามา
- หากทำไม่ได้ สามารถบรรเทาปัญหาด้วยการทำ Whitelist เพื่อยอมรับเฉพาะอีเมลสำหรับโดเมนที่อนุญาตเท่านั้น
- เปิดใช้งาน Two-factor Authentication
TechTalkThai ศูนย์รวมข่าว Enterprise IT ออนไลน์แห่งแรกในประเทศไทย






