HTTP - Bảo mật
HTTP được sử dụng để liên lạc qua internet, vì vậy các nhà phát triển ứng dụng, nhà cung cấp thông tin và người dùng nên biết các giới hạn bảo mật trong HTTP / 1.1. Cuộc thảo luận này không bao gồm các giải pháp dứt điểm cho các vấn đề được đề cập ở đây nhưng nó đưa ra một số đề xuất để giảm rủi ro bảo mật.
Rò rỉ thông tin cá nhân
Các ứng dụng khách HTTP thường giữ bí mật đối với một lượng lớn thông tin cá nhân như tên, vị trí, địa chỉ thư, mật khẩu, khóa mã hóa, v.v. Vì vậy, bạn nên hết sức cẩn thận để ngăn chặn việc vô tình rò rỉ thông tin này qua giao thức HTTP sang các nguồn khác.
Tất cả các thông tin bí mật phải được lưu trữ tại máy chủ dưới dạng mã hóa.
Tiết lộ phiên bản phần mềm cụ thể của máy chủ có thể cho phép máy chủ trở nên dễ bị tấn công hơn trước các cuộc tấn công chống lại phần mềm được biết là có chứa các lỗ hổng bảo mật.
Các proxy hoạt động như một cổng thông qua tường lửa mạng nên có các biện pháp phòng ngừa đặc biệt liên quan đến việc chuyển thông tin tiêu đề xác định các máy chủ phía sau tường lửa.
Thông tin được gửi trong trường 'Từ' có thể xung đột với lợi ích bảo mật của người dùng hoặc chính sách bảo mật của trang web của họ, và do đó, thông tin đó không được truyền đi nếu người dùng không thể tắt, bật và sửa đổi nội dung của trường.
Khách hàng không nên bao gồm trường tiêu đề Người giới thiệu trong một yêu cầu HTTP (không an toàn), nếu trang giới thiệu được chuyển bằng một giao thức bảo mật.
Tác giả của các dịch vụ sử dụng giao thức HTTP không nên sử dụng biểu mẫu dựa trên GET để gửi dữ liệu nhạy cảm, vì nó sẽ khiến dữ liệu được mã hóa trong URI yêu cầu.
Tấn công dựa trên tên tệp và đường dẫn
Tài liệu nên được hạn chế đối với các tài liệu được trả về bởi các yêu cầu HTTP, chỉ là những tài liệu được dành cho quản trị viên máy chủ.
Ví dụ: UNIX, Microsoft Windows và các hệ điều hành khác sử dụng '..'như một thành phần đường dẫn để chỉ ra một mức thư mục trên mức hiện tại. Trên một hệ thống như vậy, máy chủ HTTP PHẢI không cho phép bất kỳ cấu trúc nào như vậy trong URI yêu cầu, nếu nó sẽ cho phép truy cập vào một tài nguyên bên ngoài những tài nguyên dự định có thể truy cập được thông qua máy chủ HTTP.
Giả mạo DNS
Khách hàng sử dụng HTTP phụ thuộc rất nhiều vào Dịch vụ tên miền và do đó thường dễ bị tấn công bảo mật dựa trên việc cố ý kết hợp sai địa chỉ IP và tên DNS. Vì vậy, khách hàng cần thận trọng trong việc giả định giá trị liên tục của liên kết số IP / tên DNS.
Nếu máy khách HTTP lưu vào bộ nhớ cache các kết quả tra cứu tên máy chủ để đạt được sự cải thiện về hiệu suất, họ phải quan sát thông tin TTL được DNS báo cáo. Nếu máy khách HTTP không tuân theo quy tắc này, chúng có thể bị giả mạo khi địa chỉ IP của máy chủ đã truy cập trước đó thay đổi.
Tiêu đề vị trí và giả mạo
Nếu một máy chủ duy nhất hỗ trợ nhiều tổ chức không tin tưởng lẫn nhau, thì nó PHẢI kiểm tra các giá trị của tiêu đề Vị trí và Nội dung Vị trí trong các phản hồi được tạo dưới sự kiểm soát của các tổ chức nói trên để đảm bảo rằng họ không cố gắng làm mất hiệu lực của tài nguyên. mà họ không có thẩm quyền.
Thông tin xác thực
Các ứng dụng khách HTTP và tác nhân người dùng hiện tại thường lưu giữ thông tin xác thực vô thời hạn. HTTP / 1.1 không cung cấp phương thức để máy chủ hướng khách hàng loại bỏ các thông tin xác thực được lưu trong bộ nhớ cache, đây là một rủi ro bảo mật lớn.
Có một số công việc xoay quanh các phần của vấn đề này, và do đó, bạn nên sử dụng bảo vệ bằng mật khẩu trong trình bảo vệ màn hình, thời gian chờ không hoạt động và các phương pháp khác để giảm thiểu các vấn đề bảo mật vốn có trong vấn đề này.
Proxy và bộ nhớ đệm
Các proxy HTTP là trung gian và đại diện cho cơ hội cho các cuộc tấn công trung gian. Proxy có quyền truy cập vào thông tin liên quan đến bảo mật, thông tin cá nhân về người dùng và tổ chức cá nhân cũng như thông tin độc quyền của người dùng và nhà cung cấp nội dung.
Người điều hành proxy nên bảo vệ hệ thống mà proxy chạy trên đó, vì chúng sẽ bảo vệ bất kỳ hệ thống nào chứa hoặc vận chuyển thông tin nhạy cảm.
Các proxy lưu vào bộ nhớ cache cung cấp thêm các lỗ hổng tiềm ẩn, vì nội dung của bộ nhớ cache là một mục tiêu hấp dẫn để khai thác độc hại. Do đó, nội dung bộ nhớ cache nên được bảo vệ như thông tin nhạy cảm.