CA(Certification Authority)란?

CA는 디지털 인증서를 발급하고 관리하는 기관으로 , SSL(Secure Socket Layer) 또는 TLS(Transport Layer Security) 인증서를 이용하여 인터넷 통신의 보안을 강화한다. CA는 웹사이트와 사용자 간의 통신이 안전하게 암호화됨을 보증하고, 사이트의 신뢰도를 인증하는 역할을 한다. 또한 CA는 웹사이트의 공개키와 신원 정보를 포함한 디지털 인증서를 발행하고, 이를 통해 웹사이트의 신뢰성을 사용자에게 보증한다.

 

국내에서는 KISA 전자서명인증관리센터에서 공인인증기관에 대한 관리 업무를 담당하고 있다.

https://www.rootca.or.kr/kor/info/info01.jsp

 

센터소개 | KISA 전자서명인증관리센터

배경 및 목적 전자서명을 안전하고 신뢰성 있게 이용할 수 있는 환경을 조성하고 (구)공인인증기관을 효율적으로 관리하기 위함 법 적 근 거 : (구)전자서명법 제25조 업무개시일 : 1999년 7월 7일

www.rootca.or.kr

 

현재 국내에 전자서명법 4조에 의거 공인인증기관으로 지정된 곳은 총 5곳으로 아래와 같다.

 

 

CA의 문제

Web 은 이제 인터넷과 동의어로 봐도 무방하며, HTTP 기술을 기반으로 하고 있다. 사용자가 많아지다 보니 보안이 중요해져서 보안성을 갖춘 HTTPS 가 점점 많이 쓰이고 있고 google 같은 경우 HTTPS 를 우선적으로 indexing 하고 검색 결과에 노출하고 있다. HTTPS 는 인증서 발급 기관(CA;  Certificate Authority)에 대한 신뢰를 기반으로 하고 있다. 브라우저에 탑재된 CA 를 신뢰하고 신뢰하는 CA 가 발급한 SSL/TLS 인증서(이하 인증서)를 믿고 사이트에 HTTPS 로 접근하게 된다.

브라우저가 탑재된 CA에 등록되지 않은 SSL 인증서가 사용된 사이트에 접근하는 경우 위와 같은 화면으로 이용자에게 경고를 제공한다.

 

인증서 발급은 공개키 기반 구조(PKI; Public Key infrastructure) 에 의해 운영되는데 PKI 는 인증기관(CA)이 하위에 인증 기관(SubCA)을 둘 수 있게 설계되어 있다. 이런 구조는 CA 의 부하를 줄이고 하위 CA 가 특정 지역에서 신원 확인 업무를 대행하여 고객 만족도가 높아지는 등 여러 장점이 있다.

 

하지만 만약 CA 나 하위 CA 가 해킹당하거나, 실수 또는 의도적으로 잘못된 인증서를 발급하게 되면 공격자는 중간자 공격(Man in the Middle Attack)을 하거나 도메인 소유자의 비즈니스에 심각한 피해를 입힐 수 있다. 기존 PKI 체계에서는 CA 가 발급한 인증서 전체 목록을 알기가 어려웠고 이에 따라 특정 도메인에 대한 인증서 발급 여부는 도메인 소유자도 알기가 어려운 문제가 있었다.

 

인증서 투명성(CT, Certificate Transparency) 로그란?

인증서 투명성(이하 CT) 로그는 위와 같은 문제들로 인터넷 보안을 강화하기 위해 구글이 2013에 제안한 문제 해결을 위한 표준으로 CA 나 하위 CA가 발급한 SSL 인증서를 인터넷에 공개된 Database 에 기록하고 공개하고 질의할수 있는 시스템으로 digicert, sectigo 등 많은 CA 들과 facebook, google, apple, cloudflare 등이 참여하고 있는 SSL/TLS 인증서 발급에 대해 감사(auditing)와 모니터링(monitoring)을 위한 표준이다. 이로 인해 SSL/TLS 인증서 발급과 사용에 대한 투명성을 높였으며 인증 기관(CA)의 부적절한 인증서 발급 또는 실수에 대한 감시가 가능해졌다.

 

 

아래 사이트에 따르면 2013년부터 등록된 인증서는 110억개(11,624,127,217, 23/12/31 기준) 이상의 인증서가 기록되었다고 한다.

https://certificate.transparency.dev/

 

Certificate Transparency : Certificate Transparency

Working together to detect maliciously or mistakenly issued certificates. An ecosystem that makes the issuance of website certificates transparent and verifiable. That's where Certificate Transparency comes in.

certificate.transparency.dev

 

인증서 투명성 로그의 목적

  1. 공개적인 감사와 모니터링: 인증서의 발급과 유효성을 공개적으로 감사하고 모니터링함으로써, CA의 신뢰성을 향상시키고 인터넷 사용자의 신뢰를 구축한다.
  2. 악의적인 인증서 발급 방지: 인증서 발급의 투명성을 통해 악의적인 또는 오류에 의한 인증서 발급을 예방하고, 발생 시 빠르게 감지한다.
  3. 도메인 소유자의 권한 강화: 도메인 소유자가 자신의 도메인 이름에 대해 발급된 모든 인증서를 알 수 있게 하여, 인증서의 부적절한 사용을 파악할 수 있도록 한다.

 

인증서 투명성 로그 확인방법

인증서 투명성 로그를 대외적으로 공개하는 프로젝트가 있다. 이러한 CT 로그는 인증기관(CA)에 의해 강제로 수집되는 것은 아니지만 많은 웹 브라우저와 클라이언트가 SSL/TLS 인증서가 CT 로그에 등록되어 있는지 확인하기 때문에 대부분의 인증서 등록 정보를 확인할 수 있다. 국내에서도 SSL 발급기관으로 많이 이용하는 Let's Encrypt에서는 모든 인증서를 CT 로그에 제공하며, 직접 운영하기도 한다. 이와 같은 프로젝트는 아래와 같다.

인증서 투명성(CT) 로그 프로젝트 내용
crt.sh 전세계 최대 규모의 인증서 발급기관(Sectigo)가 운영하는 CT 로그 검색 서비스로 SSL/TLS 인증서를 검색할 수 있는 인터페이스를 제공하며, 사용자는 도메인 이름을 입력하여 해당 도메인의 인증서 기록을 조회할 수 있다.
Google's Transparency Report Google은 사용자가 인증서에 대한 정보를 조회할 수 있는 자체 인증서 투명성 검색 도구를 제공한다.
CertSpotter SSLMate에서 운영하는 인증서 모니터링 서비스로 인증서 발급에 대한 알림을 제공하여, 사용자가 자신의 도메인에 대한 새로운 인증서 발급을 추적할 수 있게 한다.
SSL Observatory Electronic Frontier Foundation(EFF)에서 운영하는 SSL 인증서 분석 프로젝트로 웹사이트의 SSL/TLS 인증서 정보를 확인할 수 있으며, 일부 브라우저는 인증서가 CT 로그에 등록되었는지에 대한 정보도 제공한다.

 

이 중에서 외부에서 CT 로그를 검색하는데 용이한 사이트는 crt.sh가 있으며, 여기에 등록된 인증서 정보를 통해 도메인, 서브도메인을 식별하는데 사용되기도 한다. 특히, 서브도메인 식별 스캐너(amass 등)에서도 이 사이트를 많이 참고한다.

 

 

crt.sh에서 naver.com라는 도메인을 검색하면 naver.com 도메인과 서브 도메인들의 인증서 발급정보(인증서 ID, 생성 일, 만료 일), 발급기관(Let's Encrypt) 등의 정보를 확인할 수 있으며, 동일한 인증서에 묶여있는 서브 도메인의 정보도 확인할 수 있다. 다만 CT로그를 통해서 모든 서브 도메인을 식별할 수 없는 경우도 있다.

 

보안 실무자로서의 활용

보안 실무자는 CT 로그를 다음과 같은 방식으로 활용할 수 있다:

  1. 도메인 모니터링: 자신의 도메인에 대해 발급된 인증서를 추적하여, 의도치 않게 또는 악의적으로 발급된 인증서를 식별할 수 있다.
  2. 안전한 구성: 인증 기관에서 발급된 인증서가 CT 로그에 등록되어 있는지 확인함으로써, 인증서의 합법성과 안전성을 검증할 수 있다.
  3. 사고 대응: 인증서 관련 보안 사고 발생 시, CT 로그를 통해 관련 인증서의 발급 기록과 상세 정보를 조회하여 사고 대응에 활용할 수 있다.
  4. 정책 준수: 조직의 보안 정책이나 규제 요구사항에 따라 인증서의 사용을 감시하고 준수 여부를 확인할 수 있다.

특히, 내/외부로부터의 위협을 관리해야하는 보안담당자의 경우 인프라 자산을 모두 식별해야하나, 권한 분리로 인해 도메인 발급 정보에 직접 접근할 수 없는 경우가 존재한다.(인프라팀이 개발 과정에서 보안팀과 협의없이 서브도메인 등록 등)

 

따라서 인프라팀에서 전달해주는 자산 정보만을 관리하는 것 외에 인증서 투명성 로그를 통해 서브 도메인 및 외부 자산들을 식별하는 방법 중 하나로 채택하는 것도 좋을 것으로 보인다.

 

* 23년 9월 29일 신한카드의 결제 오류는 외부에서 SSL 인증서 만료에 따른 네트워크 통신 오류(네트워크 장비의 트래픽 복호화 실패 등)가 원인일 것으로 추측했으나, 신한카드의 공식적인 답변에서는 아니라고 한다. 만약 인증서 투명성 로그를 통해 인프라 모니터링이 필요한 경우, 인증서 만료일도 같이 체크하면 좋을 것 같다.

https://biz.chosun.com/stock/finance/2023/09/29/4VNHN2L5SJFHXGQR2XK7FI2S7Q/

 

https://www.boannews.com/media/view.asp?idx=122602

 

추석 명절 발생한 신한카드 결제 오류... 원인은 ‘결제 스토리지 서버’ 장애

신한카드에서 지난 9월 29일 시스템 에러 발생으로 일부 서비스 제공이 중단되며 사용자들의 큰 불편이 있었다. 특히, 사고가 발생한 시각은 추석 당일로, 6일간의 연휴 대목을 맞은 때여서 더욱

www.boannews.com

 

복사했습니다!