ปรกติเมื่อเกิดเหตุการณ์ผิดพลาดกับใบรับรอง SSL ไม่ว่าเกิดจากสาเหตุใด ทางผู้ออกใบรับรอง (Certification Auhtority - CA) จะออกรายการยกเลิกใบรับรอง (Certificates Revocation List - CRL) เพื่อให้เบราเซอร์นำไปตรวจเทียบว่าเจอใบรับรองในรายการหรือไม่ ระบบนี้ใช้กันทั่วไปในทุกๆ ระบบที่ใช้ SSL ไม่จำกัดเฉพาะเบราเซอร์ แต่ปัญหาคือการติดต่อกับ CA บางครั้งอาจจะล้มเหลว ระบบ SSL นั้นออกแบบให้ยอมให้ใช้งานใบรับรองที่ได้รับมาไปก่อนได้แม้จะติดต่อขออัพเดตรายการยกเลิกไม่ได้ ทำให้ผู้โจมตีอาจจะอาศัยกระบวนการเพื่อสกัดไม่ให้เบราเซอร์ติดต่อกับ CA ได้ซึ่งไม่ยากนัก
แม้การหลบเลี่ยงกระบวนการนี้จะทำได้ง่าย แต่ทุกวันนี้ในทุกๆ การเชื่อมต่อจะต้องเสียเวลาเช็คจากเซิร์ฟเวอร์ประมาณ 300ms ทำให้เว็บดู "ช้า" ทาง Chrome จึงตัดสินใจยกเลิกกระบวนการนี้
กระบวนการที่เข้ามาแทนที่คือการอัพเดตรายการยกเลิกผ่านทางอัพเดตของเบราเซอร์โดยตรง เพราะเบราเซอร์ (โดยเฉพาะ Chrome) ก็มีกระบวนการอัพเดตที่ดีและรวดเร็วอยู่แล้ว และตัวโครมเองก็สามารถใช้กระบวนการอัพเดตเบราเซอร์มาอัพเดตรายการยกเลิกใบรับรองโดยไม่ต้องปิดเปิดโปรแกรมใหม่ด้วยซ้ำ
แนวคิดแบบนี้น่าสนใจดีที่ซอฟต์แวร์ที่มีการอัพเดตต่อเนื่องอาจจะพิจารณาใช้กระบวนการอัพเดตเพื่อรักษาความปลอดภัยแทน
ที่มา - ImperialViolet, ArsTechnica




Comments
ในกรณี auto update เอง ตัวโปรแกรมเอง (browser) จะมั่นใจได้ยังไงว่าตัวเองไม่โดน by-pass ที่อยู่ของข้อมูลไปที่อื่นแล้วเอาข้อมูลที่ไม่ถูกต้องใส่เข้ามาแทนล่ะครับ? ... ในกรณีการ update โปรแกรมนั้น ข้อมูลของ CA จะใส่มาในโปรแกรมอยู่แล้ว ไม่น่าจะมีปัญหาอะไรครับ
ผมว่าถ้าคิดแบบนี้มันก็ bypass ได้เหมือนกันนี่ครับ? ไท่ว่าจะผ่าน CA หรือ update...
Just think that everything fine, they will fine.
นั่นน่ะสิครับ
ขยันดีจริงๆ Google เลข version ไปถึงไหนแล้วเนี่ย
เจอปัญหากับ StartSSL ตอนสมัครเจอ ssl_error_handshake_failure_alert ใช่กรณีเดียวกับข่าวนี้หรือเปล่า?
งานนี้ข่าวดี เราจะได้ล็อกอินเข้าระบบมหาลัยได้ลื่นขึ้นหละสิ 555
Nokia is My Life, Windows Phone is My Love, Android is My Favorite and Twitter is My Addict!
SayHiIT | Twitter | Facebook
Concept คล้ายๆ Anti-Virus เลยแฮะ แต่อันนี้ Anti-Cert.