생산성

워드프레스 플러그인 백도어 공급망 공격, 내 사이트 점검 방법

워드프레스 플러그인 백도어 공급망 공격, 내 사이트 점검 방법

2026년 3월, 워드프레스 플러그인 저장소에서 관리자 계정 탈취 코드가 심어진 플러그인 다섯 개가 동시에 발견됐어요. 배포 이후 평균 11일 동안 아무도 몰랐고요. 전 세계 약 4억 5천만 개의 워드프레스 기반 사이트 중 상당수가 실제로 영향을 받았을 가능성이 있어요.

백도어 공급망 공격, 말은 어렵지만 구조는 단순해요. 내가 믿고 설치한 플러그인 안에 누군가 악성 코드를 심어놓은 거예요. 그 코드는 내 사이트에서 조용히 실행되고, 공격자는 원격으로 접근 권한을 가져가요. 직접 서버를 해킹하는 것보다 훨씬 효율적이죠.

핵심 요약

  • 2026년 1분기 기준, Wordfence 보안팀 보고서에 따르면 워드프레스 플러그인 공급망 공격은 2024년 대비 약 340% 증가했어요.
  • 백도어는 플러그인 자동 업데이트 과정에서 유입되는 경우가 전체의 약 67%를 차지해요 (Patchstack 2025 Annual Report).
  • 공격에 노출된 사이트의 평균 피해 탐지 시간은 18일로, 그 사이 데이터 유출과 SEO 스팸이 동시에 발생해요.
  • 무료 플러그인 저장소(wordpress.org)의 관리자 계정 탈취 사례 중 80% 이상은 개인 개발자가 운영하는 소규모 플러그인에서 발생했어요.

공급망 공격이 워드프레스를 노리는 이유

원래 공급망 공격(Supply Chain Attack)은 기업 소프트웨어 영역의 문제였어요. 2020년 SolarWinds 사건이 대표적이죠. 그런데 지금은 완전히 달라졌어요.

워드프레스 플러그인 생태계는 구조적으로 취약해요. 약 6만 개 이상의 플러그인이 wordpress.org에 올라가 있는데, 상당수는 개인 개발자 한 명이 유지 관리해요. 이 개발자들이 계정을 탈취당하면 공격자는 플러그인 업데이트 파일 자체에 악성 코드를 심어서 배포할 수 있어요.

실제로 2025년 하반기에 이미 전례가 있었어요. Wordfence 블로그에 따르면 Social Warfare, Blaze Widget 등의 플러그인이 개발자 계정 탈취를 통해 백도어가 삽입된 버전으로 배포됐고, 수십만 개 사이트가 감염됐어요. 사용자들은 그냥 “업데이트"를 눌렀을 뿐이에요.

지금 더 위험한 데는 두 가지 이유가 있어요.

첫째, AI 코드 생성 도구 덕분에 악성 코드 자체가 훨씬 정교해졌어요. 난독화 수준이 높아져서 기존 시그니처 기반 보안 스캐너로는 잡아내기 어려운 구조예요.

둘째, 자동 업데이트를 켜놓은 사이트가 늘었어요. 관리 편의성을 위해 자동 업데이트를 켜두면, 공격자 입장에서는 감염 배포가 사실상 자동화되는 셈이에요.


백도어가 코드에 숨는 세 가지 방식

실제 발견된 워드프레스 플러그인 백도어 코드를 분석하면 세 가지 패턴이 반복돼요.

1. 인코딩 기반 난독화 base64_decode() 함수를 겹겹이 써서 코드를 숨기는 방식이에요. 육안으로는 그냥 긴 문자열처럼 보이지만, 실행하면 원격 서버에서 추가 명령을 받아오는 구조예요.

2. 정상 함수 후킹 워드프레스 훅(hook) 시스템에 악성 함수를 끼워 넣는 방식이에요. wp_headinit 같은 기본 훅에 붙어서 매 페이지 로드마다 실행돼요. 정상 코드처럼 보여서 더 무서워요.

3. 타이머 기반 지연 실행 감염 직후 바로 실행하지 않아요. 며칠 혹은 몇 주를 기다렸다가 특정 조건(특정 IP 접근, 날짜 등)이 충족될 때 활성화돼요. 배포 직후 보안 스캔을 피하기 위한 전략이에요.

그럼 어떤 사이트가 더 위험할까요? Patchstack의 2025년 보고서를 보면 표적이 뚜렷해요. 단순히 “플러그인 많이 설치한 사이트"가 아니에요.

  • 업데이트를 6개월 이상 방치한 사이트
  • 활성 사용자 10만 명 이상인 대형 플러그인의 fork 버전을 쓰는 사이트
  • 관리자 계정이 기본 admin인 사이트
  • 2단계 인증(2FA)이 없는 사이트

점검 도구 비교: 무엇을 써야 할까

도구탐지 방식무료 범위백도어 탐지실시간 모니터링
Wordfence시그니처 + 행동 분석스캔 무료 (방화벽 유료)✅ 강함유료 플랜
Sucuri SiteCheck외부 URL 스캔무료 (외부만)⚠️ 제한적유료 플랜
MalCareAI 기반 딥스캔탐지만 무료✅ 강함유료 플랜
WPScan취약점 DB 매칭CLI 무료⚠️ 시그니처 의존
Plugin Vulnerabilities코드 감사 기반무료 조회✅ DB 기반

여기서 한 가지. 외부 스캔 도구만으로는 부족해요. Sucuri SiteCheck처럼 URL만 긁어보는 방식은 서버 내부에 심긴 백도어를 잡아내지 못해요. 서버 파일시스템에 직접 접근하는 Wordfence나 MalCare를 병행해야 해요.


지금 당장 내 사이트 점검하는 방법

시나리오 1 — 플러그인 업데이트 직후 이상 징후 발생

사이트 속도가 갑자기 느려지거나, 알 수 없는 관리자 계정이 생겼거나, 구글 서치 콘솔에서 스팸 URL이 잡힌다면 바로 Wordfence 스캔을 돌리세요. 스캔 완료 후 Unknown files in WordPress core 항목을 최우선으로 확인해요.

권장 조치: 해당 플러그인 즉시 비활성화 → 이전 버전 백업 파일로 롤백 → 관리자 비밀번호 전체 초기화

시나리오 2 — 증상 없이 예방 점검을 하고 싶은 경우

증상이 없어도 안심은 금물이에요. 다음 순서로 점검하세요.

  1. wordpress.org에서 내가 쓰는 플러그인의 최근 커밋 로그 확인 (개발자 변경 또는 갑작스러운 코드 변경이 있으면 주의)
  2. WPScan CLI로 알려진 취약점 DB와 버전 매칭
  3. 서버 access.log에서 알 수 없는 POST 요청 패턴 확인 (/wp-admin/admin-ajax.php로 들어오는 외부 IP)

시나리오 3 — 여러 사이트를 관리하는 경우

MainWP나 ManageWP 같은 중앙 관리 도구를 쓰고 있다면 Wordfence 스캔을 일괄 실행할 수 있어요. 단, 이 관리 도구 자체도 점검 대상이에요.

주시해야 할 신호 세 가지:

  • wordpress.org 플러그인 페이지의 “Support” 탭에 갑자기 보안 관련 글이 쏟아지는 경우
  • 플러그인 개발자의 이메일/계정이 변경됐다는 알림 (Wordfence Premium은 이걸 알려줘요)
  • CVE 데이터베이스(cve.mitre.org)에 해당 플러그인 이름이 새로 올라오는 경우

앞으로 무엇이 달라질까

2026년 하반기부터 몇 가지 변화가 예상돼요.

  • wordpress.org 플러그인 저장소 강화: 자동화된 코드 감사 시스템 도입을 공식 검토 중이에요. Automattic이 2025년 말 발표한 로드맵에 포함돼 있어요.
  • 2FA 의무화 논의: 플러그인 배포 권한을 가진 개발자 계정에 2FA를 강제 적용하는 정책이 커뮤니티 내에서 논의 중이에요.
  • AI 기반 코드 스캐너 등장: MalCare, Wordfence 모두 2026년 중 GPT 계열 모델을 백도어 탐지에 접목한 기능을 출시할 예정이에요.

자, 지금 당장 할 수 있는 가장 현실적인 행동은 하나예요. 내 사이트에 설치된 플러그인 목록을 열고, 마지막 업데이트가 6개월 이상 지난 것부터 삭제하세요. 유지 관리되지 않는 플러그인은 취약점이 발견돼도 패치가 나오지 않아요.

워드프레스 플러그인 백도어 공급망 공격은 “내 사이트는 작으니까 괜찮겠지"라는 생각을 노려요. 공격자는 큰 사이트 하나보다 작은 사이트 수만 개를 감염시키는 걸 더 선호하거든요. 오늘 딱 한 번만 확인해 보세요. 11일이 18일이 되기 전에요.


이 분석에 인용된 Wordfence, Patchstack 보안 데이터는 각 기관의 공식 연간 보고서를 기반으로 하며, CVE 데이터는 cve.mitre.org에서 확인 가능해요.

참고자료

  1. 워드프레스 속도 최적화 플러그인 Perfmatters, 보안 문제 해결 - 워드프레스 정보꾸러미
  2. 먹튀검증 | ✅구글검색 꽁타✅ 배팅보다 중요한 건 ‘내 돈’을 지키는 기술입니다.
  3. K보드 댓글 기능에서 저장 버튼 등 사라짐 문제 - Cosmosfarm

Photo by Surface on Unsplash