แฮ็กเกอร์สามารถโจมตีเบราว์เซอร์ Chromium-based ใน Windows ได้ด้วยการโหลด Extensions ที่เป็นอันตราย

เบราว์เซอร์ที่ใช้ Chromium-based เช่น Chrome, Edge, และ Brave จัดการ extensions ที่ติดตั้งผ่านไฟล์ JSON preference ซึ่งจัดเก็บไว้ที่ %AppData%\Google\User Data\Default\Preferences (สำหรับเครื่องที่อยู่ในโดเมน) หรือ Secure Preferences (สำหรับระบบทั่วไป)

งานวิจัยของ Synacktiv แสดงให้เห็นว่า การแก้ไขไฟล์เหล่านี้โดยตรงจะทำให้ผู้โจมตีสามารถสั่งให้เบราว์เซอร์โหลด Extensions ใดก็ได้โดยที่ผู้ใช้ไม่ยินยอม และไม่ต้องผ่าน Chrome Web Store

การโจมตีที่สำเร็จต้องอาศัยปัจจัยทางเทคนิค 3 ประการ ได้แก่ การคำนวณ extension ID ล่วงหน้า, การสร้างรหัส Message Authentication Codes (MACs) ที่ถูกต้องสำหรับ extensions และ developer_mode flag และการ bypass การควบคุมขององค์กร

Extension ID จะถูกสร้างขึ้นจาก Public Key หรือจาก Installation Path ของ Extension ผ่าน SHA-256 hash ที่ถูกตัดให้เหลือ 32 ตัวอักษรเลขฐานสิบหก และ mapped กับชุดตัวอักษรที่กำหนดเอง (a–p)

การตรวจสอบความสมบูรณ์ของ Chromium ใช้ HMAC ที่มีค่าคงที่ ซึ่งดึงมาจาก resources.pak โดยเฉพาะ resource file 146 เพื่อ sign ใน critical JSON keys

ผู้โจมตีทำ reverse algorithm HMAC นี้เพื่อคำนวณ MACs ที่ถูกต้องสำหรับ extensions.settings.<crx_id> และ extensions.developer_mode ซึ่งทำให้สามารถติดตั้ง Extension ที่เป็น Backdoor ได้โดยที่ผู้ใช้ไม่รู้ตัว

การ Bypass การควบคุม GPO ของ Extension Chrome 

โดยทั่วไปในสภาพแวดล้อมขององค์กรมักจะมีการใช้ GPOs (Group Policy Objects) เพื่ออนุญาต หรือบล็อก Extension ผ่านนโยบายอย่าง ExtensionInstallAllowlist และ ExtensionInstallBlocklist

มี 3 วิธีการที่ใช้ในการ Bypass การควบคุมเหล่านี้ได้:

Synacktiv ระบุว่า การนำ RSA public key ของ Extension ที่องค์กรอนุมัติแล้ว (เช่น Adobe Acrobat Reader สำหรับ Chrome) มาใช้ซ้ำ ผู้โจมตีสามารถสร้าง Extension ID ที่ตรงกันได้

จากนั้นผู้โจมตีจะแทรก Extension ที่เป็นอันตรายที่ unpacked ภายใต้ ID นั้น ซึ่งจะทำให้สามารถ bypass การตรวจสอบด้วยการแฮชได้

เมื่อ Extension ที่ unpacked และ Extension ที่ติดตั้งจาก Store มี ID เดียวกัน Chromium จะให้ความสำคัญกับ Extension ที่ unpacked มากกว่า การชนกันนี้ทำให้ผู้โจมตีสามารถแก้ไขปลั๊กอินที่น่าเชื่อถือได้อย่างแนบเนียน

Windows ใช้นโยบายตามลำดับ LSDOU แม้ว่านโยบายของ Chrome จะอยู่ภายใต้ HKCU\Software\Policies\Google\Chrome แต่ผู้ดูแลระบบภายในสามารถลบ หรือแก้ไขข้อมูลใน Registry ได้ โดยลบรายการอนุญาต หรือรายการบล็อก เพื่อ bypass การบังคับใช้ policy ทั้งหมด

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

ชุดเครื่องมือ Proof-of-Concept จาก Synacktiv แสดงให้เห็นถึงการติดตั้ง Extension จากภายนอกผ่าน SMB ร่วมกับ C2 Server ที่สร้างขึ้นเอง ซึ่งทำให้สามารถเรียกใช้ JavaScript ภายในเบราว์เซอร์ และผ่านการป้องกันต่าง ๆ เช่น App-Bound Encryption ได้

การป้องกันช่องโหว่นี้จำเป็นต้องมีการเฝ้าระวังการเปลี่ยนแปลงที่ไม่ได้รับอนุญาตในไฟล์ preference, การตรวจสอบ registry policy integrity และการตรวจจับการติดตั้ง Extension ที่ผิดปกติ

หากไม่มีกลไกการตรวจจับดังกล่าว "Extension ปลอม" จะเป็นช่องทางที่แนบเนียน และสามารถแฝงตัวอยู่ถาวรในการขโมยข้อมูลขององค์กร และโจมตีต่อไปภายในเครือข่ายได้

ที่มา : cybersecuritynews