Talos ทีมนักวิจัย Threat Intelligence ของ Cisco พบช่องโหว่ Heap Buffer Overflow บน PDFium หรือโปรแกรม PDF Reader ที่ติดมากับเบราเซอร์ Google Chrome ซึ่งช่วยให้แฮ็คเกอร์สามารถรันโค้ดแปลกปลอมโดยไม่ได้รับอนุญาต (Arbitrary Code Execution) ได้ผ่านทางไฟล์รูปภาพ jpeg2000 ที่ฝังมากับเอกสาร PDF

ช่องโหว่ Heap Buffer Overflow บน OpenJPEG
ช่องโหว่ Heap Buffer Overflow นี้ได้รับรหัส CVE-2016-1681 ถูกค้นพบบนชุดคำสั่ง jpeg2000 Image Parser เรียกว่า OpenJPEG บน PDFium ซึ่งการเรียก ‘assert’ ที่ใช้งานอยู่จะช่วยป้องกัน Heap Overflow บนการใช้งานแบบ Standalone แต่เมื่อนำมาใช้บน Google Chrome พบว่าการเรียก ‘assert’ จะถูกเพิกเฉยไป ส่งผลให้ไฟล์ PDF ที่มีการฝังรูป jpeg2000 ที่ SIZ Marker ชี้ว่าเป็น 0 components เกิด Heap Buffer Overflow ขึ้น ผลลัพธ์คือ แฮ็คเกอร์สามารถโจมตีแบบ Arbitrary Code Execution แบบต่อเนื่องบนเครื่องของเหยื่อได้ทันที ก่อให้เกิดความล้มเหลวในการให้บริการ ข้อมูลความลับถูกเปิดเผยหรือถูกแก้ไข เป็นต้น
แค่เพียงเปิดไฟล์ PDF ก็ถูกโจมตีทันที
ช่องโหว่นี้ ถือว่ามีความยากในการโจมตีที่ต่ำ และไม่จำเป็นต้องใช้สิทธิ์พิเศษหรือการพิสูจน์ตัวตนใดๆ ในการโจมตีเป้าหมาย เพียงแค่อาศัยการปฏิสัมพันธ์เพียงเล็กน้อยจากผู้ใช้เท่านั้น นั่นคือผู้ใช้ต้องเปิดไฟล์ PDF ซึ่งเป็นเรื่องปกติและง่ายมากที่จะหลอกผู้ใช้ทั่วไปให้ดาวน์โหลดและเปิดไฟล์ PDF ที่ดัดแปลงมาเป็นพิเศษมาดู
Google อุดช่องโหว่เรียบร้อย
ช่องโหว่นี้ถูกส่งให้ทาง Google ซึ่งก็ได้ออกแพทช์สำหรับแก้ปัญหาเป็นที่เรียบร้อย โดย Statement ‘assert’ ที่มีปัญหาไปเป็น ‘if’ แทน แนะนำให้ผู้ใช้อัพเดท Google Chrome อย่างน้อยเป็นเวอร์ชัน 51.0.2704.63 ที่ออกไปเมื่อวันที่ 25 พฤษภาคมที่ผ่านมา หรือเวอร์ชันล่าสุดอย่าง 51.0.2704.79