Nội dung hỗn hợp là gì?

Nội dung hỗn hợp xảy ra khi HTML ban đầu được tải qua kết nối HTTPS an toàn, nhưng các tài nguyên khác (chẳng hạn như hình ảnh, video, biểu định kiểu, tập lệnh) lại được tải qua kết nối HTTP không an toàn. Đây được gọi là nội dung hỗn hợp vì cả nội dung HTTP và HTTPS đều được tải để hiển thị cùng một trang và yêu cầu ban đầu được bảo mật qua HTTPS.

Việc yêu cầu các tài nguyên phụ sử dụng giao thức HTTP không an toàn sẽ làm giảm khả năng bảo mật của toàn bộ trang, vì những yêu cầu này dễ bị tấn công trên đường dẫn, trong đó kẻ tấn công nghe trộm kết nối mạng và xem hoặc sửa đổi thông tin giao tiếp giữa 2 bên. Bằng cách sử dụng những tài nguyên này, kẻ tấn công có thể theo dõi người dùng và thay thế nội dung trên một trang web. Trong trường hợp có nội dung hỗn hợp đang hoạt động, kẻ tấn công sẽ có toàn quyền kiểm soát trang đó chứ không chỉ các tài nguyên không an toàn.

Mặc dù nhiều trình duyệt báo cáo cảnh báo nội dung hỗn hợp cho người dùng, nhưng vào thời điểm này thì điều này đã quá muộn: đã thực hiện các yêu cầu không an toàn và tính bảo mật của trang đã bị xâm phạm.

Đây là lý do các trình duyệt đang chặn nội dung hỗn hợp nhiều hơn. Nếu bạn có nội dung hỗn hợp trên trang web, việc khắc phục nội dung đó sẽ đảm bảo nội dung tiếp tục tải khi các trình duyệt trở nên nghiêm ngặt hơn.

Hai loại nội dung hỗn hợp

Có hai loại nội dung hỗn hợp: chủ động và thụ động.

Nội dung hỗn hợp thụ động đề cập đến nội dung không tương tác với phần còn lại của trang và do đó tấn công xen giữa chỉ bị hạn chế những gì họ có thể thực hiện nếu chặn hoặc thay đổi nội dung đó. Nội dung hỗn hợp thụ động được định nghĩa là nội dung hình ảnh, video và âm thanh.

Nội dung hỗn hợp đang hoạt động tương tác với toàn bộ trang và cho phép kẻ tấn công thực hiện hầu hết mọi thứ với trang. Nội dung hỗn hợp đang hoạt động bao gồm các tập lệnh, biểu định kiểu, iframe và các mã khác mà trình duyệt có thể tải xuống và thực thi.

Nội dung hỗn hợp thụ động

Nội dung hỗn hợp thụ động được xem là ít vấn đề hơn nhưng vẫn gây ra mối đe doạ bảo mật cho trang web và người dùng của bạn. Ví dụ: kẻ tấn công có thể chặn các yêu cầu HTTP cho hình ảnh trên trang web của bạn và hoán đổi hoặc thay thế các hình ảnh này; kẻ tấn công có thể hoán đổi hình ảnh nút lưuxoá, khiến người dùng xoá nội dung mà không cố ý; thay thế sơ đồ sản phẩm bằng nội dung đồi truỵ hoặc khiêu dâm, thay thế hình ảnh sản phẩm bằng quảng cáo cho một trang web hoặc sản phẩm khác.

Ngay cả khi kẻ tấn công không thay đổi nội dung trang web của bạn, kẻ tấn công vẫn có thể theo dõi người dùng thông qua các yêu cầu nội dung hỗn hợp. Kẻ tấn công có thể cho biết người dùng truy cập những trang nào và xem sản phẩm nào dựa trên hình ảnh hoặc các tài nguyên khác mà trình duyệt tải.

Nếu có nội dung hỗn hợp thụ động, thì hầu hết các trình duyệt sẽ chỉ báo trên thanh URL rằng trang không an toàn, ngay cả khi chính trang đó được tải qua HTTPS. Bạn có thể quan sát hành vi này qua bản minh hoạ này (trong đó có các ví dụ về nội dung hỗn hợp thụ động).

Cho đến gần đây, nội dung hỗn hợp thụ động được tải trong tất cả các trình duyệt, vì việc chặn nội dung này có thể đã làm hỏng nhiều trang web. Tình hình này hiện đang bắt đầu thay đổi, vì vậy, bạn cần phải cập nhật mọi trường hợp nội dung hỗn hợp trên trang web của mình.

Chrome hiện đang triển khai tính năng tự động nâng cấp nội dung hỗn hợp thụ động (khi có thể). Nâng cấp tự động có nghĩa là nếu nội dung có sẵn qua HTTPS nhưng đã được mã hoá cứng dưới dạng HTTP, trình duyệt sẽ tải phiên bản HTTPS. Nếu không tìm thấy phiên bản bảo mật nào, tài sản sẽ không tải.

Bất cứ khi nào phát hiện nội dung hỗn hợp hoặc tự động nâng cấp nội dung hỗn hợp thụ động, Chrome sẽ ghi lại các thông báo chi tiết đến thẻ Vấn đề trong Công cụ cho nhà phát triển để hướng dẫn bạn cách khắc phục vấn đề cụ thể.

Thẻ Vấn đề trong Công cụ của Chrome cho nhà phát triển hiển thị thông tin chi tiết về vấn đề cụ thể liên quan đến nội dung hỗn hợp và cách khắc phục

Nội dung hỗn hợp đang hoạt động

Nội dung hỗn hợp chủ động gây ra mối đe doạ lớn hơn nội dung hỗn hợp thụ động. Kẻ tấn công có thể chặn và ghi lại nội dung hoạt động, qua đó giành toàn quyền kiểm soát trang hoặc thậm chí toàn bộ trang web của bạn. Điều này cho phép kẻ tấn công thay đổi mọi thứ trên trang, bao gồm cả việc hiển thị nội dung hoàn toàn khác, đánh cắp mật khẩu của người dùng hoặc thông tin đăng nhập khác, đánh cắp cookie phiên của người dùng hoặc chuyển hướng người dùng đến một trang web hoàn toàn khác.

Do mức độ nghiêm trọng của mối đe doạ này, hầu hết các trình duyệt đã chặn loại nội dung này theo mặc định để bảo vệ người dùng, nhưng chức năng sẽ thay đổi tuỳ theo phiên bản và nhà cung cấp trình duyệt.

Bản minh hoạ khác này có các ví dụ về nội dung hỗn hợp đang hoạt động. Tải ví dụ qua HTTP để xem nội dung bị chặn khi bạn tải ví dụ qua HTTPS. Nội dung bị chặn cũng sẽ được trình bày chi tiết trong thẻ Vấn đề.

Thẻ Vấn đề trong Công cụ của Chrome cho nhà phát triển hiển thị thông tin chi tiết về vấn đề cụ thể liên quan đến nội dung hỗn hợp và cách khắc phục

Thông số kỹ thuật của nội dung hỗn hợp

Các trình duyệt tuân theo quy cách nội dung hỗn hợp, trong đó xác định các danh mục nội dung có thể chặn (không bắt buộc)nội dung có thể chặn.

Từ thông số kỹ thuật, một tài nguyên đủ điều kiện là nội dung có thể chặn (không bắt buộc) "khi rủi ro cho phép sử dụng nội dung hỗn hợp cao hơn so với nguy cơ làm hỏng các phần quan trọng của web"; đây là một nhóm nhỏ danh mục nội dung hỗn hợp thụ động được mô tả ở trên.

Tất cả nội dung không có thể chặn (không bắt buộc) sẽ được coi là có thể chặn và phải bị trình duyệt chặn.

Trong những năm gần đây, mức sử dụng HTTPS đã tăng đáng kể và đã trở thành lựa chọn mặc định rõ ràng trên web. Điều này giúp các trình duyệt hiện có thể cân nhắc chặn tất cả nội dung hỗn hợp, ngay cả những loại tài nguyên phụ được xác định trong thông số kỹ thuật của nội dung hỗn hợpcó thể chặn (không bắt buộc). Đó là lý do khiến giờ đây Chrome áp dụng biện pháp nghiêm ngặt hơn đối với các tài nguyên phụ này.

Các trình duyệt cũ hơn

Xin lưu ý rằng không phải mọi khách truy cập vào trang web của bạn đều sử dụng trình duyệt mới nhất. Các phiên bản khác nhau của các nhà cung cấp trình duyệt khác nhau sẽ xử lý nội dung hỗn hợp theo cách khác nhau. Tệ nhất là các trình duyệt và phiên bản cũ hơn hoàn toàn không chặn nội dung hỗn hợp nào, điều này rất không an toàn cho người dùng.

Bằng cách khắc phục các vấn đề về nội dung hỗn hợp, bạn đảm bảo rằng nội dung của mình hiển thị trong các trình duyệt mới. Bạn cũng giúp bảo vệ người dùng khỏi nội dung nguy hiểm không bị các trình duyệt cũ chặn.