HTTPS là gì? Mã hóa TLS, Chứng chỉ và Niềm tin

HTTPS là gì? Mã hóa TLS, Chứng chỉ và Niềm tin

API Scraping Universal không có scrap sử dụng các điểm cuối HTTPS cho các yêu cầu và phản hồi dữ liệu web đã xác thực.

Tóm tắt ngắn gọn

  • HTTPS là HTTP qua TLS. Các ngữ nghĩa ứng dụng vẫn là HTTP trong khi TLS bảo vệ giao thông.
  • Mã hóa bảo vệ tính bảo mật trong quá trình truyền tải. Người quan sát không nên có khả năng đọc nội dung yêu cầu và phản hồi thông thường.
  • Tính toàn vẹn phát hiện sự thay đổi. Các bản ghi TLS được xác thực vì vậy lưu lượng thay đổi sẽ bị từ chối.
  • Chứng chỉ liên kết khóa với danh tính. Các khách hàng xác thực máy chủ yêu cầu so với chuỗi chứng chỉ.
  • HTTPS là cần thiết, không đủ. Quyền truy cập, xác thực đầu vào, bảo mật lưu trữ và thiết kế ứng dụng an toàn vẫn quan trọng.

Giới thiệu

HTTPS là HTTP được mang qua một kết nối được bảo vệ bằng TLS. Các phương thức, trường, mã trạng thái và nội dung HTTP vẫn nhận biết, trong khi TLS xác thực máy chủ và bảo vệ các byte chống lại việc đọc thụ động và sự thay đổi không phát hiện trong quá trình truyền tải.

Biểu tượng ổ khóa không chứng nhận rằng một trang web là trung thực, an toàn sau khi kết nối kết thúc, hoặc không có lỗi ứng dụng. Nó nói rằng trình duyệt đã thiết lập một kết nối được mã hóa với một danh tính được chấp nhận cho nguồn yêu cầu theo các quy tắc tin cậy của nó.

Những gì được thiết lập bởi quy trình bắt tay TLS

Trước khi dữ liệu ứng dụng chảy, khách hàng và máy chủ thương lượng các tham số giao thức, đồng ý về các khóa mật mã và xác thực máy chủ bằng chứng chỉ. TLS hiện đại tạo ra các bí mật lưu lượng mới cho kết nối thay vì gửi một khóa mã hóa có thể sử dụng lại qua mạng.

Chỉ số đặc tả TLS 1.3 xác định quy trình bắt tay, bảo vệ bản ghi, và lịch trình khóa. Khi đã thiết lập, kết nối mang các thông điệp HTTP thông thường bên trong các bản ghi mã hóa đã xác thực.

Chứng chỉ và xác thực tên miền

Một chứng chỉ chứa một khóa công khai và thông tin danh tính được ký thông qua một chuỗi mà khách hàng có thể kết nối tới một gốc tin cậy. Khách hàng kiểm tra các ràng buộc hợp lệ, sử dụng khóa được cho phép, chữ ký và xem liệu tên DNS yêu cầu có xuất hiện trong các định danh của chứng chỉ.

Chỉ một chữ ký hợp lệ không đủ. Một chứng chỉ được cấp cho một tên miền phải không xác thực một tên miền khác. Các quy tắc HTTPS trong ngữ nghĩa HTTP đòi hỏi quyền truy cập có thẩm quyền và xác thực chứng chỉ cho nguồn được liên hệ.

Tính bảo mật, Tính toàn vẹn và Xác thực

Tính bảo mật giữ nội dung HTTP thông thường không đọc được đối với người quan sát trên đường đi. Tính toàn vẹn cho phép mỗi điểm cuối phát hiện các bản ghi đã bị thay đổi hoặc giả mạo. Xác thực máy chủ giúp khách hàng xác nhận nguồn nào sở hữu khóa riêng tương ứng với chứng chỉ đã chấp nhận.

Các thuộc tính này hoạt động cùng nhau. Mã hóa mà không có xác thực có thể thiết lập một kênh riêng tư cho một kẻ tấn công. Xác thực mà không có tính toàn vẹn sẽ không bảo vệ các thông điệp sau này. TLS kết hợp chúng cho kết nối, trong khi ứng dụng quyết định ai là người dùng đã đăng nhập và những hành động nào mà người dùng đó có thể thực hiện.

Những gì vẫn hiển thị

HTTPS không che giấu mọi thực tế mạng. Địa chỉ IP, kích thước gói, thời gian và điểm cuối kết nối vẫn có thể quan sát được đối với các phần của mạng. DNS có thể hiển thị trừ khi được bảo vệ riêng. Một proxy ngược hoặc bộ cân bằng tải kết thúc TLS có thể đọc trao đổi HTTP và phải bảo vệ bước tiếp theo.

Trình duyệt cũng phơi bày nguồn cho người dùng qua thanh địa chỉ và trạng thái chứng chỉ, nhưng người dùng không nên coi biểu tượng ổ khóa như một điểm tín nhiệm. Một trang web lừa đảo có thể nhận được chứng chỉ hợp lệ cho miền của riêng nó. HTTPS xác thực quyền kiểm soát của nguồn được đặt tên, không phải sự thật của nội dung của nó.

Bảo mật ứng dụng vẫn áp dụng

TLS không thể sửa chữa lỗ hổng SQL, xác thực bị hỏng, xử lý tệp không an toàn, bí mật lộ ra trong một phản hồi, hoặc JavaScript độc hại được phục vụ bởi trang web đã xác thực. Nó bảo vệ tuyến đường giữa các điểm cuối; nó không đánh giá dữ liệu tại bất kỳ điểm cuối nào.

Các triển khai an toàn sử dụng HTTPS ở mọi nơi, chuyển hướng HTTP thông thường cẩn thận, tránh nội dung hỗn hợp, đánh dấu cookie một cách phù hợp, và áp dụng quyền truy cập nghiêm ngặt. Hướng dẫn bảo mật truyền thông MDN kết nối bảo vệ giao thức với các kiểm soát triển khai trình duyệt.

HTTPS thông qua các proxy và tự động hóa

Các proxy doanh nghiệp, công cụ gỡ lỗi và mạng dịch vụ có thể kết thúc một kết nối TLS và tạo một cái khác. Điều này chỉ an toàn khi khách hàng rõ ràng tin tưởng vào trung gian đó và mỗi bước được vận hành theo chính sách đã định. Các lỗi chứng chỉ nên được điều tra, không bị vô hiệu hóa như một sự thuận tiện.

Các khách hàng tự động cần cùng một kỷ luật như các trình duyệt: xác thực tên miền, sử dụng kho tin cậy hiện tại, bảo vệ thông tin xác thực API, và tránh ghi lại các tiêu đề nhạy cảm. Một trạng thái HTTP thành công không bù đắp cho một kiểm tra danh tính không thành công ở lớp TLS.

Thuộc tínhHTTPS cung cấpHTTPS không cung cấp
Tính bảo mậtMã hóa nội dung HTTP thông thường trong quá trình truyền tảiChe giấu mọi siêu dữ liệu lưu lượng
Tính toàn vẹnPhát hiện các bản ghi TLS đã bị thay đổiXác thực dữ liệu doanh nghiệp
Danh tính máy chủKiểm tra chứng chỉ cho nguồn gốcChứng minh rằng trang web là đáng tin cậy
Danh tính người dùngCó thể mang theo xác thực ứng dụng một cách an toànChọn chính sách ủy quyền
Lưu trữBảo vệ byte trên mạngMã hóa cơ sở dữ liệu hoặc nhật ký
Mã ứng dụngCung cấp mã từ nguồn xác thựcĐảm bảo rằng mã là an toàn

HTTPS là gì? Mã hóa TLS, Chứng chỉ và Kế hoạch Xác thực Tin cậy

HTTPS là HTTP qua TLS. Ngữ nghĩa ứng dụng giữ nguyên là HTTP trong khi TLS bảo vệ việc truyền tải. Xác thực tuyên bố đó qua toàn bộ con đường sản xuất. Bắt đầu với một cuộc trao đổi đại diện nhỏ, ghi lại hành vi đã thỏa thuận tại khách hàng và cửa ngõ, và xác nhận rằng ứng dụng nhận được các trường, khung hoặc sự kiện mà nó mong đợi thông qua cùng một cổng, proxy, điểm kết thúc chứng chỉ và chính sách mạng được sử dụng bởi lưu lượng thực.

Biến giả định thiết kế đầu tiên thành một bài tập thất bại: Phục vụ mọi lộ trình sản xuất qua HTTPS. Sau đó xem xét áp lực tài nguyên xung quanh giả định thứ hai: Sử dụng chứng chỉ hợp lệ cho mọi tên miền đã dự định. Một triển khai đúng đắn nên thất bại trong các giới hạn đã được tài liệu hóa, giải phóng kết nối và trạng thái bộ đệm, và để lại một dấu vết giải thích kết quả mà không tiết lộ thông tin xác thực hoặc dữ liệu riêng tư.

Các trang web công cộng và API Dịch vụ thực hiện các phần khác nhau của thiết kế, vì vậy việc kiểm tra tương thích nên bao gồm cả hai hình dạng lưu lượng nơi chúng có liên quan. Thêm một trình duyệt hiện tại, một khách hàng không phải trình duyệt, một con đường mạng chậm hơn và phương tiện trung gian lâu đời nhất được hỗ trợ. Ghi lại lựa chọn phiên bản, thời gian kết nối, tuổi tin nhắn hoặc phản hồi, chiều sâu hàng đợi và lý do đóng cho con đường ưu tiên và sự dự phòng của nó.

Xem xét ngữ nghĩa và vận chuyển như các lớp riêng biệt trong suốt bài thử nghiệm. Một kết nối thành công không chứng minh rằng ứng dụng đã xử lý đúng thứ tự, ủy quyền, hủy bỏ, bộ nhớ đệm, phát lại hoặc phục hồi trạng thái. Tương tự, một lỗi ứng dụng không chứng minh rằng giao thức đã thương lượng thất bại. Đánh dấu các quan sát với tài nguyên, phạm vi người dùng, thao tác logic, và định danh kết nối, sau đó so sánh những gì mỗi điểm cuối tin là đã xảy ra. Sự tách biệt này làm cho công việc về năng lực trở nên hữu ích hơn: các đội có thể thấy liệu độ trễ đến từ thiết lập kết nối, chuyển giao mạng, xếp hàng, xử lý ứng dụng, tuần tự hóa, hay một người nhận chậm. Giữ nội dung riêng tư ra khỏi giám sát định kỳ trong khi vẫn giữ đủ dữ liệu về thời gian và kết quả để tái tạo quyết định.

Nơi cái gì là HTTPS? Mã hóa TLS, Chứng chỉ và Tin cậy Xuất hiện trong thực tế

Các trang web công cộng

Bảo vệ nội dung trang, cookie, gửi biểu mẫu và cuộc gọi API của trình duyệt trong quá trình truyền tải.

API Dịch vụ

Xác thực điểm cuối dịch vụ và bảo vệ token cũng như payload trên mạng.

Luồng dữ liệu web

Chuyển tiếp các URL mục tiêu, cấu hình và nội dung trả về qua các kết nối API được mã hóa.

Dịch vụ nội bộ

Sử dụng chứng chỉ được quản lý và niềm tin rõ ràng giữa các cổng, tải công việc và nhân viên vận hành.

Cái gì là HTTPS? Mã hóa TLS, Chứng chỉ và Danh sách Kiểm tra Sản xuất Tin cậy

  • Phục vụ mọi lộ trình sản xuất qua HTTPS. Chuyển điểm này thành một bài kiểm tra chấp nhận bằng văn bản để người xem có thể phân biệt được hành vi đã dự định từ một chi tiết thực hiện không mong muốn.
  • Sử dụng chứng chỉ hợp lệ cho mọi tên miền đã dự định. Đặt tên cho thành phần sở hữu cài đặt và người hoặc nhóm phản hồi khi hành vi quan sát của nó thay đổi.
  • Giữ cho chuỗi tín nhiệm của máy chủ đầy đủ. Ghi lại tín hiệu liên quan trong nhật ký hoặc dấu vết, sau đó xác minh rằng tín hiệu tồn tại qua mọi proxy, cổng và ranh giới dịch vụ trong con đường thực tế.
  • Chuyển hướng HTTP mà không phản ánh đầu vào tên miền không an toàn. Kiểm tra quyết định với một trường hợp bình thường, một đồng nghiệp chậm, một kết nối đã đóng, một đầu vào quá kích thước, và sự không tương thích phiên bản hoặc khả năng.
  • Kích hoạt các thuộc tính cookie bảo mật. Tài liệu hóa giá trị mặc định an toàn và điều kiện chính xác cho phép một ngoại lệ; các ngoại lệ ẩn trở thành vấn đề tương tác trong những thay đổi sau này.
  • Xóa nội dung hoạt động hỗn hợp. Kiểm tra hành vi này từ một trình duyệt hoặc khách hàng đại diện thay vì chỉ dựa vào một bài kiểm tra đơn vị địa phương hoặc một màn hình cấu hình phía máy chủ.
  • Bảo vệ các khóa riêng tư với quyền tối thiểu. Đặt giới hạn tài nguyên hữu hạn và làm cho sự từ chối gây ra hiển thị cho cả nhà điều hành và ứng dụng gọi.
  • Giữ các điểm kết thúc TLS trong mô hình mối đe dọa. Bảo tồn đủ định danh để liên kết một cuộc trao đổi logic qua khách hàng, cửa ngõ, ứng dụng, và bất kỳ công nhân không đồng bộ nào.
  • Bảo tồn việc xác minh chứng chỉ trong các khách hàng tự động hóa. Xem xét lựa chọn sau một thay đổi hình dạng lưu lượng vì số lượng kết nối, kích thước payload và tần suất tin nhắn có thể thay đổi thiết kế đúng đắn.
  • Theo dõi thời hạn kiểm tra và đường dẫn gia hạn chứng chỉ. Giữ cho đường dẫn dự phòng có thể quan sát và được kiểm tra để tính tương thích không phụ thuộc vào một đường dẫn cũ đã ngừng hoạt động âm thầm.

Kết luận

HTTPS là HTTP qua TLS. Ngữ nghĩa ứng dụng vẫn là HTTP trong khi TLS bảo vệ việc truyền tải. HTTPS là cần thiết, không đủ. Quyền truy cập, xác thực đầu vào, bảo mật lưu trữ và thiết kế ứng dụng an toàn vẫn rất quan trọng. Áp dụng hai thực tế đó với giới hạn rõ ràng, trạng thái có thể quan sát, và một đường dẫn dự phòng được kiểm tra bởi các khách hàng đại diện thay vì giả định từ cấu hình.

Sẵn sàng để xây dựng một quy trình dữ liệu web đáng tin cậy?

Biến quyết định giao thức thành các quy trình trình duyệt và API có thể quan sát với Scrapeless.

Đăng ký ngay hôm nay và nhận $5 tín dụng miễn phíkhông cần thẻ tín dụng.

Nhận tín dụng $5 của bạn →

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

HTTPS có nghĩa là một trang web an toàn không?

Không. HTTPS bảo vệ kết nối đến nguồn gốc đã nêu; nó không chứng nhận rằng nội dung trang, doanh nghiệp hoặc mã ứng dụng là đáng tin cậy.

Nhà cung cấp internet có thể đọc nội dung trang HTTPS không?

Một nhà cung cấp trên đường đi thông thường có thể quan sát siêu dữ liệu kết nối nhưng không nên có khả năng đọc nội dung HTTP được bảo vệ mà không kiểm soát một điểm cuối TLS đáng tin cậy.

Sự khác biệt giữa SSL và TLS là gì?

TLS là gia đình giao thức hiện tại. SSL đã lỗi thời, mặc dù thuật ngữ chứng chỉ SSL vẫn được sử dụng không chính thức cho các chứng chỉ sử dụng với TLS.

HTTPS có bảo vệ dữ liệu sau khi nó đến máy chủ không?

Không. Máy chủ phải bảo mật dữ liệu đã giải mã trong bộ nhớ, nhật ký, hàng đợi, cơ sở dữ liệu và các dịch vụ hạ nguồn.

Tại sao cảnh báo chứng chỉ lại quan trọng?

Một cảnh báo chứng chỉ có nghĩa là khách hàng không thể thiết lập danh tính hoặc điều kiện tin cậy mong đợi, vì vậy tiếp tục có thể làm lộ phiên làm việc ra sự chặn lại.

Tài liệu tham khảo