Clear
Lead Graphic Papers

ระวังภัย ช่องโหว่ใน glibc ผู้ไม่หวังดีสามารถประมวลผลคำสั่งอันตรายจากระยะไกลได้ (GHOST, CVE-2015-0235)

วันที่ประกาศ: 29 มกราคม 2558
ปรับปรุงล่าสุด: 29 มกราคม 2558
เรื่อง: ระวังภัย ช่องโหว่ใน glibc ผู้ไม่หวังดีสามารถประมวลผลคำสั่งอันตรายจากระยะไกลได้ (GHOST, CVE-2015-0235)

ประเภทภัยคุกคาม: Intrusion

Share on Facebook Share on Twitter Share on Google+

เมื่อวันที่ 27 มกราคม 2558 บริษัทวิจัยด้านความมั่นคงปลอดภัย Qualys ประกาศการค้นพบช่องโหว่ใน glibc หรือ GNU C Library ซึ่งเป็น Library พื้นฐานของภาษา C ที่ถูกเรียกใช้โดยโปรแกรมที่ทำงานบนระบบปฏิบัติการ Linux [1] ช่องโหว่ดังกล่าวเกิดจากฟังก์ชัน __nss_hostname_digits_dots() ที่ถูกเรียกใช้โดยฟังก์ชัน gethostbyname() ซึ่งเป็นฟังก์ชันที่ใช้ในการค้นหาข้อมูลเกี่ยวกับ Hostname นั้น สามารถถูกโจมตีด้วยเทคนิค Buffer overflow ทำให้ผู้ไม่หวังดีสามารถสั่งให้ประมวลผลคำสั่งอันตรายจากระยะไกล (Remote code execution) เพื่อควบคุมเครื่องคอมพิวเตอร์ของเหยื่อได้ ทั้งนี้ทีมนักวิจัยได้ระบุว่าสามารถพัฒนาโค้ดเพื่อโจมตีช่องโหว่ดังกล่าวบนโปรแกรม Exim ได้เป็นผลสำเร็จ โดยที่สามารถหลบหลีกกระบวนการป้องกันการโจมตีช่องโหว่ต่าง ๆ บนระบบปฏิบัติการไม่ว่าจะเป็น Address space layout randomization (ASLR), Position-independent executables (PIE) และ No-execute (NX) [2] ปัจจุบันช่องโหว่นี้ถูกประกาศหมายเลข CVE เป็น CVE-2015-0235 [3]

ผลกระทบ

ช่องโหว่นี้ส่งผลให้ผู้ไม่หวังดีสามารถโจมตีระบบที่มีช่องโหว่ เพื่อเข้าควบคุมและสั่งการทำงานในเครื่องคอมพิวเตอร์เหยื่อได้ทันที

ระบบที่ได้รับผลกระทบ

ระบบปฏิบัติการ Linux โดยรายการเวอร์ชันของ glibc ที่ได้รับผลกระทบใน Distribution หลักมีดังนี้

Ubuntu [4]

Ubuntu 12.04 LTS: เวอร์ชันก่อนหน้า libc6 2.15-0ubuntu10.10

Ubuntu 10.04 LTS: เวอร์ชันก่อนหน้า libc6 2.11.1-0ubuntu7.20

Debian [5]

Debian 7 LTS (Wheezy): เวอร์ชันก่อนหน้า 2.13-38+deb7u7

Red Hat Enterprise Linux และ CentOS [6]

RHEL 5: เวอร์ชันก่อนหน้า glibc-2.5-123.el5_11.1

RHEL 6: เวอร์ชันก่อนหน้า glibc-2.12-1.149.el6_6.5

RHEL 7: เวอร์ชันก่อนหน้า glibc-2.17-55.el7_0.5

CentOS 6: เวอร์ชันก่อนหน้า glibc-2.12-1.149.el6_6.5

CentOS 7: เวอร์ชันก่อนหน้า glibc-2.17-55.el7_0.5

ข้อแนะนำในการป้องกันและแก้ไข

ปัจจุบันในระบบปฏิบัติการ Linux หลายราย เช่น Debian Redhat ได้มีการพัฒนาชุดคำสั่งสำหรับปรับปรุงปัญหาช่องโหว่ดังกล่าว (Patch) ในซอฟต์แวร์ glibc แล้ว โดยผู้ดูแลระบบสามารถตรวจสอบแนวทางการตรวจสอบปัญหาช่องโหว่และแนวทางการอัปเดตซอฟต์แวร์ glibc ได้ตามข้อมูลด้านล่าง

การตรวจสอบเวอร์ชันของ glibc

Debian และ Ubuntu

ใช้คำสั่ง ldd --version แล้วดูที่บรรทัดแรกของผลลัพธ์ เพื่อตรวจสอบว่าโปรแกรม ldd มีการเรียกใช้ glibc เวอร์ชันใด

ตัวอย่าง

[user@ubuntu ~]$ ldd --version

ldd (Ubuntu GLIBC 2.19-10ubuntu2.2) 2.19

Copyright (C) 2014 Free Software Foundation, Inc.

This is free software; see the source for copying conditions. There is NO

warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Written by Roland McGrath and Ulrich Drepper.

Red Hat Enterprise Linux และ CentOSU>

ใช้คำสั่ง rpm -q glibc

ตัวอย่าง

[user@centos ~]$ rpm -q glibc

glibc-2.17-55.el7_0.5

การอัปเดตเวอร์ชันของ glibc

1.อัปเดตซอฟต์แวร์ ให้เป็นเวอร์ชันที่ได้รับการแก้ไขปัญหาช่องโหว่แล้ว โดยใช้คำสั่งสำหรับแต่ละ Distribution ดังต่อไปนี้

Debian และ Ubuntu

ใช้คำสั่ง sudo apt-get update && sudo apt-get dist-upgrade เพื่ออัปเดตซอฟต์แวร์ และ reboot ระบบด้วยคำสั่ง sudo reboot เพื่อให้แน่ใจว่าโปรแกรมได้ใช้งาน glibc ที่ได้รับการแก้ไขแล้ว

Red Hat Enterprise Linux และ CentOS

ใช้คำสั่ง sudo yum update glibc เพื่ออัปเดตซอฟต์แวร์ และ reboot ระบบด้วยคำสั่ง sudo reboot เพื่อให้แน่ใจว่าโปรแกรมได้ใช้งาน glibc ที่ได้รับการแก้ไขแล้ว

2. หลังจากอัปเดต ให้ตรวจสอบเวอร์ชันของ glibc อีกครั้ง

อย่างไรก็ตามหากเป็นการใช้งานระบบปฏิบัติการ Linux รุ่นอื่นนอกเหนือจากนี้ ผู้ดูแลระบบสามารถศึกษาแนวทางและวิธีการแก้ไขปัญหาช่องโหว่ ได้จากเว็บไซต์ผู้พัฒนาโดยตรง

อ้างอิง

  1. https://community.qualys.com/blogs/laws-of-vulnerabilities/2015/01/27/the-ghost-vulnerability
  2. http://www.openwall.com/lists/oss-security/2015/01/27/9
  3. http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2015-0235
  4. https://wiki.ubuntu.com/SecurityTeam/KnowledgeBase/GHOST
  5. https://lists.debian.org/debian-security-announce/2015/msg00025.html
  6. https://rhn.redhat.com/errata/RHSA-2015-0092.html
Clear