เรื่อง: ระวังภัย ช่องโหว่ในคำสั่ง sudo ผู้ไม่หวังดีสามารถได้สิทธิของ root โดยไม่ต้องใส่รหัสผ่าน
ประเภทภัยคุกคาม: Intrusion
ข้อมูลทั่วไปในระบบปฏิบัติการตระกูล Unix หรือ Unix-like (เช่น Mac OS X หรือ Linux) จะมีคำสั่ง sudo ไว้สำหรับเรียกใช้งานคำสั่งหรือโปรแกรมใดๆ โดยใช้สิทธิของ root ซึ่งคำสั่งนี้มีไว้เพื่อความปลอดภัยเพราะผู้ใช้ไม่จำเป็นต้องล็อกอินเป็น root เพื่อใช้คำสั่งหรือใช้งานโปรแกรม แต่จะเรียกใช้งานคำสั่งหรือโปรแกรมที่ต้องการผ่านคำสั่ง sudo โดยใช้รหัสผ่านของตัวเองในการยืนยันตัวตน
หลังจากผู้ใช้ใส่รหัสผ่านเพื่อใช้งานคำสั่ง sudo แล้ว ระบบจะบันทึก timestamp ไว้ เพื่ออำนวยความสะดวกให้ผู้ใช้สามารถใช้คำสั่ง sudo ในการเรียกใช้งานคำสั่งหรือโปรแกรมใดๆ ได้โดยไม่ต้องใส่รหัสผ่านอีก ซึ่งช่วงเวลาดังกล่าวมีเวลาประมาณ 5 นาที
อย่างไรก็ตาม มีผู้ค้นพบช่องโหว่ของกลไกดังกล่าว โดยพบว่าหากใช้คำสั่ง sudo และระบบบันทึก timestamp ไว้แล้ว ในช่วงเวลาดังกล่าวหากมีการแก้ไขวันเวลาของระบบโดยใช้คำสั่ง sudo -k เพื่อรีเซ็ตวันเวลาให้กลับไปเป็นเวลา 1970-01-01 01:00:00 (วันเวลาเริ่มต้นของ Unix time) ผู้ใช้คนดังกล่าวก็จะสามารถใช้คำสั่ง sudo โดยไม่ต้องใส่รหัสผ่านได้ตลอดไป [1] ช่องโหว่ดังกล่าวนี้มีหมายเลข CVE-2013-1775 [2]
ผลกระทบผู้ใช้ที่สามารถใช้คำสั่ง sudo ได้ จะสามารถทำงานภายใต้สิทธิของ root ผ่านคำสั่ง sudo ได้โดยไม่ต้องใส่รหัสผ่าน
ในกรณีที่เป็นระบบที่ใช้งานเพียงคนเดียว ช่องโหว่นี้อาจไม่มีผลกระทบมากนัก แต่หากมีการใช้คำสั่ง sudo แล้วมีผู้อื่นมาใช้งานต่อ อาจเกิดความเสียหายกับระบบได้ อย่างไรก็ตาม จากช่องโหว่นี้ ผู้ใช้ไม่สามารถเรียกใช้คำสั่งที่อยู่นอกเหนือจากสิทธิที่กำหนดไว้ในไฟล์ /etc/sudoers ได้
ระบบที่ได้รับผลกระทบระบบปฏิบัติการ Unix และ Unix-like ที่ติดตั้งโปรแกรม sudo เวอร์ชั่น 1.6.0 ถึง 1.7.10p6 และ sudo 1.8.0 ถึง 1.8.6p6
ข้อแนะนำในการป้องกันและแก้ไขช่องโหว่นี้ถูกแก้ไขแล้วใน sudo เวอร์ชั่น 1.7.10p7 และ 1.8.6p7 ผู้ใช้งานระบบปฏิบัติการ Linux สามารถอัพเดตโปรแกรมเวอร์ชั่นใหม่ได้จากระบบ Package manager ของ Distro ที่ใช้
สำหรับผู้ใช้งานระบบปฏิบัติการ Mac OS X ปัจจุบัน Mac OS X 10.8.2 ใช้ sudo เวอร์ชั่น 1.7.4p6 ซึ่งมีช่องโหว่ และยังไม่มีวิธีแก้ไขจนกว่า Apple จะปล่อยซอฟต์แวร์อัพเดต [3]
ผู้ใช้งานสามารถตรวจสอบเวอร์ชั่นของ sudo ได้โดยพิมพ์คำสั่ง sudo -V ซึ่งจะได้ผลลัพธ์ดังตัวอย่างในรูปที่ 1
รูปที่ 1 ตัวอย่างการตรวจสอบเวอร์ชั่นของคำสั่ง sudo
อ้างอิงhttp://www.sudo.ws/sudo/alerts/epoch_ticket.htmlhttp://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2013-1775http://www.h-online.com/security/news/item/Security-vulnerability-in-sudo-allows-privilege-escalation-1816387.htmlที่มา:
http://www.thaicert.or.th/alerts/admin/2013/al2013ad002.html