ภัย ช่องโหว่ใน OpenSSL ผู้ไม่หวังดีสามารถขโมยข้อมูลใน Memory จากเครื่องของเหยื่อได้ (Heartbleed, CVE-2014-0160)ประเภทภัยคุกคาม: Other
ข้อมูลทั่วไปOpenSSL เป็นไลบรารีสำหรับใช้ในการเข้ารหัสลับข้อมูลผ่านโพรโทคอล SSL และ TLS ซึ่งเป็นไลบรารีแบบ Open source ทำให้ผู้พัฒนาซอฟต์แวร์หลายรายนำไลบรารีดังกล่าวนี้ไปใช้ในซอฟต์แวร์ของตนเอง ตัวอย่างโปรแกรมที่ใช้งานไลบรารี OpenSSL เช่น ระบบปฏิบัติการ Linux, เว็บเซิร์ฟเวอร์, โปรแกรมแช็ท หรือโปรแกรมสำหรับเชื่อมต่อ VPN เป็นต้น
เมื่อวันที่ 7 เมษายน 2557 ทาง OpenSSL ได้แจ้งเตือนช่องโหว่ในซอฟต์แวร์ OpenSSL เวอร์ชัน 1.0.1 ถึง 1.0.1f [1] โดยช่องโหว่ดังกล่าวอยู่ในส่วนของการเชื่อมต่อ TLS/DTLS ในส่วนที่เป็น Heartbeat extension ที่เอาไว้ตรวจสอบว่าโฮสต์ที่เชื่อมต่ออยู่ด้วยนั้นยังทำงานอยู่หรือเปล่า [2]
เนื่องจากส่วน Heartbeat extension อนุญาตให้ระบบใดๆ ก็ตามสามารถส่ง Request เข้ามาเพื่อให้เครื่องปลายทางตอบกลับ แต่กระบวนการนี้มีความผิดพลาดในขั้นตอนการตรวจสอบข้อมูล ทำให้ในกรณีที่ Request ที่ส่งเข้ามาไม่มีการระบุความยาวของข้อมูลที่ส่งกลับ เครื่องปลายทางจะไปอ่านข้อมูลจากหน่วยความจำของตัวเครื่องออกมา แล้วส่งข้อมูลดังกล่าวกลับไปให้ผู้ที่ร้องขอ [3]
ข้อมูลที่เครื่องปลายทางจะส่งกลับไปให้ผู้ที่ร้องขอเป็นข้อมูลขนาด 64 KB จากหน่วยความจำในตำแหน่งที่ใกล้เคียงกับข้อมูลที่โปรเซสของ OpenSSL ใช้งานอยู่ ซึ่งข้อมูลที่อยู่ในหน่วยความจำจะถูกเก็บแบบไม่มีการเข้ารหัสลับ และอาจมีข้อมูลสำคัญถูกเก็บอยู่ในตำแหน่งนี้ เช่น รหัสผ่าน หมายเลขบัตรเครดิต หรือ Private Key ของระบบที่ใช้งาน OpenSSL จึงทำให้มีโอกาสสูงที่ผู้ไม่หวังดีจะเชื่อมต่อเข้ามาเพื่อขโมยข้อมูลสำคัญออกไปจากหน่วยความจำของเครื่องปลายทางได้ [4]
ถึงแม้ว่าข้อมูลที่สามารถอ่านได้จากหน่วยความจำของเครื่องปลายทาง จะสามารถนำออกไปได้แค่ครั้งละไม่เกิน 64 KB แต่ผู้ไม่หวังดีก็สามารถที่จะส่ง Request เข้ามาเรื่อยๆ เพื่อดึงข้อมูลในส่วนที่เหลือและนำข้อมูลที่ได้ไปปะติดปะต่อให้เป็นข้อมูลเต็มๆ ได้
ผลกระทบช่องโหว่นี้มีผลกระทบทั้งกับผู้ใช้ทั่วไปและผู้ให้บริการผ่านอินเทอร์เน็ต ซึ่งทั้งสองกลุ่มนี้มีโอกาสที่จะถูกขโมยข้อมูลสำคัญออกไปจากหน่วยความจำ
ตัวอย่างความเสียหายที่เกิดกับผู้ใช้ทั่วไป เช่น ผู้ใช้เปิดใช้งานโปรแกรมที่มีการเชื่อมต่อแบบ SSL/TLS ที่พัฒนาโดยใช้ไลบรารี OpenSSL เวอร์ชันที่มีช่องโหว่ หากผู้ใช้มีการเชื่อมต่อแบบ SSL ก็มีโอกาสที่จะถูกผู้ไม่หวังดีขโมยข้อมูลที่อยู่ในหน่วยความจำได้ ขึ้นอยู่กับว่าโปรแกรมที่ใช้งานนั้นคือโปรแกรมอะไร เช่น เว็บเบราว์เซอร์ โปรแกรมรับส่งอีเมล โปรแกรมแช็ท โปรแกรม Cloud storage หรือโปรแกรมเชื่อมต่อ VPN
ตัวอย่างความเสียหายที่เกิดกับผู้ให้บริการที่เปิดใช้งานเว็บเซิร์ฟเวอร์ที่ใช้การเชื่อมต่อแบบ SSL ก็มีโอกาสสูงที่จะถูกผู้ไม่หวังดีขโมยข้อมูลสำคัญออกไปจากหน่วยความจำ เช่น รหัสผ่านของผู้ที่เข้าใช้งานระบบ หรือ Private key ที่ใช้ในการเข้ารหัสลับข้อมูล ซึ่งหากผู้ไม่หวังดีได้ข้อมูลในส่วนนี้ไปก็อาจถอดรหัสลับทุกอย่างที่เคยมีการแลกเปลี่ยนผ่านเครื่องเซิร์ฟเวอร์ได้
ระบบที่ได้รับผลกระทบซอฟต์แวร์ OpenSSL เวอร์ชันดังต่อไปนี้ [5]
1.0.1
1.0.1:beta1 ถึง 1.0.1:beta3
1.0.1a ถึง 1.0.1f
1.0.2-beta1
ข้อแนะนำในการป้องกันและแก้ไข1. ผู้ดูแลระบบควรอัพเดทซอฟต์แวร์ OpenSSL ที่ใช้งานในทันที
2. สร้าง Key ใหม่ และถอนการใช้งานของ Key เก่า
3. เมื่ออัพเดทซอฟต์แวร์เสร็จแล้วให้ตรวจสอบหมายเลขเวอร์ชันอีกครั้ง
สำหรับระบบปฏิบัติการที่บริหารจัดการด้วย DPKG เช่น Debian Ubuntu
dpkg -s openssl
สำหรับระบบปฏิบัติการที่บริหารจัดการด้วย RPM เช่น CentOS Redhat
rpm -q --info openssl
อย่างไรก็ตาม เวอร์ชันล่าสุดของซอฟต์แวร์ OpenSSL ที่ได้รับการแก้ไขช่องโหว่นี้แล้วบนระบบปฏิบัติการ Linux นั้น อาจมีหมายเลขเวอร์ชันที่ดูเหมือนเป็นส่วนหนึ่งของเวอร์ชันที่ได้รับผลกระทบดังที่ระบุไว้ข้างต้น เช่น ซอฟต์แวร์ OpenSSL บนระบบปฏิบัติการ Debian เวอร์ชันที่ได้รับการแก้ไขช่องโหว่แล้วคือ 1.0.1e-2+deb7u5 หรือสูงกว่า และในแต่ละระบบปฏิบัติการอาจมีหมายเลขเวอร์ชันล่าสุดที่แตกต่างกันไป ดังนั้น ผู้ใช้จึงควรตรวจสอบจากเว็บไซต์ทางการของแต่ละระบบปฏิบัติการอีกครั้ง เช่น Debian [6], Ubuntu [7], Red Hat Enterprise Linux [8] และ FreeBSD [9]
4. ผู้ดูแลระบบสามารถตรวจสอบปัญหาของโหว่ดังกล่าวว่ามีผลกระทบกับเว็บไซต์ของท่านหรือไม่ ผ่านบริการของ Qualys [10]
หน้าจอแสดงผลลัพธ์การตรวจสอบช่องโหว่ Heartbleed บนเว็บไซต์ไทยเซิร์ต ซึ่งไม่พบช่องโหว่ดังกล่าว อ้างอิงhttps://www.openssl.org/news/secadv_20140407.txthttps://tools.ietf.org/html/rfc6520http://heartbleed.comhttp://blog.existentialize.com/diagnosis-of-the-openssl-heartbleed-bug.htmlhttps://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2014-0160http://www.debian.org/security/2014/dsa-2896http://www.ubuntu.com/usn/usn-2165-1https://rhn.redhat.com/errata/RHSA-2014-0376.htmlhttp://www.freebsd.org/security/advisories/FreeBSD-SA-14:06.openssl.aschttps://www.ssllabs.com/ssltest/ที่มา:
https://www.thaicert.or.th/alerts/admin/2014/al2014ad002.html