มื่อวันที่ 25 มกราคม ทีมวิจัย Qualys ได้ประกาศการค้นพบช่องโหว่ที่สำคัญของหน่วยความจำเสียหายในคำสั่ง pkexec ของ PolKit ซึ่งมีชื่อว่า “PwnKit” และติดตามภายใต้ CVE-2021-4034 PolKit เป็นส่วนประกอบที่ติดตั้งบน Linux ดิสทริบิวชันหลัก ๆ ทั้งหมดที่มีฟังก์ชันในการควบคุมสิทธิ์ทั่วทั้งระบบในระบบที่เหมือนยูนิกซ์ ช่องโหว่ที่ใช้ประโยชน์ได้ง่ายนี้ทำให้ผู้ใช้ที่ไม่มีสิทธิ์ได้รับสิทธิ์รูทแบบเต็มบนโฮสต์ที่มีช่องโหว่โดยการใช้ประโยชน์จากช่องโหว่นี้ในการกำหนดค่าเริ่มต้น นอกเหนือจากความง่ายในการแสวงหาประโยชน์แล้ว ประเด็นที่เกี่ยวข้องมากที่สุดก็คือผู้คุกคามสามารถใช้ประโยชน์จากจุดบกพร่องโดยไม่ทิ้งร่องรอยบนจุดสิ้นสุดที่ถูกบุกรุก Qualys มีส่วนร่วมในการเปิดเผยช่องโหว่อย่างรับผิดชอบ และได้ประสานงานกับผู้จัดจำหน่ายและการกระจายโอเพ่นซอร์สเพื่อประกาศช่องโหว่ดังกล่าว
นี่คือสิ่งที่คุณต้องรู้:
- ช่องโหว่นี้ซ่อนอยู่ในสายตาธรรมดามากว่า 12 ปี และส่งผลกระทบต่อ pkexec ทุกเวอร์ชัน มีการกำหนดเป้าหมายอย่างแข็งขัน
- CISA ได้เพิ่มช่องโหว่นี้ (CVE-2021-4034) ในแค็ตตาล็อกช่องโหว่ที่เป็นที่รู้จักในเดือนมิถุนายน 2022
- หน่วยงานความปลอดภัยทางไซเบอร์ของสหรัฐฯ ยังให้หน่วยงาน Federal Civilian Executive Branch Agencies (FCEB) ทั้งหมดสามสัปดาห์จนถึงวันที่ 18 กรกฎาคม เพื่อแก้ไขเซิร์ฟเวอร์ Linux เพื่อบล็อกความพยายามในการแสวงหาผลประโยชน์
- BigFix มีโปรแกรมแก้ไขและบรรเทาปัญหา (ดูด้านล่าง)
เกี่ยวกับ PolKit และ PwnKit
PolKit เดิมเรียกว่า PolicyKit เป็นส่วนประกอบที่ติดตั้งโดยค่าเริ่มต้นบนลีนุกซ์รุ่นหลักทั้งหมด เป็นวิธีการจัดระเบียบสำหรับกระบวนการที่ไม่ได้รับสิทธิพิเศษในการสื่อสารกับผู้มีสิทธิพิเศษ นอกจากนั้น PolKit ยังมีคำสั่ง pkexec ซึ่งอนุญาตให้ผู้ใช้ที่ได้รับอนุญาตดำเนินการคำสั่งในฐานะผู้ใช้รายอื่น หากไม่ได้ระบุชื่อผู้ใช้ โปรแกรมจะดำเนินการในฐานะผู้ใช้ระดับสูงระดับผู้ดูแลระบบ นั่นคือ root
ข้อบกพร่อง PwnKit อยู่ในวิธีที่ pkexec จัดการกับพารามิเตอร์การโทร คำสั่งไม่ทำการตรวจสอบอาร์กิวเมนต์ที่ส่งผ่านไปยังโปรแกรมที่เรียก ด้วยเหตุนี้ ในกรณีที่ไม่มีการส่งผ่านอาร์กิวเมนต์ในอินพุต คำสั่งจะพยายามรันตัวแปรสภาพแวดล้อมเป็นคำสั่ง ผู้โจมตีสามารถใช้ประโยชน์จากสิ่งนี้ได้โดยการสร้างตัวแปรสภาพแวดล้อมในลักษณะที่จะกระตุ้นให้ pkexec รันโค้ดโดยอำเภอใจ เมื่อดำเนินการได้สำเร็จ การโจมตีอาจทำให้เกิดการยกระดับสิทธิ์ในพื้นที่โดยให้สิทธิ์ผู้ดูแลระบบแก่ผู้ใช้ที่ไม่มีสิทธิ์ในเครื่องเป้าหมาย
ใช้ BigFix เพื่อแก้ไขหรือบรรเทาช่องโหว่ PwnKit
การแก้ไข:
ผู้จำหน่ายรายใหญ่ทั้งหมดได้เผยแพร่การอัปเดตสำหรับ PolKit ซึ่งแก้ไขช่องโหว่ที่สามารถใช้ประโยชน์ได้ BigFix ได้เผยแพร่โปรแกรมแก้ไขสำหรับระบบปฏิบัติการ Linux ที่รองรับทั้งหมดแล้ว และคำแนะนำคือการปรับใช้โปรแกรมแก้ไขดังกล่าวบนปลายทางทั้งหมดที่ได้รับผลกระทบจากช่องโหว่นี้
บรรเทา:
โซลูชันบรรเทาผลกระทบชั่วคราวพร้อมใช้งานโดยใช้ BigFix ขอแนะนำให้ใช้การบรรเทาสาธารณภัยหากระบบปฏิบัติการไม่สามารถแพตช์ได้ ไม่มีแพตช์ออกสำหรับระบบปฏิบัติการของคุณ BigFix ยังไม่ได้จัดเตรียมแพตช์สำหรับระบบปฏิบัติการ หรือการสนับสนุน OS หมดอายุการใช้งานแล้ว
การบรรเทาผลกระทบประกอบด้วยการลบ SUID-บิต ออกจากไฟล์ pkexec อย่างไรก็ตาม โซลูชันนี้อาจส่งผลกระทบต่อแอปพลิเคชันอื่นๆ ที่ทำงานบนอุปกรณ์ ดังนั้นจึงต้องใช้งานอย่างระมัดระวังและทดสอบตามความเหมาะสมก่อนนำไปใช้ในสภาพแวดล้อมที่ใช้งานจริง เนื่องจากความรุนแรงและการมีอยู่ทั่วโลกของช่องโหว่นี้ BigFix ยังได้จัดเตรียมโปรแกรมแก้ไขเพื่อลดช่องโหว่สำหรับระบบที่ไม่ได้รับการสนับสนุนอย่างเป็นทางการ ซึ่งรวมถึง:
- เดเบียน 10 “บัสเตอร์”
- CentOS v.6 และ v.8
- Ubuntu v. 14.04 และ v. 16.04
fixlets ต่อไปนี้สามารถดาวน์โหลดได้บนbigfix.me:
- ฟิกซ์เลตบรรเทาสาธารณภัย: https://bigfix.me/fixlet/details/26905 . บรรเทาช่องโหว่ด้วยการรันคำสั่งที่ลบ SUID-bit ออกจากไฟล์ pkexec
- Undo-Mitigation Fixlet: https://bigfix.me/fixlet/details/26904 . เรียกคืนสิทธิ์เริ่มต้นในไฟล์ pkexec นี่เป็นการย้อนกลับของคำสั่งก่อนหน้า
บทสรุป
CISA ขอแนะนำองค์กรของสหรัฐอเมริกาทั้งหมดจากภาครัฐและเอกชนให้จัดลำดับความสำคัญของการแก้ไขช่องโหว่ที่ระบุไว้ในแค็ตตาล็อก KEV (Knows Exploited Vulnerabilities) รวมถึง PwnKit คอนโซล BigFix มีฟังก์ชันที่จำเป็นในการระบุจุดปลายทางที่มีช่องโหว่ของ PwnKit ทั้งหมดทันที และปรับใช้การอัปเดตเพื่อแก้ไขจุดอ่อน
นอกจากนี้ เวอร์ชันล่าสุดของ BigFix Insights for Vulnerability Remediation ทำให้กระบวนการแก้ไขนั้นเร็วและง่ายขึ้น! การค้นหาโดย CVE-2021-4034 ลูกค้าสามารถรับรายการแพตช์ข้ามระบบปฏิบัติการที่แก้ไขช่องโหว่เหล่านั้นได้อย่างง่ายดาย และใช้ประโยชน์จากความสามารถด้านระบบอัตโนมัติเพื่อปรับใช้ในการดำเนินการเดียว การอัปเดตทั้งหมดบนจุดสิ้นสุดที่เกี่ยวข้องทั้งหมด