Quay lại blog

WebRTC là gì và vì sao nó có thể làm lộ địa chỉ IP thật của bạn?

WebRTC cho phép gọi âm thanh và video ngay trong trình duyệt mà không cần plugin, nhưng các truy vấn STUN khi thiết lập kết nối có thể vượt qua proxy và làm lộ IP thật. Bài viết giải thích nguyên lý, cách tự kiểm tra và biện pháp phòng tránh.

Họp video, lớp học trực tuyến, phát trực tiếp trên web… tất cả những chức năng này đều dựa vào WebRTC. Công nghệ này cho phép các trình duyệt truyền âm thanh, video và dữ liệu trực tiếp theo thời gian thực mà không cần cài plugin. Tuy nhiên, nhiều người không biết rằng trong quá trình thiết lập kết nối, WebRTC có thể vượt qua proxy và làm lộ địa chỉ IP thật của người dùng. Với những ai coi trọng quyền riêng tư, đây là một rủi ro quan trọng cần hiểu rõ.

WebRTC là gì?

WebRTC (Web Real-Time Communication) là một dự án mã nguồn mở cung cấp bộ API tích hợp trong trình duyệt, cho phép các thiết bị gọi âm thanh/video và chia sẻ dữ liệu trực tiếp với nhau. Ưu điểm của WebRTC gồm không cần plugin bên thứ ba, truyền âm thanh, video và dữ liệu theo thời gian thực, hỗ trợ đa nền tảng trên các trình duyệt phổ biến và sử dụng mã hóa đầu cuối để bảo vệ nội dung liên lạc.

Vì sao WebRTC có thể làm lộ IP thật?

Để thiết lập kết nối ngang hàng, WebRTC trước tiên phải tìm địa chỉ IP công khai của cả hai bên. Quá trình này được gọi là ICE (Interactive Connectivity Establishment). Nó sử dụng máy chủ STUN/TURN để phát hiện địa chỉ mạng công khai của bạn — nói đơn giản, trình duyệt hỏi hệ thống: “IP công khai thật của tôi là gì?” và hệ thống trả lời.

Vấn đề xuất hiện ở đây: nếu một trang web có thể chạy mã WebRTC trong trình duyệt của bạn, nó có thể dùng cùng phương thức để lấy IP thật của bạn, ngay cả khi bạn đang dùng proxy. Truy vấn STUN diễn ra ở lớp trình duyệt/mạng thấp hơn và có thể truy cập trực tiếp giao diện mạng của hệ điều hành, do đó có thể bỏ qua tuyến chuyển tiếp của proxy. Bạn có thể nghĩ rằng mình đang truy cập ẩn danh trong khi trang web đã biết địa chỉ thật.

Cách kiểm tra trình duyệt có làm lộ IP hay không

Quy trình kiểm tra địa chỉ local, địa chỉ public của trình duyệt và cài đặt WebRTC

  • Công cụ kiểm tra trực tuyến: sử dụng trang kiểm tra như BrowserScan. Nếu sau khi kiểm tra, trang hiển thị IP công khai hoặc IP local của bạn, có nguy cơ rò rỉ WebRTC;
  • Kiểm tra cài đặt trình duyệt: trong Firefox, nhập about:config vào thanh địa chỉ và tìm media.peerconnection.enabled để xem WebRTC có đang bật hay không (đặt thành false để tắt). Với Chrome và các trình duyệt tương tự, quản lý hành vi WebRTC bằng tiện ích mở rộng hoặc chính sách trình duyệt thường dễ kiểm soát hơn.

Cách ngăn rò rỉ WebRTC

Tiện ích mở rộng trình duyệt: các tiện ích như WebRTC Leak Prevent và WebRTC Control có thể ngăn website lấy địa chỉ thật của bạn thông qua WebRTC.

Chọn dịch vụ proxy/mạng có khả năng chống rò rỉ: nhiều dịch vụ proxy phổ biến cung cấp tùy chọn bảo vệ chống rò rỉ WebRTC và khi bật, tùy chọn này được áp dụng mặc định cho tất cả máy chủ. Hãy xác nhận rằng dịch vụ thực sự chặn truy vấn STUN ở tầng mạng, chứ không chỉ khuyên bạn “tắt WebRTC thủ công”.

Sử dụng môi trường trình duyệt có thể cấu hình WebRTC: với các nhóm vận hành phải duy trì nhiều môi trường làm việc cùng lúc và cần danh tính IP sạch, nhất quán, cấu hình thủ công từng máy vừa chậm vừa dễ bỏ sót. PurpleMark cho phép cấu hình hành vi WebRTC và gắn proxy chỉ định ngay khi tạo môi trường trình duyệt, để mỗi môi trường thể hiện danh tính mạng phù hợp với khu vực kinh doanh và tách biệt với các môi trường khác. Điều này giúp tránh tình huống “đã bật proxy nhưng IP thật vẫn bị lộ”, đồng thời giúp cấu hình môi trường có thể sao chép và kiểm tra lại. Những thiết lập này phục vụ việc quản lý tài khoản và quyền riêng tư đúng quy định, ví dụ các nhóm làm việc ở nhiều thị trường, chứ không nhằm che giấu hoạt động để né quy tắc của nền tảng.

Câu hỏi thường gặp

WebRTC có ảnh hưởng đến bảo mật tài khoản không? Có thể. Nếu một trang web lấy được IP thật khác với IP proxy, các lượt truy cập vốn cần tách biệt có thể bị liên kết với nhau, làm tăng nguy cơ bị theo dõi hoặc đánh giá nhầm.

Bản thân liên lạc WebRTC có được mã hóa không? Có. WebRTC sử dụng mã hóa đầu cuối để bảo vệ nội dung liên lạc. Nguy cơ rò rỉ chủ yếu xảy ra ở bước trao đổi địa chỉ mạng trước khi thiết lập kết nối, không phải ở nội dung cuộc gọi.

Mọi trình duyệt đều hỗ trợ WebRTC không? Các trình duyệt chính như Chrome, Firefox, Safari và Edge đều hỗ trợ WebRTC. Muốn giảm lộ thông tin, điều quan trọng là quản lý hành vi phát hiện địa chỉ của WebRTC thay vì hoàn toàn không sử dụng công nghệ này.