본문 바로가기
Security & IT terms

[Day 296] SSL 가시성 확보

by minimalist_2022 2021. 6. 1.

SSL 가시성 확보(트래픽 복호화) 필요성

  • 기존 보안 솔루션은 암호화된 트래픽을 분석하여 방어할 수 없기 때문에, SSL을 이용한 공격이 증가하고 있음
  • APT 공격에서 가장 흔히 사용되는 방식이 Drive by download 방식이며, Watering Hole 유형의 기법을 통해 감염된 사이트에 방문과 동시에 악성코드를 다운로드 하도록 하는 방식을 많이 사용
  • 보안 솔루션은 해당 사이트 자체를 미리 인지하여 차단하는 방식을 사용하거나, 실시간으로 해당 사이트의 응답데이터를 분석하여 악성여부를 판단함. 또는 다운로드된 악성 파일을 검사하는 정적 분석 또는 동적 분석을 통하여 파일 자체를 차단하기도 함
  • 최근 공격자들은 악성파일을 감염시키는 과정에서 보안솔루션의 방어를 회피하기 위하여, SSL 로 암호화된 사이트를 이용하는 경우가 증가하고 있으며, 이런 경우 기존의 보안 솔루션으로 방어하는 것이 어려움. 또, 이미 감염된 PC 를 원격으로 제어하거나, 감염된 PC로부터 정보를 유출할 때 노출을 최소화하기 위하여 SSL로 암호화한 통신을 사용하기도 하기도 함

 

SSL 가시성을 제공하는 방식 2가지

A. 네트워크 상에서 인라인으로 설치된 보안 장비(방화벽, IPS, DLP 등)에게 복호화된 트래픽을 전달하는 방식

  1. Client 에서 Server 로 접속하는 SSL 접속을 가시성 장비에서 연결 처리
  2. 가시성 장비에서 복호화한 트래픽을 보안 장비로 전달
  3. 보안 장비에서는 보안 기능 수행 후, 가시성 장비로 트래픽 전달
  4. 가시성 장비는 암호화한 트래픽을 다시 서버로 전달

B. 미러링으로 설치된 보안 장비(IDS, 로그분석 솔루션, 포렌식 솔루션 등)에게 복호화 트래픽을 전달하는 방식

 

트래픽 방향성에 따른 SSL 처리 방식

  • 가시성 장비가 클라이언트의 SSL 접속을 처리하기 위해서는 SSL인증서와 개인키가 필수
  • 인증서/개인키를 처리하는 방식은 크게 두 가지

A. 실제 웹 서버의 인증서/개인키를 추출하여 그대로 등록하는 방식

  • 내부 웹 서버를 보호하기 위해서 가시성 장비를 활용할 때는 실제 웹 서버의 인증서/개인키를 추출하여 등록하는 방식을 사용
  • 웹 애플이케이션 방화벽을 포함한 대부분의 프록시 장비에서 사용하는 방식
  • 가시성 장비가 마치 웹 서버인 것처럼 동일한 인증서/개인키 를 이용하여 SSL 접속을 처리하고, 복호화한 평문 데이터를 보안 솔루션으로 전달

B. 인증서와 개인키를 자동으로 생성하는 방식

  • 인터넷에 있는 불특정 다수의 웹 서버로 접속하는 SSL 통신에 대해서 는 첫 번째 방식 사용 불가
  • SSL 통신을 처리하기 위해서는 인증서와 개인키가 반드시 필요한데, 개인키는 외부에 노출될 경우 모든 보안이 무력화될 수 있기 때문에 공개되지 않음.  인터넷 상에 존재하는 외부 서버의 개인키를 등록하는 것을 불가능
  • 가시성 장비는 인증서와 개인키를 자동으로 생성하는 방식을 사용
  • 가시성 장비에서는 사설 CA(Certificate Authority) 를 설치하고, SSL 트래픽이 발생할 때마다 해당 도메인에 적합한 인증서와 개인키를 자동으로 생성하여, 클라이언트와 SSL 통신을 수행
  • 이 때 생성된 인증서는 신뢰된 인증 기관에서 발행된 것을 아니므로, 클라이언트에서는 인증서 오류 메시지가 발생할 수 있음. 오류 없이 처리하기 위해서는 가시성 장비에서 사용하는 사설 CA 인증서를 클라이언트에 신뢰된 인증 기관으로 등록하는 절차 필요.
  • 사설 CA 인증서를 등록하는 절차는 웹 브라우저에서 몇 번의 클릭을 통해 가능하며, 일반 사용자에게 편의를 제공하기 위해 별도의 프로그램을 한 번 실행하는 것으로 대신하기도 함

 

출처 : AISVA_WHITEPAPER_KR_181030.pdf (monitorapp.com)

 

'Security & IT terms' 카테고리의 다른 글

[Day 308] NDR(Network Detection and Response)  (0) 2021.06.13
[Day 307] CloudOps  (0) 2021.06.12
[Day 294] Cyber Kill Chain  (0) 2021.05.30
[Day 292] Framework, Library  (0) 2021.05.28
[Day 289] Runtime  (0) 2021.05.25