เมื่อไม่นานมานี้ มี การค้นพบช่องโหว่ในแพลตฟอร์มคอร์สเรียนออนไลน์ยอดนิยมอย่าง Courseraปัญหาดังกล่าวเกิดจาก API ทำให้เชื่อว่าแฮกเกอร์อาจใช้ช่องโหว่ "BOLA"เพื่อทำความเข้าใจความชอบของผู้ใช้เกี่ยวกับคอร์สเรียน และชี้นำการเลือกคอร์สเรียนของพวกเขา
นอกจากนี้ ยังเชื่อกันว่าช่องโหว่ที่เพิ่งเปิดเผยออกมาอาจทำให้ข้อมูลผู้ใช้รั่วไหลก่อนที่จะมีการแก้ไขช่องโหว่เหล่านี้ถูกค้นพบโดยนักวิจัยจากบริษัททดสอบความปลอดภัยของแอปพลิเคชัน Checkmarxและถูกเปิดเผยต่อสาธารณะเมื่อสัปดาห์ที่แล้ว
ช่องโหว่ดังกล่าวเกี่ยวข้องกับอินเทอร์เฟซการเขียนโปรแกรมแอปพลิเคชัน (API) หลายส่วนของ Courseraและนักวิจัยตัดสินใจเจาะลึกด้านความปลอดภัยของ Coursera มากขึ้น เนื่องจากความนิยมที่เพิ่มขึ้นจากการเปลี่ยนแปลงไปสู่การทำงานและการเรียนรู้แบบออนไลน์อันเนื่องมาจากสถานการณ์การระบาดของ COVID-19
สำหรับผู้ที่ไม่คุ้นเคยกับ Coursera คุณควรรู้ว่านี่คือบริษัทที่มีผู้ใช้ 82 ล้านคนและทำงานร่วมกับบริษัทและมหาวิทยาลัยมากกว่า 200 แห่ง ความร่วมมือที่โดดเด่น ได้แก่ University of Illinois, Duke University, Google, University of Michigan, International Business Machines, Imperial College London, Stanford University และ University of Pennsylvania
พบปัญหาเกี่ยวกับ API หลายประการ รวมถึงการระบุผู้ใช้/บัญชีผ่านฟังก์ชันรีเซ็ต mật รหัสผ่านทรัพยากรไม่เพียงพอที่จำกัดทั้ง GraphQL และ REST API และการกำหนดค่า GraphQL ที่ไม่ถูกต้อง โดยเฉพาะอย่างยิ่ง ปัญหาการอนุญาตระดับอ็อบเจ็กต์ที่ผิดพลาดเป็นปัญหาที่สำคัญที่สุด
เมื่อโต้ตอบกับเว็บแอปพลิเคชัน Coursera ในฐานะผู้ใช้ทั่วไป (นักเรียน) เราสังเกตเห็นว่าหลักสูตรที่ดูล่าสุดแสดงอยู่ในอินเทอร์เฟซผู้ใช้ เพื่อแสดงข้อมูลนี้ เราตรวจพบคำขอ API GET หลายรายการไปยังปลายทางเดียวกัน: /api/userPreferences.v1/[USER_ID-lex.europa.eu~[PREFERENCE_TYPE}
ช่องโหว่ของ API BOLA นั้นส่งผลกระทบต่อการตั้งค่าของผู้ใช้โดยการใช้ช่องโหว่นี้ แม้แต่ผู้ใช้ที่ไม่ระบุตัวตนก็สามารถดึงข้อมูลการตั้งค่าและเปลี่ยนแปลงได้ การตั้งค่าบางอย่าง เช่น หลักสูตรที่ดูเมื่อเร็วๆ นี้และใบรับรอง ก็อาจรั่วไหลได้เช่นกันข้อบกพร่องของ API BOLA อาจเปิดเผยจุดเชื่อมต่อที่จัดการตัวระบุวัตถุ ซึ่งอาจเปิดช่องทางให้เกิดการโจมตีในวงกว้างได้
«ช่องโหว่นี้อาจถูกนำไปใช้ในทางที่ผิดเพื่อทำความเข้าใจการตั้งค่าหลักสูตรของผู้ใช้ทั่วไปในวงกว้าง แต่ยังบิดเบือนตัวเลือกของผู้ใช้ในทางใดทางหนึ่ง เนื่องจากการจัดการกิจกรรมล่าสุดของพวกเขาส่งผลต่อเนื้อหาที่นำเสนอในหน้าแรกของ Coursera สำหรับบางกรณี ผู้ใช้” นักวิจัยอธิบาย
นักวิจัยกล่าวว่า "น่าเสียดายที่ปัญหาการอนุญาตนั้นพบได้บ่อยใน API" “มันสำคัญมากที่จะต้องรวมศูนย์การตรวจสอบการควบคุมการเข้าออกในส่วนประกอบเดียว ผ่านการทดสอบอย่างดี ทดสอบอย่างต่อเนื่อง และบำรุงรักษาอย่างแข็งขัน ตำแหน่งข้อมูล API ใหม่หรือการเปลี่ยนแปลงที่มีอยู่ควรได้รับการตรวจสอบอย่างรอบคอบโดยคำนึงถึงข้อกำหนดด้านความปลอดภัย "
นักวิจัยตั้งข้อสังเกตว่าปัญหาการอนุญาตนั้นพบได้บ่อยใน API และด้วยเหตุนี้จึงต้องรวมศูนย์การตรวจสอบการควบคุมการเข้าถึง การดำเนินการดังกล่าวต้องผ่านองค์ประกอบการบำรุงรักษาเพียงส่วนเดียวที่ได้รับการทดสอบมาเป็นอย่างดีและต่อเนื่อง
ช่องโหว่ที่ค้นพบถูกส่งไปยังทีมรักษาความปลอดภัยของ Coursera เมื่อวันที่ 5 ตุลาคมการยืนยันว่าบริษัทได้รับรายงานและกำลังดำเนินการแก้ไขนั้นเกิดขึ้นเมื่อวันที่ 26 ตุลาคม ต่อมา Coursera ได้เขียนจดหมายถึง Cherkmarx โดยระบุว่าพวกเขาได้แก้ไขปัญหาแล้วระหว่างวันที่ 18 ธันวาคมถึง 2 มกราคม จากนั้นได้ส่งรายงานการทดสอบซ้ำพร้อมปัญหาใหม่ สุดท้ายเมื่อวันที่ 24 พฤษภาคม Coursera ยืนยันว่าปัญหาทั้งหมดได้รับการแก้ไขแล้ว
นักวิจัยกล่าวว่าทีมรักษาความปลอดภัยของ Coursera รู้สึกยินดีเป็นอย่างยิ่งที่ได้ร่วมงานด้วย แม้ว่าจะใช้เวลาค่อนข้างนานจากการเปิดเผยไปจนถึงการแก้ไข
“ความเป็นมืออาชีพและความร่วมมือของพวกเขา เช่นเดียวกับความเป็นเจ้าของอย่างรวดเร็วที่พวกเขาคิดไว้ คือสิ่งที่เราตั้งตารอเมื่อมีส่วนร่วมกับบริษัทซอฟต์แวร์” พวกเขาสรุป
ที่มา: https://www.checkmarx.com