Được mua lại bởi Google vào năm 2014, Firebase là nền tảng di động cho phép người dùng phát triển ứng dụng một cách nhanh chóng và bảo mật. Nó được phần lớn nhà phát triển sử dụng nhờ có lợi thế về cơ sở dữ liệu thời gian thực dựa trên nền tảng đám mây, cho phép dễ dàng lưu trữ và đồng bộ dữ liệu giữa nhiều người dùng. Nhờ đó, Firebase là công cụ hiệu quả cho hợp tác đa nền tảng, giúp phổ biến việc phát triển ứng dụng không máy chủ và mạnh mẽ về bảo mật nhờ có nền tảng từ người dùng.
Công ty nghiên cứu công nghệ Comparitech mới đây phát hiện Firebase của Google có một lỗi chung khi cấu hình các cơ sở dữ liệu, khiến nhiều thông tin nhạy cảm dễ bị rò rỉ và bị người khác xem trộm, trong đó có mật khẩu, số điện thoại, tin nhắn.
Hơn 4.000 ứng dụng Android để lộ thông tin của người dùng
Nhóm nghiên cứu của Comparitech do Bob Diachenko dẫn đầu đã khảo sát trên 515.735 ứng dụng Android trên Google Play Store, trong đó có 155.066 ứng dụng sử dụng Firebase. Diachenko xác nhận có 11.730 ứng dụng sử dụng Firebase công khai cơ sở dữ liệu.
Khi nghiên cứu sâu hơn, nhóm của Diachenko nhận thấy có 9.014 trong số 11.730 ứng dụng cấp quyền ghi, cho phép kẻ xấu xem, tải về hoặc thêm bớt, xoá dữ liệu. Các nhà phân tích của Comparitech cho biết có 4.282 ứng dụng trong số này để lộ các thông tin nhạy cảm. Theo bản báo cáo, các dữ liệu bị "rò rỉ" bao gồm 7 triệu địa chỉ email, trên dưới 7 triệu đoạn tin nhắn, 4,4 triệu tài khoản người dùng, 1 triệu mật khẩu và 5 triệu số điện thoại di động.
Theo ước tính, tính trong tháng 3/2020, có hơn 1,5 ứng dụng sử dụng nền tảng Firebase trên cả hai nền tảng Android và iOS. Tuy vậy, khi ngoại suy từ mẫu 24.000 ứng dụng Android có nguy cơ bị lộ thông tin, chỉ có tổng cộng khoảng 1,6% ứng dụng sử dụng nền tảng Firebase và 0,9% ứng dụng trên Google Play gặp lỗi cấu hình đã nêu.
Cách tìm ra ứng dụng lỗi
Các nhà nghiên cứu của Comparitech bắt đầu bằng việc tìm kiếm trong các tài nguyên ứng dụng những chuỗi văn bản biểu thị việc chúng sử dụng nền tảng Firebase. Từ đó, họ sẽ thêm vào địa chỉ URL của cơ sở dữ liệu với đuôi ".json" để xem có thể truy cập được dữ liệu được lưu trữ hay không. Nếu hệ thống phản hồi bằng thông báo từ chối, chúng tỏ việc bị lộ thông tin không xảy ra. Tuy vậy, thực tế, tần suất cơ sở dữ liệu hiển thị hết các thông tin nhạy cảm xuất hiện thường xuyên hơn.
Sau đó, các nhà nghiên cứu lại tiếp tục nghiên cứu trực tiếp những thông tin nhạy cảm thu được để xem liệu nguy cơ rò rỉ thông tin là thật hay nhầm lẫn. "Tất cả dữ liệu được truy cập đều đã được huỷ sau đó", các chuyên gia cho biết khẳng định nghiên cứu của họ "đảm bảo các tiêu chuẩn và quy trình của giới hacker mũ trắng".
Giảm thiểu rủi ro lỗi cấu hình
Về lý thuyết, việc giảm nguy cơ lỗi cấu hình rất đơn giản. Các nhà phát triển chỉ cần đảm bảo việc cấu hình cơ sở dữ liệu đúng ngay từ ban đầu là tránh được lỗi. Hay nói cách khác, họ chỉ cần tuân thủ đúng mọi nguyên tắc về cơ sở dữ liệu và bảo mật mà Google đặt ra cho Firebase trong văn bản hướng dẫn. Nhưng thực chất, việc này không hề dễ dàng.
Việc các nhà phát triển không tuân thủ hướng dẫn đã khiến tình trạng cấu hình sai, hệ quả là lộ thông tin người dùng lặp đi lặp lại nhiều lần. Đầu năm nay, một bản báo cáo chỉ ra rằng có tới 82% lỗ hổng bảo mật được tạo ra do ứng dụng bị cấu hình sai. Câu hỏi đặt ra là lỗi có phải đến từ chính các nhà phát triển không?
Sean Wright, Huấn luyện viên bảo mật ứng dụng và là đồng lãnh đạo của dự án Bảo mật Ứng dụng Web mở, cho biết các nhà phát triển luôn phải chịu sức ép về việc đáp ứng nhu cầu tạo ra ứng dụng sớm nhất có thể. Do đó, việc tuân thủ theo mọi quy tắc được đặt ra là rất khó.
Ian Thornton-Trump, Trưởng phòng An ninh Thông tin của công ty bảo mật Cyjax, cho biết: "Những ai nghĩ việc phát triển phần mềm và công nghệ thông tin chỉ là những quy trình mang tính lặp lại thì chứng tỏ họ chưa hiểu rõ cách thức hoạt động của ngành. Vấn đề không phải là mắc lỗi mà là việc bạn phải phục hồi và cải thiện lỗi ra sao". Chuyên gia bảo mật Jon Opdenakker đồng ý với ý kiến này. Ông cho rằng điều cần thiết hiện tại là tạo ra một quy trình phát triển phần mềm an toàn và việc đảm bảo an toàn cho ứng dụng phải được nhắc đến trong đó. Điều này cần thời gian.
Sau khi nhận được báo cáo của Comparitech, Google cho biết: "Firebase cung cấp nhiều tính năng cho phép các nhà phát triển cấu hình một cách antoafn. Chúng tôi cũng cảnh báo về các nguy cơ cấu hình trong sản phẩm của chính họ đồng thời đưa ra lời khuyên để sửa. Hãng đang liên lạc đến những nhà phát triển gặp lỗi này để giúp khắc phục vấn đề".
Theo vnexpress.net