ช่องโหว่ Heartbleed คืออะไร?

click fraud protection

หนึ่งในช่องโหว่ที่เป็นที่รู้จักมากที่สุดในช่วงกลางปี ​​2010 เรียกว่า “Heartbleed” Heartbleed เป็นเรื่องร้ายแรงอย่างยิ่งเพราะเป็นซอฟต์แวร์ที่ส่งผลต่อ “OpenSSL” ซึ่งเป็นไลบรารีเข้ารหัสหลักสำหรับการเชื่อมต่อ HTTPS ซึ่งใช้กันอย่างแพร่หลาย ที่แย่ไปกว่านั้นคือ มีช่องโหว่ใน OpenSSL มานานกว่าสองปีแล้ว มันถูกค้นพบ เผยแพร่ และแก้ไข ซึ่งหมายความว่าผู้คนจำนวนมากกำลังใช้ช่องโหว่ รุ่น

Heartbleed เป็นช่องโหว่ของข้อมูลรั่วในส่วนขยาย heartbeat ซึ่งเมื่อใช้ประโยชน์จากข้อมูลรั่วไหลจาก RAM จากเซิร์ฟเวอร์ไปยังไคลเอนต์ ส่วนขยายฮาร์ทบีทใช้เพื่อรักษาการเชื่อมต่อระหว่างเว็บเซิร์ฟเวอร์และไคลเอนต์โดยไม่ต้องทำการร้องขอหน้าปกติ

ในกรณีของ OpenSSL ไคลเอ็นต์จะส่งข้อความไปยังเซิร์ฟเวอร์และแจ้งเซิร์ฟเวอร์ว่าข้อความนั้นมีความยาวเท่าใด สูงสุด 64KB เซิร์ฟเวอร์ควรจะสะท้อนข้อความเดิมกลับมา อย่างไรก็ตาม สิ่งที่สำคัญที่สุดคือ เซิร์ฟเวอร์ไม่ได้ตรวจสอบว่าข้อความนั้นยาวตราบเท่าที่ลูกค้าอ้างว่าเป็นข้อความ ซึ่งหมายความว่าลูกค้าสามารถส่งข้อความ 10KB โดยอ้างว่าเป็น 64KB และได้รับการตอบสนอง 64KB โดยที่ 54KB พิเศษประกอบด้วย RAM 54KB ถัดไป ไม่ว่าข้อมูลใดจะถูกเก็บไว้ที่นั่น กระบวนการนี้แสดงให้เห็นอย่างชัดเจนโดย การ์ตูน XKCD #1354.

ได้รับความอนุเคราะห์จาก xkcd.com.

ผู้โจมตีสามารถสร้างอิมเมจของ RAM ส่วนใหญ่ของเซิร์ฟเวอร์โดยการรวมการตอบกลับเข้าด้วยกันโดยการส่งคำขอฮาร์ตบีตจำนวนมากและอ้างว่าเป็นคำขอขนาดใหญ่ ข้อมูลที่จัดเก็บใน RAM ที่อาจรั่วไหล ได้แก่ คีย์การเข้ารหัส ใบรับรอง HTTPS รวมถึงข้อมูล POST ที่ไม่ได้เข้ารหัส เช่น ชื่อผู้ใช้และรหัสผ่าน

หมายเหตุ: เป็นที่รู้จักน้อยกว่า แต่โปรโตคอลฮาร์ตบีตและการใช้ประโยชน์ก็ทำงานในอีกทางหนึ่งด้วย เซิร์ฟเวอร์ที่เป็นอันตรายสามารถกำหนดค่าให้อ่านหน่วยความจำผู้ใช้ได้สูงสุด 64KB ต่อคำขอฮาร์ตบีต

นักวิจัยด้านความปลอดภัยหลายคนค้นพบปัญหานี้โดยอิสระในวันที่ 1 เมษายน 2014 และได้รับการเปิดเผยแบบส่วนตัวต่อ OpenSSL เพื่อให้สามารถสร้างแพตช์ได้ ข้อบกพร่องดังกล่าวได้รับการเผยแพร่เมื่อแพทช์ออกในวันที่ 7 เมษายน 2014 ทางออกที่ดีที่สุดในการแก้ไขปัญหาคือการใช้โปรแกรมแก้ไข แต่ก็ยังสามารถแก้ไขปัญหาได้ด้วยการปิดใช้งานส่วนขยาย heartbeat หากการแพตช์ทันทีไม่ใช่ตัวเลือก

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