Các nhà nghiên cứu cho biết đây là một lỗi thực thi mã từ xa và đã đặt tên cho lỗ hổng này là MyFlaw, do nó lợi dụng một tính năng có tên My Flow để có thể đồng bộ hóa tin nhắn và tệp giữa thiết bị di động cũng như máy tính để bàn. Sự cố này ảnh hưởng đến cả trình duyệt Opera và Opera GX.
Hình 1. Minh họa lỗ hổng MyFlaw
My Flow có giao diện giống như một cuộc trò chuyện để trao đổi ghi chú và tệp, có thể được truy cập thông qua giao diện web, nghĩa là tệp có thể được thực thi bên ngoài ranh giới bảo mật của trình duyệt. Nó được cài đặt sẵn trong trình duyệt và được hỗ trợ bằng tiện ích mở rộng trình duyệt tích hợp (hoặc nội bộ) có tên là “Opera Touch Background”, chịu trách nhiệm liên lạc.
Điều này cũng có nghĩa là tiện ích mở rộng đi kèm với tệp manifest của trình duyệt, chỉ định tất cả các quyền cần thiết và hành vi của nó, bao gồm thuộc tính có tên externally_connectable để khai báo những trang web và tiện ích mở rộng khác có thể kết nối.
Hình 2. Cài đặt tiện ích mở rộng độc hại tự động kích hoạt chuỗi tấn công để thực thi mã
Trong trường hợp của Opera, các tên miền có thể giao tiếp với tiện ích mở rộng phải khớp với các mẫu “*[.]flow[.]opera[.]com” và “[.]flow[.]op-test[.]net”, cả hai đều do chính nhà cung cấp trình duyệt kiểm soát.
Guardio cho biết họ đã phát hiện ra một phiên bản trước đó của trang đích My Flow lưu trữ trên tên miền “web[.]flow[.]opera[.]com” bằng cách sử dụng trang công cụ dò quét urlscan.io. Bản thân trang web này thiếu thẻ meta và chứa một thẻ tập lệnh gọi tệp JavaScript mà không có bất kỳ thẻ nào để kiểm tra tính toàn vẹn. Đây chính xác là những gì kẻ tấn công cần để có thể tiêm (injection) mã và quan trọng nhất là có quyền truy cập vào API trình duyệt gốc.
Sau đó, chuỗi tấn công sẽ tạo ra một tiện ích mở rộng được chế tạo đặc biệt giả dạng thiết bị di động để ghép nối với máy tính của nạn nhân, đồng thời tải về phần mềm độc hại được mã hóa thông qua tệp JavaScript đã sửa đổi đến máy chủ để thực thi bằng cách nhắc người dùng nhấp vào bất kỳ vị trí nào trên màn hình.
Các nhà nghiên cứu cho biết, mặc dù hoạt động trong môi trường sandbox, nhưng các tiện ích mở rộng vẫn có thể trở thành công cụ giúp cho tin tặc đánh cắp thông tin và vi phạm các ranh giới bảo mật của trình duyệt. Điều này nhấn mạnh sự cần thiết phải thay đổi thiết kế nội bộ tại Opera và cải thiện cơ sở hạ tầng của Chrome.
Phản ứng trước lỗ hổng này, Opera cho biết họ đã nhanh chóng khắc phục lỗ hổng bảo mật và thực hiện bản sửa lỗi ở phía máy chủ, bên cạnh đó đang thực hiện các bước để ngăn chặn những sự cố tương tự có thể xảy ra trong tương lai.
Opera cho biết: “Cấu trúc hiện tại của chúng tôi sử dụng tiêu chuẩn HTML và là tùy chọn an toàn nhất mà không phá vỡ chức năng chính. Sau khi Guardio cảnh báo về lỗ hổng này, chúng tôi đã xử lý nguyên nhân gây ra những vấn đề này và đảm bảo rằng những vấn đề tương tự sẽ không xuất hiện trong tương lai”.
Đồng thời, đại diện của công ty phần mềm Opera Software cũng gửi lời cảm ơn đến Guardio vì đã phát hiện sớm và cảnh báo ngay lập tức về lỗ hổng. Sự hợp tác này thể hiện cách mà Opera làm việc cùng với các chuyên gia an ninh mạng và nhà nghiên cứu trên thế giới trong việc duy trì, cải thiện tính bảo mật cho các sản phẩm của họ và đảm bảo người dùng có trải nghiệm trực tuyến an toàn.