Nguy cơ đe dọa an toàn mạng Cloudbleed

15:03 | 28/02/2017

Một lỗ hổng nhỏ trong mã nguồn của Cloudflare đã dẫn đến một lượng dữ liệu chưa thống kê được gồm mật khẩu, thông tin cá nhân, tin nhắn, cookie... đã bị rò rỉ trên Internet.

Theo Gizmodo, Cloudflare là một trong những công ty an ninh mạng lớn nhất thế giới và Hãng đã hành động rất nhanh chóng khi nhà nghiên cứu bảo mật Tavis Ormandy của dự án Project Zero của Google phát hiện ra lỗ hổng gọi là Cloudbleed.



Nhưng bên cạnh đó, các website được Cloudflare hỗ trợ đã bị rò rỉ dữ liệu nhiều tháng trời trước khi ông Ormandy phát hiện ra lỗ hổng. Cloudflare cho biết những ngày dữ liệu rò rỉ đầu tiên là từ hồi tháng 9 năm ngoái. Cho đến nay không rõ liệu các tin tặc mũ đen đã phát hiện và bí mật khai thác lỗ hổng này trước khi Cloudflare xử lý xong code lỗi chưa. Các khách hàng lớn của Cloudflare bao gồm Uber, OKCupid, 1Password (1Password đã khẳng định dữ liệu người dùng của họ an toàn) và FitBit. Điều đó có nghĩa có vô số dữ liệu nhạy cảm có khả năng đã bị thâm nhập.

Như bất kỳ lỗ hổng bảo mật lớn nào, sẽ cần phải mất một thời gian trước khi chúng ta có thể hiểu đầy đủ về mức độ thiệt hại do Cloudbleed gây ra. Hiện tại, để bảo đảm an toàn, bạn nên thay đổi mật khẩu của mình – tất cả mật khẩu – và áp dụng xác thực hai bước ở bất cứ nơi nào có thể. Bạn sẽ biết tại sao đây là cách bảo vệ tốt nhất khi đọc tiếp lỗ hổng bảo mật này tồi tệ như thế nào.

Cloudflare là gì?

Bạn có thể không biết đến Cloudflare nhưng công nghệ của hãng đang được sử dụng ở rất nhiều website phổ biến. Cloudflare mô tả bản thân là một "công ty bảo mật và hiệu suất web". Khởi điểm từ một ứng dụng theo dõi nguồn phát tán spam, hãng hiện nay cung cấp toàn bộ menu sản phẩm cho các website, bao gồm các dịch vụ dựa trên hiệu quả như dịch vụ phân phối nội dung, dịch vụ cung cấp tên miền, dịch vụ an ninh mạng (như bảo vệ website chống các cuộc tấn công từ chối dịch vụ DDoS). 

Thực tế, Cloudflare là một công ty bảo mật và điều này làm cho việc phát hiện mã nguồn của hãng có lỗ hổng trở nên vô cùng trớ trêu. Xét cho cùng, có nhiều doanh nghiệp đang trả tiền cho Cloudflare để giúp cho dữ liệu của họ an toàn. Trong khi đó, "dính" phải lỗ hổng Cloudbleed, Cloudflare lại làm ngược lại.

"Tôi đã thông báo cho Cloudflare những gì tôi phát hiện. Tôi tìm thấy nhiều tin nhắn riêng tư từ nhiều trang hẹn hò trực tuyến lớn, toàn bộ tin nhắn từ một dịch vụ chat nổi tiếng, dữ liệu quản lý mật khẩu online...",
 ông Tavis Ormandy cho biết. "Chúng tôi đang nói đến tất cả những địa chỉ IP của khách hàng, tất cả phản hồi, cookie, mật khẩu, dữ liệu...". Ông cũng cho biết lỗ hổng Cloudbleed đã rò rĩ dữ liệu của 3.438 tên miền trong giai đoạn 5 ngày trong tháng Hai này.

Cloudbleed hoạt động như thế nào?
 

Với những người am hiểu công nghệ, Cloudbleed là đặc biệt thú vị bởi vì một ký tự duy nhất trong code của Cloudflare là nguyên nhân dẫn đến lỗ hổng này. Dường như đó là một lỗi coding đơn giản, nhưng dựa trên những gì đã được đưa tin trước đó, có lẽ Cloudbleed hoạt động hơi giống như lỗ hổng Heartbleed xét về cách nó rò rỉ thông tin trong suốt một số tiến trình nhất định. Quy mô tác động đến người dùng của Cloudbleed cũng giống như Heartbleed, vì nó ảnh hưởng đến một dịch vụ bảo mật thông thường được nhiều website sử dụng.

Theo một bài đăng trên blog của Cloudflare, vấn đề này xuất phát từ quyết định của hãng sử dụng một cú pháp HTML mới, gọi là cf-html. Cú pháp HTML là một ứng dụng quét mã nguồn để lọc ra những thông tin liên quan như tag khởi đầu và tag kết thúc. Điều này giúp cho việc điều chỉnh mã nguồn đó dễ dàng hơn.

Cloudflare rơi vào rắc rối khi định dạng (formatting) mã nguồn cf-html và cú pháp cũ Ragel để chạy với phần mềm của mình. Mỗi lỗi trong code đã tạo ra thứ gì đó gọi là lỗ hổng tràn bộ đệm (lỗi liên quan đến đoạn "= =" trong code mà lẽ ra nó phải là "> =". Điều này có nghĩa là khi phần mềm đang viết dữ liệu cho một bộ đệm - một lượng không gian lưu trữ giới hạn cho dữ liệu tạm thời - nó sẽ điền đầy bộ nhớ đệm và sau đó tiếp tục viết code ở chỗ khác.

Nói một cách đơn giản hơn, phần mềm của Cloudflare cố lưu dữ liệu người dùng ở đúng chỗ nhưng chỗ đó lại đầy quá nên phần mềm của Cloudflare cuối cùng cất dữ liệu đó ở nơi khác , như trên một website hoàn toàn khác. Thêm nữa, dữ liệu đó bao gồm mọi thứ, từ mã API cho đến tin nhắn riêng tư. Những dữ liệu này cũng được các website khác và Google lưu lại, có nghĩa là bây giờ Cloudflare phải tìm tất cả dữ liệu này trước khi các tin tặc phát hiện ra.

Bạn có bị ảnh hưởng?
 

Vẫn chưa rõ chính xác đối tượng người dùng nào bị ảnh hưởng bởi lỗ hổng Cloudbleed. Cloudlfare tuyên bố chỉ một lượng rất nhỏ yêu cầu dẫn đến dữ liệu bị rò rỉ nhưng do lỗ hổng đã có từ gần 6 tháng, nên ai dám chắc có bao nhiêu thông tin đã bị rò rỉ? Hơn nữa, thực tế là có quá nhiều dữ liệu như vậy đã được lưu (cache) ở khắp các website khác nhau, nên một mặt vá lỗi để ngăn chặn rò rỉ, Cloudflare cần phải làm nhiều việc để đảm bảo tất cả những thông tin đã rò rỉ không bị lợi dụng. Và thậm chí ngay cả những website không sử dụng dịch vụ của Cloudflare, nhưng có nhiều người dùng Cloudflare cũng có thể bị ảnh hưởng.

Chuyên gia bảo mật Ryan Lackey đã đưa ra một số lời khuyên hữu ích, bởi công ty CryptoSeal của ông được Cloudflare mua lại năm 2014.

"Cloudflare đứng sau nhiều dịch vụ web như Uber, Fitbit, OKCupid… nên thay vì cố xác định dịch vụ nào đang dùng Cloudflare, có lẽ bạn nên nhân cơ hội này thay đổi tất cả mật khẩu trên tất cả các website bạn đăng nhập. Người dùng cũng nên đăng nhập và đăng thoát trên các ứng dụng di động sau cập nhật này. Nếu có thể, bạn nên sử dụng xác thực bảo mật 2 lớp với những trang bạn cho là quan trọng".