Do trình duyệt web lưu trữ chứng chỉ SSL?


26

Có trình duyệt web nào lưu chứng chỉ máy chủ SSL không? Ví dụ: nếu tôi thay đổi chứng chỉ SSL trên máy chủ web, tất cả các trình duyệt web sẽ nhận chứng chỉ mới khi chúng kết nối qua SSL, hoặc có khả năng chúng có chứng chỉ cũ không?

Tôi đang nghĩ đến kịch bản khi chứng chỉ SSL hết hạn và được thay thế bằng một chứng chỉ mới trên máy chủ web.


Tôi sẽ giả sử trình duyệt kiểm tra ngày trên chứng chỉ để xem liệu nó có cần lấy một cái mới hơn không, giống như nó làm cho mọi thứ khác nhưng không chắc chắn.
soandos

Có một cái nhìn ở đây imperialviolet.org/2011/05/04/pinning.html về "Giấy chứng nhận ghim" và theo sáng kiến HSTS whis có liên quan đến cựu dev.chromium.org/sts
Shadok

1
Kể từ năm 2019, Chrome 75 của tôi đang lưu trữ chứng chỉ SSL
Fabian Thommen

Câu trả lời:


10

Vâng, câu trả lời của RedGrittyBrick là chính xác, nhưng không thực sự trả lời câu hỏi. Câu hỏi là, nếu các trình duyệt làm điều đó, không phải nếu họ nên hoặc cần phải làm điều đó.

Từ những gì tôi đã nghe, cả MSIE và Chrome thực sự đều có chứng chỉ bộ nhớ cache và không thay thế chúng khi chúng có phiên bản mới miễn là phiên bản cũ hợp lệ. Tại sao họ làm điều này không phải để tôi hiểu, vì nó làm giảm tính bảo mật.


Câu trả lời hiện đang được chấp nhận là khá rõ ràng. Nó đặc biệt chỉ ra rằng, không , trình duyệt không lưu trữ chứng chỉ. Khi bạn chỉ ra cảnh quan đã thay đổi, những lý do Chrome thực hiện, được ghi lại rõ ràng sẽ rất tốt để bạn liên kết với những lý do đó. Vì chứng chỉ vẫn còn hiệu lực nên nó không "hạ thấp" bảo mật sẽ không có ý nghĩa.
Ramhound

3
Nó hạ thấp nó xuống, bởi vì bạn không thể thay thế khóa SHA-1 cũ bằng khóa mới hơn, bởi vì khóa cũ vẫn còn hiệu lực và Chrome bỏ qua khóa mới, nếu tôi hiểu đúng mọi thứ. Vì vậy, không có cách nào để thực thi chuyển đổi sang tiêu chuẩn bảo mật cao hơn - vì vậy nó "hạ thấp" theo nghĩa tương đối bằng cách không cho phép đẩy nó lên cao hơn. Giống như lạm phát không làm giảm giá trị tiền được chỉ định của bạn, nhưng giá trị thị trường thực tế của nó.
tuexss

5
+1 Sau khi fiasco chuỗi khởi động hỗn hợp SHSS1 / SHA2 , rõ ràng Chrome trên Windows thực sự đang lưu trữ các certs trung gian, có thể là vô thời hạn. Chrome sẽ bỏ qua mọi chứng chỉ trung gian mới được gửi bởi máy chủ. Không rõ mặc dù bộ nhớ đệm được khóa bởi danh tính của chứng chỉ máy chủ hoặc danh tính của chứng chỉ trung gian và chính xác cấu thành danh tính đó.
Robert Važan

3
gặp sự cố ngày hôm nay, cả chrome và firefox hiển thị các chứng chỉ khác nhau trong cửa sổ bình thường (chứng chỉ cũ) và chế độ ẩn danh (chính xác). Các tiện ích dòng lệnh như curl hoặc openssl báo cáo chứng chỉ đúng của khóa học. Đã sửa lỗi bằng cách xóa bộ nhớ cache của trình duyệt (ctrl + shift + del) - "cookie và dữ liệu trang web khác" cho chrome và "dữ liệu trang web ngoại tuyến" cho firefox.
anilech

1
Ít nhất là phiên bản hiện tại của Firefox (66.0) trên OSX dường như giữ bộ nhớ cache khá mạnh. Hôm qua tôi đã cập nhật chứng chỉ TLS cho trang web của mình và cả CLI opensslvà Chromium đều hiển thị cho tôi chứng chỉ mới. Firefox chỉ cho tôi cái cũ mặc dù tải lại với bộ đệm bị vô hiệu hóa, xóa tất cả bộ nhớ cache và dữ liệu ngoại tuyến và khởi động lại trình duyệt.
Tad Lispy

20

Không. Xem tổng quan về SSL của IBM

  1. Ứng dụng khách SSL gửi thông báo "lời chào của khách hàng" liệt kê thông tin mật mã, chẳng hạn như phiên bản SSL và, theo thứ tự ưu tiên của máy khách, CodesSuites được máy khách hỗ trợ. Thông báo cũng chứa một chuỗi byte ngẫu nhiên được sử dụng trong các tính toán tiếp theo. Giao thức SSL cho phép "ứng dụng khách xin chào" bao gồm các phương thức nén dữ liệu được máy khách hỗ trợ, nhưng các triển khai SSL hiện tại thường không bao gồm quy định này.

  2. Máy chủ SSL phản hồi với thông báo "máy chủ xin chào" có chứa CodesSuite được máy chủ chọn từ danh sách do máy khách SSL cung cấp, ID phiên và một chuỗi byte ngẫu nhiên khác. Máy chủ SSL cũng gửi chứng chỉ kỹ thuật số của nó . Nếu máy chủ yêu cầu chứng chỉ kỹ thuật số để xác thực ứng dụng khách, máy chủ sẽ gửi "yêu cầu chứng chỉ ứng dụng khách" bao gồm danh sách các loại chứng chỉ được hỗ trợ và Tên phân biệt của Cơ quan chứng nhận (CA).

  3. Máy khách SSL xác minh chữ ký số trên chứng chỉ kỹ thuật số của máy chủ SSL và kiểm tra xem CodesSuite được máy chủ chọn có chấp nhận được không.

Giáo dục

Tóm tắt của Microsoft cũng tương tự. Cái bắt tay TLS cũng tương tự về vấn đề này.

Ở bước 2 dường như không có cách nào để khách hàng nói "đừng bận tâm gửi chứng chỉ máy chủ, tôi sẽ sử dụng bộ đệm của tôi".

Lưu ý rằng có một số loại chứng chỉ, máy khách, máy chủ và CA. Một số trong số này được lưu trữ.


Sửa đổi câu hỏi ban đầu để làm rõ rằng đó là một chứng chỉ máy chủ.
Lorin Hochstein

Điều này không đúng và giả sử không có bộ đệm vì tổng quan về cách SSL hoạt động loại trừ bộ đệm là một biện minh khá tệ. youtube.com/watch?v=wMFPe-DwULM
Evan Carroll

Bộ đệm duy nhất có thể được sử dụng là để kiểm tra tính hợp lệ, mặc dù đó là một sự đánh đổi bảo mật.
Daniel B

0

Tôi không chắc liệu đầu vào của mình có giúp được gì không, nhưng đây là những gì tôi vừa trải nghiệm: Tôi đã có một trang web ở phương vị với một miền tùy chỉnh. Tôi đã thử truy cập nó bằng https trong các sắc độ trước khi định cấu hình ràng buộc SSL cho tên miền của mình. Chrome đã nói với tôi rằng trang web không được bảo mật, điều này hoàn toàn có ý nghĩa (ERR_CERT_COMMON_NAME_INVALID) Nhưng sau khi tôi tải lên chứng chỉ của mình và định cấu hình ràng buộc SSL trong phương tiện, tôi vẫn gặp lỗi tương tự. Ở giai đoạn này, khi mở một cửa sổ trình duyệt riêng mới (hoặc sử dụng trình duyệt khác), https đã hoạt động tốt.

Nhưng tôi không bao giờ có thể làm cho nó hoạt động trong phiên Chrome mở của mình. Tôi đã thử trạng thái SSL rõ ràng, kết quả tương tự. Nó hoạt động sau khi khởi động lại chrome hoàn toàn.

Tôi có lẽ đã bị lừa bởi một cái gì đó nhưng nó gần như là chứng chỉ được lưu trữ ...


Lỗi đó có nghĩa là bạn đã truy cập trang web bằng URI khác với những gì có trong CN. Bạn đã thực sự thay đổi URI để truy cập trang web bằng chrome sau khi bạn thiết lập liên kết?
Seth

Không, điều duy nhất tôi thay đổi vào thời điểm đó là sự ràng buộc. Khi tôi lần đầu tiên truy vấn https, nó đã được phục vụ bằng chứng nhận ssl azure mặc định nhưng nó vẫn phục vụ cho tôi cái này sau khi tôi thay đổi liên kết với chứng chỉ chính xác trong Azure.
Etienne

Như bạn đã nói bạn đã cấu hình ràng buộc SSL miền của mình, điều đó có nghĩa là bạn đã truy cập máy chủ bằng cách sử dụng tên miền của mình từ lúc khởi hành hay không? Lỗi sẽ chỉ ra rằng có một sự khác biệt giữa URL bạn đã sử dụng và URL mà chứng chỉ dành cho. Ý tôi là thế Ngoài ra, cấu hình máy chủ thực tế của bạn có thể có vấn đề khá nhiều nếu bạn nghĩ về HSTS và như vậy.
Seth

1
Bước 1: xuất bản trang web để azure. Ở giai đoạn này, nó có cả URL azure mặc định và chứng chỉ mặc định. Bước 2: thiết lập tên miền tùy chỉnh cho ứng dụng web, bây giờ mysite.com trỏ chính xác đến trang web. Chứng chỉ SSL cho mysite.com không được cấu hình ở giai đoạn này. Bước 3: Tại thời điểm này, khi thử https trang web, tôi gặp lỗi bảo mật nói rằng chứng chỉ không khớp (và nó hoàn toàn hợp lý) Bước 4: Tôi cài đặt chứng chỉ SSL cho Mysite.com ở phương vị và VẪN cảnh báo bảo mật bật lên từ Chrome. Nó KHÔNG xảy ra trong bất kỳ trình duyệt nào khác hoặc nếu tôi mở một điều hướng riêng.
Etienne

1
Bước 5: Tôi khởi động lại Chrome và bây giờ (và chỉ bây giờ) là trang web của tôi được phục vụ bằng chứng chỉ SSL chính xác. Do đó, kết luận của tôi là thực sự có vấn đề về bộ nhớ đệm của chứng chỉ
Etienne

-1

Có kế hoạch của một số nhà phát triển trình duyệt để thực hiện một hệ thống chaching như vậy để phát hiện các cuộc tấn công như cuộc tấn công vào Diginotar vào năm 2011.

Nhưng hiện tại AFAIK không có hệ thống nào như vậy hoạt động trong các trình duyệt hiện tại. Do đó, bạn không phải suy nghĩ về tình huống này khi cập nhật chứng chỉ máy chủ của mình.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.