Clear
Lead Graphic Papers

ระวังภัย ช่องโหว่โพรโทคอล SSL เวอร์ชัน 3 ผู้ไม่หวังดีสามารถถอดรหัสลับข้อมูลที่รับส่งกับเซิร์ฟเวอร์ได้ (Poodle, CVE-2014-3566)


วันที่ประกาศ: 18 ตุลาคม 2557
ปรับปรุงล่าสุด: 18 ตุลาคม 2557
เรื่อง: ระวังภัย ช่องโหว่โพรโทคอล SSL เวอร์ชัน 3 ผู้ไม่หวังดีสามารถถอดรหัสลับข้อมูลที่รับส่งกับเซิร์ฟเวอร์ได้ (Poodle, CVE-2014-3566)
ประเภทภัยคุกคาม: Other

Share on Facebook Share on Twitter Share on Facebook

ข้อมูลทั่วไป

SSL เป็นโพรโทคอลสำหรับใช้เข้ารหัสลับข้อมูลที่รับส่งกันระหว่างเครื่องผู้ใช้งานกับเครื่องให้บริการ เช่น การใช้งานเว็บไซต์ผ่าน HTTPS การใช้งานดาวน์โหลดไฟล์ผ่าน FTPS เป็นต้น โดยการใช้งานโพรโทคอลดังกล่าวจะต้องมีการยอมรับการเชื่อมต่อทั้งส่วนของโปรแกรมในฝั่งผู้ใช้งาน และระบบที่ฝั่งเครื่องให้บริการ ซึ่งโพรโทคอล SSL ถูกพัฒนาขึ้นครั้งแรกโดยบริษัท Netscape อดีตผู้พัฒนาเว็บเบราว์เซอร์ชื่อดัง โพรโทคอล SSL เวอร์ชัน 1.0 นั้นถูกพัฒนาขึ้นมาแต่ว่าไม่เคยถูกเผยแพร่ให้ใช้งานจริง โพรโทคอล SSL เวอร์ชัน 2.0 ออกมาในปี 1995 แต่หลังจากที่เผยแพร่ออกมาก็มีการค้นพบว่ามีช่องโหว่อยู่มากมาย จึงถูกปรับปรุงใหม่เป็น SSL เวอร์ชัน 3.0 ที่ออกมาในปี 1996
ต่อมา ทางบริษัท Netscape ได้ส่งโพรโทคอล SSL เวอร์ชัน 3.0 เข้าไปยังหน่วยงาน IETF เพื่อขอรับรองมาตรฐาน โดยได้พัฒนาออกมาเป็นโพรโทคอล TLS เวอร์ชัน 1.0 เผยแพร่ในปี 1999 ซึ่งในทางเทคนิคแล้วก็เป็นโพรโทคอล SSL เวอร์ชัน 3.0 ที่ถูกปรับปรุงและเปลี่ยนชื่อใหม่ [1] ปัจจุบันโพรโทคอล TLS ถูกพัฒนามาถึงเวอร์ชัน 1.3 โดยมีการประกาศร่างเอกสารส่งให้ IETF ในช่วงเมษายนปี 2557 ที่ผ่านมา
เมื่อวันที่ 14 ตุลาคม 2557 นักวิจัยของ Google ได้ประกาศค้นพบช่องโหว่ในโพรโทคอล SSL เวอร์ชัน 3.0 ซึ่งช่องโหว่ดังกล่าวนี้ส่งผลให้ผู้ไม่หวังดีสามารถถอดรหัสลับข้อมูลที่รับส่งเพื่ออ่านเนื้อหาของข้อมูลได้ [2] ทาง Google เรียกชื่อช่องโหว่นี้ว่า POODLE (Padding Oracle On Downgraded Legacy Encryption) หมายเลขช่องโหว่ CVE-2014-3566
ถึงแม้ว่าโพรโทคอล SSL เวอร์ชัน 3.0 จะเป็นโพรโทคอลเก่าตั้งแต่เกือบ 20 ปีที่แล้ว แต่ก็ยังพบว่ามีเครื่องให้บริการหลายส่วน รวมถึงโปรแกรมเบราว์เซอร์รุ่นเก่า หรือแอปพลิเคชันบางตัวที่ยังคงอนุญาตให้ใช้การเชื่อมต่อผ่านโพรโทคอล SSL เวอร์ชัน 3.0 อยู่ ซึ่งก็อาจส่งผลให้ข้อมูลของผู้ใช้งานที่มีการรับส่งกับเซิร์ฟเวอร์ ตกอยู่ในความเสี่ยงได้

ผลกระทบ

ข้อมูลที่รับส่งระหว่างเครื่องผู้ใช้งานกับเครื่องให้บริการที่ยังใช้งานโพรโทคอล SSL เวอร์ชัน 3.0 สามารถถูกผู้ไม่หวังดีดักรับและเปิดอ่านข้อมูลในลักษณะข้อความที่ไม่ได้ถูกเข้ารหัสลับได้ ส่งผลให้ข้อมูลสำคัญ เช่น ข้อมูลการล็อกอิน ข้อมูลการใช้งาน ถูกขโมยออกไปได้ [3]

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

เซิร์ฟเวอร์ให้บริการหลายส่วน รวมถึงโปรแกรมเบราว์เซอร์รุ่นเก่า หรือแอปพลิเคชันบางตัวที่ยังคงอนุญาแอปพลิเคชันหรือเซิร์ฟเวอร์ที่ยังคงใช้การรับส่งข้อมูลผ่านโพรโทคอล SSL เวอร์ชัน 3.0 เช่น Internet Explorer เวอร์ชัน 6

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

ปัจจุบันมักจะพบว่า โปรแกรมที่พัฒนาขึ้นมามักจะให้ใช้งานโพรโทคอลสำหรับการเข้ารหัสลับข้อมูลในสมัยใหม่จะรองรับการเชื่อมต่อผ่านโพรโทคอล TLS/SSL ตั้งแต่เวอร์ชันล่าสุด (TLS 1.2) ลงไปจนถึงเวอร์ชันเก่าสุด (SSL 2.0) ยกตัวอย่างเช่น การใช้งาน HTTPS ซึ่งมีการเรียกใช้งานผ่านเว็บเบราว์เซอร์ โดยตัวเบราว์เซอร์จะส่งคำร้องขอเชื่อมต่อด้วยโพรโทคอลเวอร์ชันล่าสุดไปให้ทางเซิร์ฟเวอร์ก่อนเสมอ ถ้าหากเซิร์ฟเวอร์ไม่รองรับถึงจะปรับลดการเชื่อมต่อมายังเวอร์ชันของโพรโทคอลที่ต่ำกว่า ซึ่งในกรณีนี้ ผู้ใช้งานอาจถูกผู้ไม่หวังดีดักข้อมูลระหว่างทาง และทำการหลอกให้เชื่อมต่อกับเซิร์ฟเวอร์ผ่านโพรโทคอล SSL เวอร์ชัน 3.0 แทนที่จะเป็นโพรโทคอลเวอร์ชันใหม่ที่ปลอดภัยกว่าได้
การแก้ไขปัญหา สามารถทำได้โดยการปิดการทำงานของ SSL เวอร์ชัน 3.0 ซึ่งสามารถทำได้ทั้ง 2 ส่วนคือทั้งผู้ใช้งาน (User) และผู้ดูแลระบบ (Administrator) โดยวิธีการตั้งค่าของแต่ละโปรแกรมหรือระบบที่ใช้งานนั้นมีความแตกต่างกันออกไป แต่จะขอยกตัวอย่างการปิดการทำงานของ SSL เวอร์ชัน 3.0 ในส่วนของผู้ใช้งานที่มีการใช้งาน HTTPS ผ่านโปรแกรมเบราว์เซอร์ต่างๆ ดังนี้
ปรับการตั้งค่าของเบราว์เซอร์ให้ยกเลิกการใช้งาน SSL เวอร์ชัน 3.0
  • Internet Explorer 6 รองรับการเชื่อมต่อผ่านโพรโทคอล TLS 1.0 แต่ถูกปิดการใช้งานไว้ ผู้ใช้สามารถเปิดใช้งาน TLS 1.0 และปิด SSL 2.0/SSL 3.0 ได้จากหน้าต่าง Internet Options แต่เนื่องจากว่า Internet Explorer 6 นั้นหยุดพัฒนาแล้ว และโพรโทคอล TLS 1.0 ที่มีให้ใช้งานนั้นก็มีช่องโหว่ ผู้ใช้งานที่ยังใช้ Internet Explorer 6 ควรอัปเดตเบราว์เซอร์ให้เป็นเวอร์ชันใหม่โดยเร็วที่สุด
  • ผู้ใช้งาน Internet Explorer ทุกเวอร์ชัน สามารถปิดไม่ให้มีการใช้งาน SSL เวอร์ชัน 3.0 ได้ด้วยการเข้าไปที่ Control Panel เลือก Internet Options คลิกที่แท็บ Advanced ตรงช่อง Settings เอาเครื่องหมายถูกออกจากช่อง Use SSL 3.0

  • Google Chrome เวอร์ชันล่าสุด ทาง Google ได้มีการอัปเดตเพื่อลดผลกระทบจากปัญหาช่องโหว่ SSL เวอร์ชัน 3.0 แล้ว แต่ยังมีการเปิดใช้งานโพรโทคอลนี้อยู่ หากผู้ใช้ต้องการปิดการทำงานของโพรโทคอล SSL เวอร์ชัน 3.0 สามารถทำได้โดยการคลิกขวาที่ไอคอนของ Google Chrome เลือก Properties คลิกที่แท็บ Shortcut ในช่อง Target เพิ่มข้อความ --ssl-version-min=tls1 จากนั้นกด OK แล้วเปิด Google Chrome ขึ้นมาใหม่ จะเป็นการเปิดใช้งานโดยไม่อนุญาตให้มีการเชื่อมต่อผ่านโพรโทคอล SSL 3.0

  • Mozilla Firefox พิมพ์ในช่อง Address Bar ว่า about:config ในช่อง Search พิมพ์คำว่า security.tls.version.min จากนั้นดับเบิ้ลคลิกค่าในช่อง Value เพื่อเปลี่ยนค่าจาก 0 ให้เป็น 1

  • กดปุ่ม OK จากนั้นปิด Firefox แล้วเปิดใหม่

  • หรือหากไม่ต้องการเข้าไปตั้งค่าเอง สามารถติดตั้ง Extension ชื่อ SSL Version Control [4] เพื่อบังคับไม่ให้มีการเชื่อมต่อโพรโทคอล SSL เวอร์ชัน 3.0
  • สำหรับ Safari ใน Mac OS X 10.10 Yosemite, Mac OS X 10.9 Mavericks และ Mac OS X 10.8 Mountain Lion ผู้ใช้งานสามารถติดตั้ง Security Update 2014-005 เพื่อแก้ปัญหาดังกล่าวได้ [5] [6]

อ้างอิง

  1. http://en.wikipedia.org/wiki/Transport_Layer_Security
  2. https://www.openssl.org/~bodo/ssl-poodle.pdf
  3. https://www.imperialviolet.org/2014/10/14/poodle.html
  4. https://addons.mozilla.org/en-US/firefox/addon/ssl-version-control/
  5. https://support.apple.com/kb/HT6531
  6. https://zmap.io/sslv3/browsers.html
Clear