Kiểm tra bảo mật - Kiến thức cơ bản về giao thức HTTP

Hiểu giao thức là rất quan trọng để nắm bắt tốt về kiểm tra bảo mật. Bạn sẽ có thể đánh giá cao tầm quan trọng của giao thức khi chúng tôi chặn dữ liệu gói giữa máy chủ web và máy khách.

Giao thức HTTP

Giao thức truyền siêu văn bản (HTTP) là một giao thức cấp ứng dụng dành cho các hệ thống thông tin siêu phương tiện phân tán, cộng tác. Đây là nền tảng cho giao tiếp dữ liệu cho World Wide Web từ năm 1990. HTTP là một giao thức chung và không trạng thái có thể được sử dụng cho các mục đích khác cũng như sử dụng phần mở rộng của các phương thức yêu cầu, mã lỗi và tiêu đề.

Về cơ bản, HTTP là một giao thức truyền thông dựa trên TCP / IP, được sử dụng để cung cấp dữ liệu như tệp HTML, tệp hình ảnh, kết quả truy vấn, v.v. qua web. Nó cung cấp một cách thức chuẩn hóa để các máy tính giao tiếp với nhau. Đặc tả HTTP chỉ định cách dữ liệu được yêu cầu của khách hàng được gửi đến máy chủ và cách máy chủ phản hồi những yêu cầu này.

Tính năng cơ bản

Có ba tính năng cơ bản sau đây làm cho HTTP trở thành một giao thức đơn giản nhưng mạnh mẽ -

  • HTTP is connectionless- Máy khách HTTP, tức là trình duyệt khởi tạo một yêu cầu HTTP. Sau khi đưa ra yêu cầu, máy khách ngắt kết nối với máy chủ và chờ phản hồi. Máy chủ xử lý yêu cầu và thiết lập lại kết nối với máy khách để gửi phản hồi trở lại.

  • HTTP is media independent- Bất kỳ loại dữ liệu nào cũng có thể được gửi bằng HTTP miễn là cả máy khách và máy chủ đều biết cách xử lý nội dung dữ liệu. Điều này là bắt buộc đối với máy khách cũng như máy chủ để chỉ định loại nội dung bằng kiểu MIME thích hợp.

  • HTTP is stateless- HTTP là một kết nối không có kết nối và đây là kết quả trực tiếp rằng HTTP là một giao thức không trạng thái. Máy chủ và máy khách chỉ biết về nhau khi có yêu cầu hiện tại. Sau đó, cả hai người đều quên nhau. Do tính chất này của giao thức, cả máy khách và trình duyệt đều không thể lưu giữ thông tin giữa các yêu cầu khác nhau trên các trang web.

HTTP / 1.0 sử dụng kết nối mới cho mỗi trao đổi yêu cầu / phản hồi trong khi kết nối HTTP / 1.1 có thể được sử dụng cho một hoặc nhiều trao đổi yêu cầu / phản hồi.

Ngành kiến ​​trúc

Sơ đồ sau đây cho thấy một kiến ​​trúc rất cơ bản của một ứng dụng web và mô tả vị trí của HTTP:

Giao thức HTTP là một giao thức yêu cầu / phản hồi dựa trên kiến ​​trúc máy khách / máy chủ nơi trình duyệt web, rô bốt và công cụ tìm kiếm, v.v. hoạt động như máy khách HTTP và máy chủ web hoạt động như một máy chủ.

  • Client - Máy khách HTTP gửi một yêu cầu đến máy chủ dưới dạng phương thức yêu cầu, URI và phiên bản giao thức, theo sau là một thông báo giống MIME chứa các công cụ sửa đổi yêu cầu, thông tin máy khách và nội dung cơ thể có thể có qua kết nối TCP / IP.

  • Server - Máy chủ HTTP phản hồi bằng dòng trạng thái, bao gồm phiên bản giao thức của thông báo và mã thành công hoặc mã lỗi, theo sau là thông báo giống MIME chứa thông tin máy chủ, thông tin meta thực thể và nội dung phần thể thực thể có thể có.

HTTP - Nhược điểm

  • HTTP không phải là một giao thức được bảo mật hoàn toàn.

  • HTTP sử dụng cổng 80 làm cổng mặc định để giao tiếp.

  • HTTP hoạt động ở Lớp ứng dụng. Nó cần tạo nhiều kết nối để truyền dữ liệu, điều này làm tăng chi phí quản lý.

  • Không cần mã hóa / chứng chỉ kỹ thuật số để sử dụng HTTP.

Chi tiết giao thức Http

Để hiểu sâu về Giao thức HTTP, hãy nhấp vào từng liên kết bên dưới.

  • HTTP Parameters

  • HTTP Messages

  • HTTP Requests

  • HTTP Responses

  • HTTP Methods

  • HTTP Status Codes

  • HTTP Header Fields

  • HTTP Security