Accept all cookies là gì

Accept all cookies là gì

Đã đăng vào thg 6 24, 2017 2:40 SA 5 phút đọc

1. Cookies là gì?

Accept all cookies là gì

  • Cookies là các tập tin văn bản nhỏ được lưu trữ trên máy tính khi bạn truy cập vào các trang web nhất định. Chúng giúp hoàn thiện website và cung cấp các dịch vụ tốt và cá nhân hóa hơn. Cookies còn cho phép người quản lý website có cái nhìn bao quát về số lượng và cách thức sử dụng của người truy cập, lưu trữ các thông tin dựa trên sự yêu thích của bạn (dựa vào đó có thể tùy chỉnh trang web theo sở thích cá nhân). Ngoài ra, sử dụng cookies còn giúp tăng tốc độ tìm kiếm và nhận ra bạn khi truy cập website lần thứ hai.
  • Tuy nhiên, nếu sử dụng không đúng cách, nó sẽ thành “mồi ngon” cho vô số hacker. Bài viết này sẽ đề cập đến những cách hacker mà có thể lợi dụng cookie để chiếm quyền người dùng, tấn công hệ thống, cùng với phương pháp sử dụng cookie đúng cách để ngăn chặn những lỗ hổng này.

Server và client giao tiếp với nhau thông qua giao thức HTTP. Đặc điểm của giao thức này là stateless. Server không thể biết được 2 request có tới từ cùng 1 client hay không.

Vì đặt điểm này, cookie ra đời. Về bản chất, cookie là một file text nhỏ được server gửi về client, sau đó browser lưu vào máy người dùng. Khi client gửi request tới server, nó sẽ gửi kèm cookie. Server dựa vào cookie này để nhận ra người dùng.

Cookie thường có name, value, domain và expiration:

  • Name, đi kèm với value: Tên cookie và giá trị của cookie đó
  • Domain: Domain mà cookie được gửi lên. Như ở hình dưới, cookies chỉ được gửi khi client truy cập wordpress.com.
  • Expiration: Thời gian cookie tồn tại ở máy client. Quá thời gian này, cookie sẽ bị xoá.
    Accept all cookies là gì

Cookie được gửi kèm theo mỗi request lên server. Server dựa theo cookie để nhận dạng người dùng. Do đó, nếu có thể “chôm cookie” của người khác, ta có thể mạo danh người đó.

Cookie có thể bị chôm theo các con đường sau:

  • Sniff cookie qua mạng: Sử dụng 1 số tool đơn giản để sniff như Fiddler, Wireshark, ta có thể chôm cookie của người dùng ở cùng mạng. Sau đó, sử dụng EditThisCookie để dump cookie này vào trình duyệt để mạo danh người dùng. (Xem demo bài HTTP).

  • Chôm cookie (Cookie thief) bằng XSS: Với lỗ hỗng XSS, hacker có thể chạy mã độc (JavaScript) ở phía người dùng. JS có thể đọc giá trị từ cookie với hàm document.cookie. Hacker có thể gửi cookie này tới server của mình. Cookie này sẽ được dùng để mạo danh người dùng.

    Accept all cookies là gì

  • Thực hiện tấn công kiểu CSRF (Cross-site request forgery). Hacker có thể post một link ảnh như sau:

    Accept all cookies là gì

  • Trình duyệt sẽ tự động load link trong ảnh, dĩ nhiên là có kèm theo cookie. Đường link trong ảnh sẽ đọc cookie từ request, xác nhận người dùng, rút sạch tiền mà người dùng không hề hay biết.

4. Cách phòng chống

Phần này của bài viết sẽ hướng dẫn các bạn cách sử dụng cookie đúng cách để tránh những lỗi bảo mật không đáng có.

  • Nhớ set Expired và Max-Age: Để giảm thiểu thiệt hại khi cookie bị trộm, ta không nên để cookie sống quá lâu. Nên set thời gian sống của cookie trong khoảng 1 ngày tới 3 tháng, tuỳ theo yêu cầu của application.
  • Sử dụng Flag HTTP Only: Cookie có flag này sẽ không thể truy cập thông qua hàm document.cookie. Do đó, dù web có bị lỗi XSS thì hacker không thể đánh cắp được nó.
  • Sử dụng Flag Secure: Cookie có flag này chỉ được gửi qua giao thức HTTPS, hacker sẽ không thể sniff được.
  • Vì cookie dễ bị tấn công, tuyệt đối không chứa những thông tin quan trọng trong cookie (Mật khẩu, số tài khoản, …). Nếu bắt buộc phải lưu thì cần mã hoá cẩn thận.
  • Note thêm: Nếu website của bạn sử dụng RESTful API, đừng sử dụng cookie để authorize người dùng mà hãy dùng OAuth hoặc WebToken. Token này được vào Header của mỗi request nên sẽ không bị dính lỗi CRSF nhé.

Các bạn có thể tìm hiểu thêm về cookie và các lỗi bảo mật liên quan ở đây:

http://resources.infosecinstitute.com/securing-cookies-httponly-secure-flags/ http://www.ibm.com/support/knowledgecenter/SSZLC2_7.0.0/com.ibm.commerce.admin.doc/concepts/csesmsession_mgmt.htm https://www.nczonline.net/blog/2009/05/05/http-cookies-explained/ https://en.wikipedia.org/wiki/HTTP_cookie#Secure_and_HttpOnly http://programmers.stackexchange.com/questions/298973/rest-api-security-stored-token-vs-jwt-vs-oauth

Nguồn: internet

All rights reserved

Cookie là gì? Những lợi ích và rủi ro của Cookie và cách xóa Cookie trên lịch sử Web

Khi sử dụng web, chắc hẳn bạn không còn xa lạ với những thông tin được lưu sẵn khi đăng ký, đăng nhập lại. Quá trình ghi nhớ và điền lại thông tin ấy được gọi là Cookie. Các nhà thiết kế Web đa phần đều sử dụng chúng để mang lại sự thuận tiện nhất cho người dùng cũng như dễ dàng hơn trong thu thập thông tin khách truy cập site.

Accept all cookies là gì

Định nghĩa Cookie là gì

Vậy Cookie là gì,việc thu thập Cookie đem lại những lợi ích và rủi ro ra sao đối với người dùng và chủ trang web, có thể xóa Cookie được hay không? Bài viết này sẽ giúp bạn có những kiến thức hữu ích nhất về Cookie.

Có rất nhiều tài liệu đưa ra các định nghĩa khác nhau về Cookie. Tuy nhiên ta có thể hiểu Cookie là một đoạn văn bản mà một Web server có thể lưu trên ổ cứng của người dùng với các tệp được trang web người dùng truy cập tạo ra. Cookie cho phép website lưu thông tin của người dùng trên máy tính và sau đó lấy lại nó. Các mẩu thông tin sẽ được lưu dưới dạng cặp tên – giá trị (name-value).

Đa số các site chỉ lưu một mẩu thông tin trên máy tính của bạn, nhưng cũng có thể lưu nhiều cặp tên - giá trị nếu nó muốn. Với Cookie, các trang web có thể duy trì trạng thái đăng nhập, ghi nhớ tùy chọn và cung cấp nội dung phù hợp với vị trí và thói quen của người dùng.

Cặp tên - giá trị là gì? Hiểu đơn giản tên - giá trị là mẩu dữ liệu được đặt tên, đây không phải là một chương trình nên không thể thực hiện được việc gì. Một trang web chỉ có thể lấy các thông tin mà nó đã đặt trên máy tính của bạn, nó không thể lấy các thông tin từ các file Cookie khác cũng không thể lấy thông tin khác từ máy tính của bạn.

Bạn đọc tham khảo thêm: 

Tuyển dụng java developer lương cao chế độ hấp dẫn

Việc làm php Hot nhất lương cao chế độ đãi ngộ tốt

Việc làm Python lương cao chế độ hấp dẫn

Cookie được chia thành 2 loại:Cookie bên thứ nhất: do trang web người dùng truy cập tạo ra, trang web được hiển thị trên thanh địa chỉ. Cookie bên thứ nhất được thu thập bởi Session Cookie và Persistent Cookie.

Session Cookie (Phiên Cookie):  được lưu trữ trong bộ nhớ máy tính chỉ trong phiên duyệt web và nó sẽ tự động bị xóa khỏi máy tính khi đóng trình duyệt. Những cookie này thường được lưu trữ dưới dạng ID. Việc thu thập Cookie này giúp bạn nhanh chóng chuyển tới một trang mới mà không cần thực hiện lại quá trình đăng nhập. Session Cookie được sử dụng rộng rãi ở những trang web thương mại để theo dõi các bản ghi mà người dùng thêm vào giỏ hàng.

Persistent Cookie (Cookie liên tục): được lưu trữ trên ổ cứng máy tính và không bị xóa khi đóng trình duyệt. Những cookie này có thể thiết lập những sở thích của bạn đối với một trang web cụ thể khi bạn quay lại. Persistent Cookie còn có thể sử dụng để nhận dạng bạn, phân tích hành vi khi lướt web của bạn. Chúng cũng có thể được sử dụng để cung cấp thông tin về số lượng khách hàng truy cập, thời gian trung bình cho một trang cụ thể, đăng nhập thông tin được lưu trữ trong tài khoản hiệu suất của web.

Cookie bên thứ ba: do các trang web khác tạo ra. Trên trang web mà người dùng truy cập chứa các nội dung như quảng cáo hoặc hình ảnh được sở hữu bởi bên thứ ba. Đây là Cookie cho phép tiếp thị và quảng cáo.

Bạn đọc tham khảo thêm: Business Intelligence là gì? Tại sao các doanh nghiệp lại đặc biệt quan tâm?

Dữ liệu Cookie được thu thập là những cặp name - value được trang web lưu trên ổ cứng của bạn. Một trang web chỉ có thể nhận dữ liệu mà nó đã lưu trên máy tính của bạn và không nhòm ngó các Cookie khác hay bất cứ thứ gì trên máy tính của bạn. Dữ liệu được truyền tải như sau:

  • Nếu bạn nhập URL của một trang web nào đó trên thanh địa chỉ, trình duyệt sẽ gửi một yêu cầu đến website.
  • Khi yêu cầu xong, nó sẽ tìm kiếm file Cookie trên máy tính của bạn mà trang web đã thiết lập. Nếu tìm thấy file của trang đã tạo thì trình duyệt sẽ gửi tất cả các cặp name - value trong file tới máy chủ của URL đã nhập. Nếu không tìm thấy file tương ứng, nó sẽ không gửi dữ liệu Cookie.
  • Web server của trang web sẽ nhận dữ liệu Cookie đã thu thập và yêu cầu cho trang chủ để sử dụng dữ liệu.

Accept all cookies là gì

Quy trình truyền tải dữ liệu Cookie là gì?

  • Nếu không có cặp name - value nào được nhận, quản trị trang web sẽ biết rằng đây là lần đầu bạn sử dụng trang web này. Từ đó, máy chủ của trang web sẽ tạo cho bạn một ID mới trong cơ sở dữ liệu và gửi các cặp name - value đến máy tính của bạn. Máy tính của bạn sẽ tiếp nhận và lưu trên ổ cứng của mình.
  • Web server có thể thay đổi các cặp name - value hoặc bổ sung chúng bất cứ khi nào bạn truy cập và yêu cầu trang.

Bạn hoàn toàn có thể điều khiển quá trình thu thập dữ liệu này bằng cách thiết lập các trình duyệt mình để trình duyệt báo tin mỗi khi site gửi các cặp name - value đến. Bạn hoàn toàn có thể chấp nhận hoặc từ chối các giá trị này.

Đối với doanh nghiệp

Doanh nghiệp nhận được rất nhiều lợi ích từ việc thu thập Cookie người dùng như:

  • Biết được một số thông tin nhất định về người dùng đang truy cập website của mình, người dùng có thường xuyên truy cập và thời gian truy cập trên trang web là bao nhiêu.
  • Có thể dự đoán được cảm nhận của người dùng khi truy cập vào trang web. Những thông tin cá nhân của khách hàng được lưu trữ giúp khách hàng truy cập vào trang web những lần tiếp theo sẽ thuận tiện hơn.
  • Từ những Cookie người dùng, doanh nghiệp sẽ biết những quảng cáp nào được xem nhiều từ đó đưa ra những biện pháp điều chỉnh hoặc thiết kế quảng cáo cho phù hợp, thu hút khách hàng.

Đối với người sử dụng

Thu thập Cookie giúp người dùng thuận tiện hơn trong việc truy cập vào trang web những lần sau, người dùng không cần nhập thông tin nhiều lần.

Bạn đọc tham khảo thêm: Kubernetes là gì? Những lợi ích thiết thực khi sử dụng Kubernetes

Mặc dù mang đến nhiều lợi ích cho doanh nghiệp và người dùng nhưng Cookie cũng ẩn chứa những rủi ro nhất định liên quan đến những dữ liệu được lưu trữ.Cookie ảnh hưởng đến sự riêng tư của người dùng, những thông tin cá nhân có thể bị rò rỉ.

Bản thân Cookie không thể phân tán virus, mã độc nhưng nó có thể thu thập được nhiều thông tin trong đó có cả thông tin tín dụng. Do vậy, Cookie làm tăng nguy cơ mất thông tin cá nhân nếu như người khác sử dụng máy tính của bạn hoặc máy tính bị xâm nhập, đánh cắp.

Để đảm bảo tính bảo mật thông tin của người dùng, một số lời khuyên được các chuyên gia đưa ra:

  • Thiết lập tùy chọn Cookie bằng cách cài đặt chế độ bảo mật cho trình duyệt.
  • Xóa Cookie định kỳ trên máy tính.
  • Không cho phép Cookie lưu thông tin đăng nhập.
  • Cập nhật phần mềm chống tên miền giả, không bảo mật, chỉ cho truy cập những website đáng tin cậy.
  • Cài đặt thiết lập bảo mật kho muốn chia sẻ dữ liệu trực tuyến.
  • Thận trọng khi chia sẻ máy tính của bạn.
  • Nên sử dụng tiện ích để xóa bỏ Cookie.

Những cách xóa Cookie trên máy tính:

Accept all cookies là gì

Cách xóa Cookie trên máy tính nhanh đơn giản

  • Đối với IE: Tool-> Internet Options -> Nhấp Delete -> tại mục Cookies chọn Delete Cookies.
  • Đối với Firefox: Chọn Tool -> Options -> tab Privacy-> tìm mục Cookies và nhấp Clear.
  • Đối với Chrome: Biểu tượng ba chấm -> Cài đặt -> Nâng cao -> Trong mục quyền riêng tư và bảo mật chọn Cài đặt nội dung -> Nhấp vào Cookie sau đó xem tất cả các Cookie và dữ liệu website -> Chọn xóa hoặc xóa tất cả.

“Session Cookie” được tự động xóa khi hoàn thành một giao dịch, bằng việc xóa cookie theo định kỳ sẽ làm giảm nguy cơ của việc lạm dụng thông tin vô tình hay cố ý lưu trữ trong cookie.

Tổng kết

Trên đây là những kiến thức cơ bản về Cookie. Hy vọng qua những chia sẻ ở trên, bạn đã hiểu hơn về Cookie là gì, những ưu và nhược điểm mà chúng mang lại nhé. Nên nhớ những thực hiện những lưu ý mà chúng tôi đã chia sẻ để an toàn nhất khi truy cập trang web, tránh làm mất thông tin cá nhân. Thường xuyên cập nhật trang web để có được những thông tin công nghệ hay nhất nhé!