TLS/SSL 피닝 정보
일부 애플리케이션이 TLS/SSL 피닝또는 인증서 피닝이라는 기법을 사용하는데 이 기법에서는 원본 서버 인증서 지문이 애플리케이션 자체에 내장됩니다. 따라서 TLS/SSL 규칙을 Decrypt - Resign(암호 해독 - 재서명) 작업으로 구성하는 경우, 애플리케이션이 매니지드 디바이스로부터 재서명된 인증서를 수신할 때 확인이 실패하고 연결이 중단됩니다.
TLS/SSL 피닝이 발생하고 있는지 확인하려면, Facebook 같은 모바일 애플리케이션에 로그인을 시도합니다. 네트워크 연결 오류가 표시되는 경우, 웹 브라우저를 사용하여 로그인 합니다. (예를 들어, Facebook 모바일 애플리케이션에는 로그인이 불가능하더라도 Safari나 Chrome을 사용하여 Facebook에 로그인할 수 있습니다.) Firepower Management Center 연결 이벤트를 TLS/SSL 피닝의 추가 증거로 사용할 수 있습니다.
참고 |
TLS/SSL 피닝은 모바일 애플리케이션에 국한되지 않습니다. |
TLS/SSL 피닝 문제 해결
연결 이벤트를 보고 디바이스에 SSL 피닝이 발생하는지 확인할 수 있습니다. 최소한 연결 이벤트의 테이블 보기에 SSL Flow Flags(SSL 플로우 플래그) 및 SSL Flow Messages(SSL 플로우 메시지) 열을 추가해야 합니다.
시작하기 전에
-
SSL 규칙으로 암호 해독 가능 연결 로깅의 설명에 따라 TLS/SSL 규칙에 대한 로깅을 활성화합니다.
-
Facebook 같은 모바일 애플리케이션에 로그인합니다. 네트워크 연결 오류가 표시되면 Chrome 또는 Safari를 사용하여 Facebook에 로그인합니다. 웹 브라우저를 사용한 로그인은 가능하지만 기본 애플리케이션을 사용한 로그인은 불가능할 경우, 피닝이 발생할 가능성이 높습니다.
프로시저
단계 1 |
아직 하지 않았다면 Firepower Management Center에 로그인합니다. |
단계 2 |
를 클릭합니다. |
단계 3 |
Table View of Connection Events(연결 이벤트 테이블 보기)를 클릭합니다. |
단계 4 |
최소한 SSL Flow Flags(SSL 플로우 플래그) 및 SSL Flow Messages(SSL 플로우 메시지)에 대한 열을 추가하려면 연결 이벤트 테이블에 있는 임의의 열에서 x를 클릭합니다. 다음 예는 SSL Actual Action(SSL 실제 작업), SSL Flow Error(SSL 플로우 오류), SSL Flow Flags(SSL 플로우 플래그), SSL Flow Messages(SSL 플로우 메시지), SSL Policy(SSL 정책), SSL Rule(SSL 규칙) 열을 연결 이벤트 테이블에 추가하는 방법을 보여줍니다. 열은 연결 및 보안 인텔리전스 이벤트 필드에 설명된 순서대로 추가됩니다. |
단계 5 |
Apply(적용)를 클릭합니다. |
단계 6 |
다음 단락에서는 SSL 피닝 동작을 식별하는 방법을 설명합니다. |
단계 7 |
네트워크의 애플리케이션이 SSL 피닝을 사용하는지 확인하려면 TLS/SSL 규칙 지침 및 제한 사항를 참조하십시오. |
다음에 수행할 작업
TLS/SSL 연결 이벤트를 사용하여 다음 중 하나를 찾으면 TLS/SSL 피닝이 발생하는지 확인할 수 있습니다.
-
클라이언트가 서버에서 SERVER_HELLO, SERVER_CERTIFICATE, SERVER_HELLO_DONE 메시지를 수신하는 즉시 SSL ALERT 메시지와 TCP 재설정을 차례로 전송하는 애플리케이션이 다음과 같은 증상을 보입니다. (Unknown CA (48) 알림은 패킷 캡처를 사용하여 볼 수 있습니다.)
-
SSL Flow Flags(SSL 플로우 플래그) 열에 ALERT_SEEN이 표시되지만 APP_DATA_C2S 또는 APP_DATA_S2C는 표시되지 않습니다.
-
SSL Flow Messages(SSL 플로우 메시지) 열에는 일반적으로 CLIENT_HELLO, SERVER_HELLO, SERVER_CERTIFICATE, SERVER_KEY_EXCHANGE, SERVER_HELLO_DONE이 표시됩니다.
-
SSL Flow Error(SSL 플로우 오류) 열에 Success(성공)가 표시됩니다.
-
-
알림을 전송하지 않고 대신 SSL 핸드셰이크가 완료된 후 TCP 재설정을 전송하는 애플리케이션이 다음과 같은 증상을 보입니다.
-
SSL Flow Flags(SSL 플로우 플래그) 열에 ALERT_SEEN, APP_DATA_C2S, or APP_DATA_S2C가 표시되지 않습니다.
-
SSL Flow Messages(SSL 플로우 메시지) 열에는 일반적으로 CLIENT_HELLO, SERVER_HELLO, SERVER_CERTIFICATE, SERVER_KEY_EXCHANGE, SERVER_HELLO_DONE, CLIENT_KEY_EXCHANGE, CLIENT_CHANGE_CIPHER_SPEC, CLIENT_FINISHED,SERVER_CHANGE_CIPHER_SPEC, SERVER_FINISHED가 표시됩니다.
-
SSL Flow Error(SSL 플로우 오류) 열에 Success(성공)가 표시됩니다.
-
알 수 없는 또는 잘못된 인증서 또는 인증 기관 문제 해결
연결 이벤트를 보고 디바이스에 알 수 없는 인증 기관, 잘못된 인증서 또는 알 수 없는 인증서가 있는지 확인할 수 있습니다. TLS/SSL 인증서가 고정된 경우에도 이 절차를 사용할 수 있습니다. 최소한 연결 이벤트의 테이블 보기에 SSL Flow Flags(SSL 플로우 플래그) 및 SSL Flow Messages(SSL 플로우 메시지) 열을 추가해야 합니다.
시작하기 전에
-
TLS/SSL 암호 해독 규칙을 설정합니다.
-
SSL 규칙으로 암호 해독 가능 연결 로깅의 설명에 따라 TLS/SSL 규칙에 대한 로깅을 활성화합니다.
프로시저
단계 1 |
아직 하지 않았다면 Firepower Management Center에 로그인합니다. |
||||||||
단계 2 |
를 클릭합니다. |
||||||||
단계 3 |
Table View of Connection Events(연결 이벤트 테이블 보기)를 클릭합니다. |
||||||||
단계 4 |
최소한 SSL Flow Flags(SSL 플로우 플래그) 및 SSL Flow Messages(SSL 플로우 메시지)에 대한 열을 추가하려면 연결 이벤트 테이블에 있는 임의의 열에서 x를 클릭합니다. 다음 예는 SSL Actual Action(SSL 실제 작업), SSL Flow Error(SSL 플로우 오류), SSL Flow Flags(SSL 플로우 플래그), SSL Flow Messages(SSL 플로우 메시지), SSL Policy(SSL 정책), SSL Rule(SSL 규칙) 열을 연결 이벤트 테이블에 추가하는 방법을 보여줍니다. 열은 연결 및 보안 인텔리전스 이벤트 필드에 설명된 순서대로 추가됩니다. |
||||||||
단계 5 |
Apply(적용)를 클릭합니다. |
||||||||
단계 6 |
다음 표에서는 인증서 또는 인증 기관이 잘못되었거나 누락되었는지 확인할 수 있는 방법에 대해 설명합니다.
|