ssl_stapling은 어떤 유형의 공격을 수행합니까? NGINX에서 보호

ssl_stapling은 어떤 유형의 공격을 수행합니까? NGINX에서 보호

NGINX에는 다음 두 가지 설정이 있습니다.

ssl_stapling               on;
ssl_stapling_verify        on;

이전에는 작동했지만 OS를 다시 설치한 후에는 작동이 중지되었습니다. 무엇이 문제가 될 수 있는지 궁금합니다. 또한 MITM 유형 시나리오에서 ssl_stapling 및 ssl_stapling_verify는 어떤 유형의 공격으로부터 보호합니까? 무언가로부터 보호하는 공격이 있는 경우 공격의 효과를 완화하려면 어떻게 해야 합니까?

답변1

SSL 스테이플링은 서버 인증서에 대한 해지 정보(예: OCSP 응답)가 서버 인증서와 함께 TLS 핸드셰이크에 포함됨을 의미합니다. 현재는 추가 OCSP 요청이 필요하지 않다는 점에서 트래픽 최적화에 가깝습니다(브라우저에서는 일반적으로 필요하지 않음).

브라우저가 OCSP 응답을 스테이플링하도록 요구하는 경우 이는 보안 기능이 됩니다. 이 경우 일부 MITM이 트래픽을 가로채고 단순히 OCSP 요청/응답을 차단하기 위해 도메인에 대해 해지된 인증서를 사용하는 것을 방지합니다. OCSP 쿼리가 실패하면 브라우저는 종종 포기하므로 ​​이 공격이 성공할 수 있습니다. 하지만 다시 말하지만 대부분의 브라우저는 실제로 더 이상 OCSP를 전혀 사용하지 않고 대신 대체(그리고 훨씬 덜 안정적인) 메커니즘을 사용합니다.브라우저는 해지된 SSL/TLS 인증서를 어떻게 처리합니까?.

OCSP 스테이플링을 사용하기 위한 요구 사항은 인증서 자체의 속성(OCSP-must-staple 확장)일 수 있습니다. 즉, 그러한 인증서가 있지만 OCSP 응답을 스테이플링하지 않은 경우 오류가 발생할 수 있습니다.

답변2

인증서에는 인증서가 취소되었음을 나타내는 CRL 목록이 있습니다. 스테이플링은 이를 수행하는 또 다른 방법입니다. 이 기능을 활성화하면 인증서 발급자도 이 기능을 지원해야 한다고 생각합니다. nginx에서 설정하는 방법을 설명하는 링크를 아래에 첨부했습니다.

https://www.digicert.com/kb/ssl-support/nginx-enable-ocsp-stapling-on-server.htm

지금까지 내가 읽은 바에 따르면, 스테이플링이 MITM을 예방하는 것 같지는 않습니다. 인증서가 유효하고 만료되거나 취소되지 않았는지 확인하는 방식만 변경됩니다.

https://www.digicert.com/kb/enabling-ocsp-stapling.htm

관련 정보