Duyệt Web an Toàn Trong Môi Trường Mạng Không Đáng Tin Cậy - nói dối e blog

Duyệt Web an Toàn Trong Môi Trường Mạng Không Đáng Tin Cậy

Thỉnh thoảng tôi phải sử dụng internet ở những nơi công cộng. Tuy nhiên, tôi tuyệt đối không đăng nhập bất kỳ tài khoản cá nhân nào trên các thiết bị lạ. Thời buổi này, ngay cả máy tính cá nhân cũng không còn an toàn (trừ các nền tảng không phải Windows), huống hồ là những thiết bị không rõ nguồn gốc?

Kỳ thực tôi chưa từng mua hay dùng laptop, vì có chút chán ghét với thiết bị này. Trước đây tôi đã tận dụng tối đa chức năng của chiếc điện thoại Palm, ví dụ như dùng lệnh ssh để truy cập máy chủ cá nhân từ xa, hoặc dùng trình duyệt truy cập các giao diện quản lý đơn giản. Miễn là máy chủ công khai được cấu hình đầy đủ, mọi việc đều diễn ra suôn sẻ. Nhớ có lần, tôi muốn xem hình ảnh trên một website nhưng trình duyệt di động lại không tải được trang. Tôi đã ssh vào server cá nhân, dùng wget tải trang web, phân tích mã html bằng grep, tiếp tục wget để tải hình. Sau đó dùng ImageMagick để resize, nén và chuyển đổi định dạng ảnh. Cuối cùng đưa lên web server riêng để trình duyệt điện thoại có thể xem mượt mà. (Vừa tiết kiệm đáng kể lưu lượng GPRS)

Phương pháp này tuy hiệu quả nhưng quá phức tạp và có nhiều hạn chế. Tối qua tôi suy nghĩ lung tung khi nằm ngủ. Nếu xây dựng một hệ thống phổ quát, có lẽ sẽ yên tâm dùng máy tính công cộng khi cần thiết. Ví dụ như khi đi công tác, gặp tình huống khẩn cấp cần truy cập internet gấp mà chỉ dựa vào điện thoại thì không đủ, lúc đó có thể chạy vào quán net sử dụng tạm thời.

Tất nhiên không có giải pháp nào hoàn hảo, nhưng có thể tối ưu hóa mức độ an toàn. Đồng thời cần đảm bảo tính tiện dụng, không yêu cầu cài đặt phần mềm bổ sung. Hầu hết các hệ thống desktop có kết nối internet đều có trình duyệt, vậy nên phải tận dụng công cụ này.

Để phòng tránh việc bị đánh cắp gói dữ liệu qua mạng (ví dụ như cổng mạng quán net bị can thiệp), nên thiết lập một proxy qua kết nối https. Tôi nghĩ đã có sẵn phần mềm cho mục đích này.

Khi truy cập website qua proxy https, hầu hết các vấn đề an toàn trên đường truyền sẽ được giải quyết. Proxy server nên lưu trữ cookie ở phía server để đảm bảo không rò rỉ thông tin cá nhân.

Thứ hai, tôi tuyệt đối không gõ bất kỳ tên đăng nhập/mật khẩu nào trên thiết bị lạ. Vì không thể xác minh bàn phím có bị cài keylogger hay không. Không chỉ nhập liệu qua bàn phím, bất kỳ hình thức nhập liệu nào cũng không nên để mật khẩu tồn tại trong bộ nhớ máy tính lạ. Dùng USB token là giải pháp tốt, nhưng không phải máy nào cũng có cổng USB hoặc cho phép cắm thiết bị bên ngoài.

Tôi nghĩ ra cách: lưu sẵn toàn bộ mật khẩu trên proxy server trong môi trường an toàn. Khi cần chỉ cần proxy server chuyển tiếp thông tin đăng nhập. Nếu có nhiều mật khẩu (như tôi, mỗi trang dùng một mật khẩu khác nhau), có thể đặt các nhãn định danh dễ nhớ cho từng cặp tài khoản/mật khẩu, sau đó chọn từ danh sách thả xuống.

Vấn đề thứ ba: Làm thế nào để đăng nhập an toàn vào hệ thống web proxy https này?

Phương pháp đơn giản nhất là tạo sẵn bộ mật khẩu một lần (OTP), dùng xong hủy luôn. Trước khi ra ngoài, chép vào sổ tay hoặc lưu trong điện thoại.

Nhân tiện, OTP thực sự là giải pháp vừa an toàn vừa tiết kiệm. Tôi khuyến khích các game online áp dụng :D Ví dụ cho phép người dùng yêu cầu bộ OTP trong môi trường an toàn, in ra giấy và mang theo. Khi ở môi trường đáng ngờ thì dùng đến. Tất nhiên cần tính toán chi tiết trong thiết kế, nhưng xin phép không đi sâu ở đây.

Không biết xây dựng hệ thống như trên có phức tạp không nhỉ? Có lẽ đã có các phần mềm mã nguồn mở có thể tận dụng, chỉ cần chỉnh sửa và kết hợp lại với nhau :D

0%