Làm cách nào để kiểm tra xem chứng chỉ SSL của tôi đã bị thu hồi chưa


23

Phát hiện gần đây về lỗ hổng đau lòng đã khiến các cơ quan cấp chứng chỉ cấp lại chứng chỉ.

Tôi có hai chứng chỉ được tạo trước khi lỗ hổng đau lòng được phát hiện. Sau khi nhà phát hành SSL bảo tôi tạo lại chứng chỉ, tôi đã cập nhật cả máy chủ / tên miền của mình với các chứng chỉ mới.

Nếu sự hiểu biết của tôi là chính xác thì các chứng chỉ cũ sẽ bị CA thu hồi và nên chuyển nó sang CRL (Danh sách thu hồi chứng chỉ) hoặc cơ sở dữ liệu OCSP (Giao thức trạng thái chứng chỉ trực tuyến) nếu không thì về mặt kỹ thuật có thể ai đó thực hiện " người đàn ông trong cuộc tấn công trung gian "bằng cách tạo lại các chứng chỉ từ thông tin nhặt được từ các chứng chỉ bị xâm phạm.

Có cách nào để kiểm tra xem các chứng chỉ cũ của tôi đã được chuyển sang CRL và OCSP chưa. Nếu họ không có cách nào để đưa họ vào?

CẬP NHẬT: Tình huống là tôi đã thay thế các chứng chỉ của mình, tất cả những gì tôi có là các tệp .crt của các chứng chỉ cũ nên việc sử dụng url để kiểm tra là không thực sự có thể.


Bạn có thể kiểm tra bằng certutil tôi tin. Có một đọc ở đây
MichelZ

1
Tôi sử dụng Ubuntu làm máy tính để bàn và Centos trên máy chủ của mình
sridhar pandurangiah

Sau đó, tôi khuyến khích bạn gắn thẻ câu hỏi của bạn như vậy
MichelZ

Tôi khuyên bạn nên đọc phần này cho * nix
MichelZ

@MichelZ - tôi đã gắn thẻ câu hỏi với Ubuntu
sridhar pandurangiah

Câu trả lời:


10

Nhận url ocsp từ chứng chỉ của bạn:

$ openssl x509 -noout -ocsp_uri -in /etc/letsencrypt/archive/31337.it/cert1.pem
http://ocsp.int-x1.letsencrypt.org/
$

Gửi yêu cầu đến máy chủ ocsp để kiểm tra xem chứng chỉ có bị thu hồi hay không:

$ openssl ocsp -issuer /etc/letsencrypt/archive/31337.it/chain4.pem -cert /etc/letsencrypt/archive/31337.it/cert4.pem -text -url http://ocsp.int-x1.letsencrypt.org/ -header "HOST" "ocsp.int-x1.letsencrypt.org"
...
        This Update: Oct 29 10:00:00 2015 GMT
        Next Update: Nov  5 10:00:00 2015 GMT
$

đây là một chứng chỉ tốt

Đây là một chứng nhận bị thu hồi:

$  openssl ocsp -issuer /etc/letsencrypt/archive/31337.it/chain3.pem -cert /etc/letsencrypt/archive/31337.it/cert3.pem -text -url http://ocsp.int-x1.letsencrypt.org/ -header "HOST" "ocsp.int-x1.letsencrypt.org"
...
        This Update: Oct 29 12:00:00 2015 GMT
        Next Update: Nov  5 12:00:00 2015 GMT
        Revocation Time: Oct 29 12:33:57 2015 GMT
$

Điều này hiệu quả với tôi (cảm ơn), nhưng tôi nghĩ rằng tôi cũng sẽ đề cập rằng ngoài Thời gian Thu hồi, tôi cũng hiển thị Lý do Thu hồi, điều này rất hữu ích khi chúng tôi liên hệ với công ty phát hành đang cố gắng tìm hiểu xem chuyện gì đang xảy ra với chứng chỉ
sdek

10

Bạn có thể sử dụng certutil trên Windows:

Nếu bạn có chứng chỉ và muốn xác minh tính hợp lệ của nó, hãy thực hiện lệnh sau:

certutil -f –urlfetch -verify [FilenameOfCertificate]

Ví dụ: sử dụng

certutil -f –urlfetch -verify mycertificatefile.cer

Nguồn / Thông tin thêm: TechNet

Ngoài ra, hãy chắc chắn kiểm tra với CA. Chỉ vì bạn đăng ký lại chứng chỉ / nhận một cái mới, không có nghĩa là họ tự động thu hồi nó!


1
Để cài đặt certutiltrên máy chủ Ubuntu, hãy sử dụng lệnh sudo apt-get install libnss3-tools. Điều này không rõ ràng vì việc tìm kiếm bộ đệm apt-get không trả về kết quả nào cho chuỗi certutil. Tôi biết rằng máy chủ của OP là CentOS, nhưng có thể các quản trị viên Ubuntu Server khác cũng sẽ thấy câu hỏi này hữu ích.
dotancohen

Câu trả lời của tôi hoàn toàn dựa trên Windows . Tôi không biết về bất kỳ triển khai * nix nào về việc này. Xem ở đây để biết giải pháp * nix có thể
MichelZ

2
@dotancohen Mặc dù chương trình đó cũng được gọi certutil, nhưng nó không giống với chương trình certutil.exetrên Windows và không được sử dụng theo cùng một cách.
Dan Getz

1

Bạn có thể sử dụng dịch vụ SSLLabs này để kiểm tra chứng chỉ SSL, nhưng bạn cần có thể truy cập chúng từ web. Ngoài ra, bạn có thể tìm hiểu thêm một số thông tin, vì dịch vụ này cung cấp một số kiểm toán.


Điều này đòi hỏi máy chủ chạy với chứng chỉ cũ. Nhưng đã tạo lại chứng chỉ của tôi, tất cả những gì tôi có là tệp .crt của chứng chỉ cũ.
sridhar pandurangiah

1

Nếu bạn đã thu hồi các chứng chỉ thông qua CA đã tạo ra chúng thì chúng sẽ chuyển sang OCSP và CRL.

Nếu bạn muốn chắc chắn rằng đó là trường hợp, thì vui lòng trích xuất url ocsp từ chứng chỉ và sau đó xây dựng một yêu cầu ocsp đến url đó bao gồm số sê-ri chứng chỉ, nhà phát hành ca chứng nhận và truy xuất phản hồi ocsp và sau đó người ta có thể phân tích nó để kiểm tra và xác nhận rằng nó thực sự bị thu hồi.

Thêm chi tiết tại trang hữu ích này: http://backreference.org/2010/05/09/ocsp-verification-with-openssl/

Lưu ý: điều này yêu cầu sử dụng thư viện openssl.

Edit1: Tôi thấy rằng bạn đã thêm thông tin về OCSP và CRL một cách rõ ràng sau câu trả lời này.

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.