Car-tech

Thuộc tính localStorage của API lưu trữ web cho phép các trang web lưu trữ từ 2,5MB đến 10 triệu B của dữ liệu trên mỗi tên miền gốc-tùy thuộc vào trình duyệt được sử dụng. Google Chrome thi hành giới hạn 2 MB, Mozilla Firefox giới hạn 5MB và Internet Explorer giới hạn 10MB.

Building the Web Together

Building the Web Together
Anonim

Tuy nhiên, tiêu chuẩn Lưu trữ web cảnh báo rằng một số trang web có thể cố gắng phá vỡ giới hạn lưu trữ bằng cách lưu trữ dữ liệu từ tên miền phụ của họ. "Tác nhân người dùng nên bảo vệ chống lại các trang web lưu trữ dữ liệu dưới nguồn gốc các trang web liên kết khác, ví dụ: lưu trữ tối đa giới hạn trong a1.example.com, a2.example.com, a3.example.com, v.v …, phá vỡ lưu trữ example.com chính giới hạn, "theo tiêu chuẩn, được công bố bởi World Wide Web Consortium.

" Chrome, Safari và IE hiện không triển khai bất kỳ giới hạn lưu trữ 'trang web liên kết' như vậy, "nhà phát triển web và nhà nghiên cứu bảo mật Feross Aboukhadijeh cho biết bài đăng blog gần đây. Vì chủ sở hữu trang web có thể tạo ra các tên miền phụ theo ý muốn, họ có thể khai thác lỗ hổng này để có được không gian lưu trữ không giới hạn trên máy tính của khách truy cập.

Aboukhadijeh tạo một trang web chứng minh sử dụng mẹo này để lấp đầy đĩa cứng của khách truy cập ổ đĩa với dữ liệu rác. Trang web này đã được thử nghiệm với Chrome 25, Safari 6, Opera 12 và IE 10 và có khả năng ghi 1GB dữ liệu cứ sau 16 giây trên Macbook Pro được trang bị ổ cứng trạng thái rắn (SSD). "Đối với các trình duyệt 32 bit, như Chrome, toàn bộ trình duyệt có thể bị hỏng trước khi đĩa được lấp đầy", Aboukhadijeh nói. Cuộc tấn công không hoạt động trong Firefox vì "việc triển khai localStorage của Firefox là thông minh hơn", anh nói.

Các nhà phát triển Chrome thừa nhận vấn đề trong một mục trên trình theo dõi lỗi của Chrome, nhưng việc tìm kiếm bản sửa lỗi có thể không dễ dàng. Theo một số người tham gia vào cuộc thảo luận, giới hạn không gian localStorage cho các tên miền phụ liên quan đến giới hạn cho các miền tương ứng có thể tạo ra các vấn đề trên các trang như Github Pages hoặc Appspot cung cấp cho người dùng tên miền phụ riêng của họ để tạo dự án.