Cloudflare, eMudhra 약한 키 추적: 핸드셰이크 시도 약 2만 2000건, 자사 연결 가로채기 증거는 없어
Cloudflare는 2026년 10월 30일 앞서 공개한 eMudhra 인증기관 사고의 후속 분석을 발표했다. 문제가 된 여덟 개 중간 서명 키는 매우 약해 공개 인증서만으로 누구나 개인 키를 복원할 수 있었다고 한다. 한 키의 값은 예측하기 어려운 115자리 숫자가 아니라 단순히 4였다.
Cloudflare는 2026년 10월 30일 앞서 공개한 eMudhra 인증기관 사고의 후속 분석을 발표했다. 문제가 된 여덟 개 중간 서명 키는 매우 약해 공개 인증서만으로 누구나 개인 키를 복원할 수 있었다고 한다. 한 키의 값은 예측하기 어려운 115자리 숫자가 아니라 단순히 4였다. 이번 분석은 위조 인증서, 시도된 TLS 핸드셰이크, 실제로 확인된 통신 가로채기를 구분한다. 제목의 ‘4 real?’은 질문이지 실제 공격 네 건이 확인됐다는 뜻이 아니다.
Cloudflare는 10월 19일 영향이 큰 자체 시스템부터 수정했다고 밝혔다. 고객 원본 서버로 향하는 외부 연결 대부분을 처리하는 Pingora는 몇 시간 안에 약한 키의 인증서 체인을 거부하도록 바뀌었다. AI를 활용한 코드 분석으로 네 시간 안에 다른 시스템도 찾아 담당자가 영향을 확인하고 우선순위에 따라 고쳤다. 게시 시점에 중요도가 높은 Cloudflare 시스템은 모두 수정됐고, 영향이 낮은 확인된 작업 몇 건이 남아 있었다. 이는 Cloudflare 내부의 진척이지 인터넷의 모든 클라이언트가 업데이트됐다는 증거가 아니다.
Pingora의 관련 기록 기능은 10월 21일 배포를 마쳤다. 그 뒤 일주일 동안 약한 eMudhra 키가 관련된 핸드셰이크 시도 약 2만 2000건을 관찰했다. 약 3분의 2는 업체가 이전에 소개한 시험 사이트에 대한 접근이었다. 나머지 대부분은 원본 서버가 스스로 설정한 듯한 인증서였다. 인증서 검증이 설정된 핸드셰이크는 수정된 시스템에서 모두 거절됐다. 이 수치는 시도 횟수이며 피해자 수, 고유 사이트 수, 성공한 공격 건수가 아니다.
약 160건은 위조 인증서의 SAN에 다른 조직의 도메인이 들어 있었고 요청 SNI와 일치하지 않아 눈에 띄었다. 일부 인증서는 문제가 공개된 뒤 만들어졌고 공인 인증기관이 허용하는 기간보다 오래 유효했다. Cloudflare는 이를 네트워크 중간에 끼어든 증거보다 서버 자체의 기본 인증서에 가까운 것으로 봤다. 이름 불일치라면 호스트명 검증에 실패하고 여러 Cloudflare 위치에서 같은 서버가 동일한 인증서를 보였기 때문이다. 위조 인증서 하나에는 Mozilla 공개 보고 뒤 한 시간도 지나지 않은 10월 20일 18시 19분 UTC가 적혔다. 빠른 위조는 드러나지만 Cloudflare 연결의 가로채기 증거는 아직 없으며, 표적 가로채기 가능성까지 배제하지는 않는다.
방문자가 여전히 손상된 체인을 신뢰하는지 가늠하려고 Cloudflare는 일부 챌린지 페이지에서 두 개의 시험 연결을 보냈다. 일주일간 약 5000만 회의 시험을 얻었다고 한다. 이 표본은 JavaScript를 실행하고 챌린지 페이지를 방문한 클라이언트만 포함하며 확인되지 않은 봇 비중이 크다. 전체 인터넷 사용자의 대표 표본이 아니다. 측정 중 대조 인증서와 인증서 투명성 타임스탬프, G3 교차 서명, 루트 체인이 달라졌다. 무관한 롤백으로 측정이 끊겼다가 10월 27일 재개됐고 대상 비율도 적격 페이지의 1%에서 10%로 늘었다. 그래프의 급변을 곧바로 패치 효과로 읽을 수 없다.
관찰 수치의 차이도 중요하다. 손상된 키를 이용한 핸드셰이크 시도 약 2만 2000건은 고유 공격자의 수가 아니고, 도메인 이름이 요청과 어긋난 약 160건도 실제 중간자 공격의 확정 건수가 아니다. Cloudflare는 일부 서버가 서로 다른 지역의 접속에도 동일한 인증서를 내보낸 사실을 근거로 서버가 직접 놓은 기본 인증서로 보인다고 설명한다. 5000만 회의 방문자 시험은 인증서 체인과 표본 비율이 바뀐 시기를 포함한다. 따라서 특정 그래프의 급격한 변화만으로 업데이트가 성공했다고 해석할 수 없으며, 고객은 자신이 쓰는 제품에 맞는 이전 안내와 신뢰 저장소 업데이트를 확인해야 한다.
이 제한된 표본에서 Cloudflare는 최신 주요 브라우저는 대부분 수정됐으나 오래된 브라우저, 봇, 내장 브라우저가 뒤처졌다고 말한다. Android WebView 시험의 약 30~40%는 여전히 문제가 있는 체인을 수락했다. 큰 네트워크별 그래프에서는 시험의 절반 이상이 체인을 수락했지만 이를 전체 사용자 비율로 확대할 수 없다. 10월 29일 macOS Chrome 150~154를 자칭한 봇 트래픽의 분류 변경은 한 그래프를 패치 성과처럼 보이게 했다. Linux 집단의 감소는 추가 패치와 일치하지만 변하는 표본만으로 전체 인과 효과를 증명하지 못한다. 업체는 관련 제품과 신뢰 저장소를 업데이트하고 더 빠른 인증서 폐기를 추진하자고 제안했다.
Sources
FAQ
핸드셰이크 2만 2000건과 특이 사례 약 160건이 실제 공격 건수를 뜻하나요?
아니다. 약 2만 2000건은 핸드셰이크 시도 횟수이며 약 3분의 2는 시험 사이트였다. 특이한 약 160건은 서버 기본 인증서에 가까워 보인다고 Cloudflare는 설명한다. 자사 연결을 가로챈 증거는 없지만 표적 가로채기를 배제하지도 않는다. 제목의 ‘4 real?’은 확인된 사고 건수가 아니다.
시험 5000만 회가 전체 인터넷 사용자의 패치율을 나타내나요?
아니다. 약 5000만 회의 시험은 선택된 챌린지 페이지에서 JavaScript를 실행한 클라이언트에 한정되고 봇 비중이 크다. 인증서 체인 변경, 측정 공백, 표본 확대도 그래프에 영향을 줬다. Android WebView의 30~40%와 큰 네트워크 수치는 이 시험의 결과이지 전체 인터넷 사용자의 패치율이 아니다.
Cloudflare는 무엇을 고쳤고 관련 사용자는 어떻게 해야 하나요?
Cloudflare는 중요도가 높은 자체 시스템을 고쳤고 Pingora는 10월 19일 몇 시간 안에 약한 키 체인을 거부했다고 한다. 영향이 낮은 작업은 일부 남았다. 관련 고객은 이전 글의 제품별 안내를 따르고 사용자는 관련 소프트웨어와 신뢰 저장소를 갱신해야 한다. 업체 내부 수정이 모든 기기의 안전을 보장하지는 않는다.