- Đối với cá ứng dụng Web phải sử dụng chứng thư số. Đối với các ứng dụng khác, khuyến nghị sử dụng chứng thư số tin cậy, ngoài ra dữ liệu được truyền trên đường truyền phải được mã hóa an toàn;
- Sử dụng TLS cho tất cả kết nối để đảm bảo dữ liệu được mã hóa trên đường truyền. Tất cả các lỗi kết nối TLS phải được ghi log để phục vụ cho quá trình điều tra sau này;
- Các kết nối TLS phải được cấu hình đảm bảo an toàn an ninh thông tin: sử dụng bộ giao thức (sử dụng TLS 1.2, không sử dụng SSL2, SSL3), bộ mật mã mạnh tương ứng (TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 256bit,
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA256 128bit….) có khả năng
chống lại các tấn công giao thức: SSLtrip, Heartbleed, Ticketbleed, OpenSSL Padding Oracle (CVE-2016-2107), OpenSSL CCS ( CVE-2014-0224),…;
- Chứng thư số được tạo ra phải đảm bảo an toàn cho các giao dịch trên mạng ( cung cấp dịch vụ xác thực, bảo mật, toàn vẹn và chống chối bỏ); được chứng thực vởi CA tin cậy ( DigiCert Inc, Let’s Encrypt…), thuật toán ký số an toàn, hỗ trợ HPKP, HSTS, Perfect Forward Secrecy, OCSP stapling… có khả năng chống lại các tấn công phổ biến: M1TM, Replay attack, SSLStrip….;
34
- Cấu hình ứng dụng sử dụng HPKP (HTTP public key Pinning) để chống lại các tấn công M1TM sử dụng chứng thư số giả mạo;
- Cấu hình ứng dụng sử dụng HSTS giúp đảm bảo rằng kết nối luôn được thực hiện thống qua HTTPS, chống lại tấn công downgrade attack (ví dụ: thiết lập
HSTS header là Strict-Transport- Security; max-age=6307200; includeSubDomain);
- Thiết lập OCSP Stapling; OCSP giúp xác định tính hợp lệ của chứng thư số thời gian thực thay vì phải yêu cầu thông tin từ nhà cung cấp chứng thư.