Brevo 공급망 공격, 외부 스크립트와 CDN 운영 점검이 필요하다

inxight

  • 공급망공격
  • 제3자스크립트
  • CDN보안
  • 워드프레스
  • ClickFix

오늘의 핵심

고객 참여 플랫폼 Brevo의 Cloudflare API 키가 탈취돼 고객 사이트에 포함된 자바스크립트까지 악성 코드 전달 경로로 악용됐다. 국내 웹 운영팀도 제3자 스크립트 사용 현황과 워드프레스 변경 기록, CDN 권한 관리를 즉시 점검할 필요가 있다.

확인된 사실

  • 공격자는 탈취한 Brevo의 장기 Cloudflare API 키로 Worker와 라우팅을 구성해 CDN 엣지에서 웹 응답에 악성 스크립트를 삽입했다.

    근거 [1] [2]

  • Brevo가 확인한 전체 영향 시간은 2026년 9월 14일 15:01부터 20:30 UTC까지 약 5시간 29분이었다.

    근거 [1] [2]

  • 악성 스크립트는 일부 방문자에게 명령 실행을 유도하는 ClickFix 화면을 표시했고, 로그인한 WordPress 관리자가 방문한 사이트에서는 플러그인 설치를 시도했다.

    근거 [1] [2]

  • Sansec 조사에 근거한 독립 보도는 Brevo 구성요소를 삽입한 10만 개 이상의 사이트가 잠재적으로 영향을 받았다고 전했다.

    근거 [2]

  • Brevo는 악성 Worker와 관련 자격증명을 제거하고, 장기·광범위 권한 키를 단기·최소권한 토큰으로 교체했다고 밝혔다.

    근거 [1]

왜 중요한가

  • 분석·채팅·폼처럼 여러 사이트에 공통 삽입되는 외부 스크립트 하나가 침해되면 개별 사이트의 배포 과정과 무관하게 피해가 빠르게 확산될 수 있다.

  • 원본 파일이 변경되지 않고 CDN 엣지에서 응답이 변조되면 일반적인 저장소 비교나 파일 무결성 검사만으로는 탐지가 어려울 수 있다.

  • 공격이 종료돼도 비인가 WordPress 플러그인이나 사용자가 실행한 악성 명령의 영향은 서버와 단말에 남을 수 있다.

inxight의 관점

  • 외부 위젯은 단순한 프런트엔드 편의 기능이 아니라 운영 환경에서 실행 권한을 가진 공급망 구성요소로 관리해야 한다.

  • 보안 검증 범위를 애플리케이션 원본과 배포 파일에만 두지 말고 CDN 설정, Worker, DNS, 실제 사용자에게 전달되는 응답까지 확장해야 한다.

  • 마케팅·고객지원 도구 도입 절차에 스크립트 목록, 담당자, 긴급 비활성화 방법과 사고 통지 경로를 함께 기록해야 대응 시간을 줄일 수 있다.

실무 체크리스트

  • Brevo의 SDK·Conversations 위젯·폼을 사용했는지 자산 목록과 태그 관리 시스템에서 확인하고, 9월 14일 해당 스크립트를 로드한 사이트와 시간대를 식별한다.
  • 영향 가능성이 있는 WordPress 사이트에서 9월 14일 설치·활성화된 플러그인과 관련 관리자 요청 기록을 조사하고 비인가 변경을 격리한다.
  • 가짜 Cloudflare 확인 화면에서 명령을 실행한 사용자나 운영자가 있다면 해당 단말을 격리해 전체 검사를 수행하고 사용한 자격증명을 교체한다.
  • CDN·DNS·엣지 Worker용 키를 저장소에서 제거하고 최소권한·단기 토큰과 자동 순환을 적용하며 설정 변경 로그에 경보를 건다.
  • 중요 외부 스크립트에는 가능한 경우 CSP와 Subresource Integrity를 적용하고, 외부 관측 지점에서 실제 응답 변조를 감시한다.