Một nhà nghiên cứu bảo mật đã tiết lộ một lỗ hổng “thảm khốc” trong trình duyệt Arc cho phép kẻ tấn công chèn mã tùy ý vào các phiên trình duyệt của người dùng khác với ID người dùng dễ tìm thấy. Lỗ hổng đã được vá vào ngày 26 tháng 8 và được tiết lộ vào hôm nay trong bài đăng trên blog của nhà nghiên cứu bảo mật xyz3vacũng như một tuyên bố từ The Browser CompanyCông ty cho biết nhật ký của họ cho thấy không có người dùng nào bị ảnh hưởng bởi lỗ hổng này.
Khai thác, CVE-2024-45489, dựa vào cấu hình sai trong quá trình triển khai Firebase của The Browser Company, một “dịch vụ cơ sở dữ liệu dưới dạng phụ trợ”, để lưu trữ thông tin người dùng, bao gồm Tăng cường Arcmột tính năng cho phép người dùng tùy chỉnh giao diện của trang web họ truy cập.
Trong tuyên bố của mình, The Browser Company viết:
Arc có một tính năng gọi là Boosts cho phép bạn tùy chỉnh bất kỳ trang web nào bằng CSS và Javascript tùy chỉnh. Vì việc chạy Javascript tùy ý trên các trang web có thể gây ra các mối lo ngại về bảo mật, chúng tôi đã chọn không chia sẻ Boosts với Javascript tùy chỉnh giữa các thành viên, nhưng chúng tôi vẫn đồng bộ hóa chúng với máy chủ của mình để Boosts của riêng bạn có sẵn trên nhiều thiết bị.
Chúng tôi sử dụng Firebase làm backend cho một số tính năng Arc nhất định (thông tin chi tiết hơn về tính năng này bên dưới) và sử dụng nó để duy trì Boosts cho cả việc chia sẻ và đồng bộ hóa trên các thiết bị. Thật không may, Firebase ACL (Danh sách kiểm soát truy cập, cách Firebase bảo mật các điểm cuối) của chúng tôi đã bị định cấu hình sai, cho phép người dùng Firebase yêu cầu thay đổi creatorID của Boost sau khi nó đã được tạo. Điều này cho phép bất kỳ Boost nào được chỉ định cho bất kỳ người dùng nào (với điều kiện bạn có userID của họ) và do đó kích hoạt nó cho họ, dẫn đến CSS hoặc JS tùy chỉnh chạy trên trang web mà boost đang hoạt động.
Hoặc, theo lời của xyz3va,
arc boosts có thể chứa javascript tùy ý
arc boost được lưu trữ trong firestore
trình duyệt arc được tăng cường sử dụng thông qua trường creatorID
chúng ta có thể tùy ý thay đổi trường creatorID thành bất kỳ id người dùng nào
Bạn có thể lấy được creatorID của ai đó theo nhiều cách, bao gồm liên kết giới thiệu, easels chia sẻ và Boosts chia sẻ công khai. Với thông tin đó, kẻ tấn công có thể tạo một boost với mã tùy ý trong đó và thêm nó vào tài khoản Arc của nạn nhân mà không cần bất kỳ hành động nào từ phía nạn nhân. Điều đó thật tệ.
Công ty Browser đã phản hồi nhanh chóng — xyz3va đã báo cáo lỗi cho người đồng sáng lập Hursh Agrawal, trình diễn lỗi trong vòng vài phút và được thêm vào Slack của công ty trong vòng nửa giờ. Lỗi đã được vá vào ngày hôm sau và chi tiết tuyên bố của công ty danh sách các cải tiến về bảo mật công ty cho biết họ đang triển khai, bao gồm thiết lập chương trình tiền thưởng cho lỗi, ngừng sử dụng Firebase, vô hiệu hóa Javascript tùy chỉnh trên Boosts được đồng bộ hóa và thuê thêm nhân viên bảo mật.
Nguồn The Verge