최근 해커들이 WP Super Cache, Akismet, Elementor 같은 인기 워드프레스 플러그인이 생성하는 파일과 이름과 내용이 매우 유사한 악성 파일을 사이트에 은닉하는 사례가 발견되었습니다. 이러한 파일 속 코드는 리디렉션 해킹을 일으키거나, 서버에 알 수 없는 파일을 생성하고, 연락처 페이지나 뉴스레터에 스팸을 발송하며, 최악의 경우 호스팅 업체로부터 사이트가 정지당하는 결과를 초래할 수 있습니다. 이 글에서는 플러그인에 숨겨진 이러한 은닉형 맬웨어의 실체와 제거 방법을 자세히 살펴보겠습니다.
WP Super Cache 플러그인에 숨겨진 맬웨어란 무엇일까요?
WP Super Cache는 200만 개 이상의 활성 설치 수를 기록한, 워드프레스 사용자에게 널리 쓰이는 무료 캐싱 플러그인입니다. 정상적인 경우 이 플러그인은 wp-content/advanced-cache.php 경로에 파일을 생성합니다.
그런데 저희 엔지니어가 최근 정리한 한 사이트(플러그인 버전 1.2 사용)에서 wp-includes/ms-advanced-cache.php라는 의심스러운 파일이 발견되었습니다. 이 파일은 진짜 플러그인 파일인 wp-content/advanced-cache.php와 코드가 매우 흡사합니다.
해커는 이처럼 사이트를 점검·복구하는 사람들을 의도적으로 혼란스럽게 만들려고 합니다. 악성코드가 정상 파일로 위장되어 있기 때문에 대부분의 무료 맬웨어 스캐너도 이를 탐지하지 못합니다. 하지만 자세히 보면 해커가 정상 코드 대부분을 주석 처리해 두었고, 주석 처리되지 않고 실제로 활성화된 유일한 코드가 바로 악성코드입니다.
이 숨겨진 맬웨어는 어떤 피해를 일으킬까요?
플러그인에 숨겨진 이 맬웨어는 해커가 해킹된 사이트 서버의 파일에 악성코드를 기록한 뒤 이를 실행할 수 있게 해줍니다. 즉, 원격 코드 실행(RCE) 취약점과 유사한 방식으로 서버에서 임의의 악성 PHP 스크립트를 구동할 수 있습니다. 더욱 위험한 점은 악성코드가 실행된 직후 즉시 삭제되어 흔적조차 남지 않는다는 것입니다.
사이트가 이 맬웨어에 감염되었을 가능성을 시사하는 징후는 다음과 같습니다:
- 웹사이트 방문자가 스팸 사이트로 리디렉션됨 (워드프레스 리디렉션 해킹)
- 연락처 양식과 뉴스레터 폼에 스팸이 지속적으로 발송됨
- 서버에서 출처를 알 수 없는 파일이 발견됨
- 호스팅 업체로부터 사이트가 정지됨
- 사이트 속도가 현저히 느려짐
사이트에서 이런 은닉형 맬웨어를 발견했다면, 공격에 노출될 수 있는 추가 감염 파일이 더 존재할 가능성이 매우 높습니다. 따라서 가장 좋은 대응은 최대한 빨리 맬웨어를 제거하고 재감염을 예방하는 것입니다.
워드프레스에서 숨겨진 맬웨어를 제거하는 방법
1. 백업을 먼저 진행하세요.
맬웨어 정리 작업을 시작하기 전에 현재 사이트와 데이터베이스 전체를 백업해 두는 것이 좋습니다. 작업 중 문제가 생기더라도 이전 상태로 복원할 수 있기 때문입니다. 백업은 반드시 .zip 파일처럼 압축된 형태로 저장하세요.
2. 감염된 파일을 제거하세요.
이 맬웨어는 플러그인에 숨어 있는 유형이므로, 워드프레스 플러그인 저장소의 원본 버전과 비교해 보는 것부터 시작하는 것이 효과적입니다. 의심스러운 파일이 발견되면 삭제하고, 플러그인 파일 자체를 최신 버전으로 새로 다운로드하여 교체하는 방법도 좋습니다.
3. 웹 서버 전체를 맬웨어 및 악성 파일 검사하세요.
이 단계는 놓친 부분이 없는지 확인하기 위한 과정입니다. 호스팅 업체가 제공하는 cPanel의 '바이러스 스캐너' 도구나 별도의 맬웨어 스캐너를 활용할 수 있으며, Astra의 워드프레스 사이트 클린업 서비스를 통해 확실한 악성코드 제거를 받을 수도 있습니다. SQL 인젝션, 신용카드 정보 탈취 맬웨어, 피싱 공격, 비밀번호 해킹, 플러그인 취약점은 물론 이런 은닉형 맬웨어까지 모든 보안 위협을 찾아 해결해 드립니다.
추가 공격을 예방하는 방법
1. 꾸준히 업데이트하세요.
해커들은 공격 방법을 끊임없이 바꾸기 때문에 사이트를 한 번만 정리하는 것으로는 부족합니다. 개발자들은 이런 취약점을 패치한 업데이트를 수시로 배포하므로, 플러그인을 정기적으로 최신 버전으로 유지하는 것이 가장 빠른 방어책입니다.
2. 정기적으로 맬웨어 검사를 실시하세요.
정기적인 맬웨어 검사 일정을 설정하고, 주기적으로 사이트 보안 감사를 받는 것도 감염 예방에 큰 도움이 됩니다.
3. 방화벽을 사용하세요.
이러한 감염을 막는 가장 효과적인 방법은 방화벽 사용입니다. Astra 같은 웹 애플리케이션 방화벽(WAF)을 설치하면 서버에서 생성·수정·삭제되는 모든 파일을 모니터링하고 맬웨어를 상시 검사합니다. Astra 보안 스위트는 악성 요청이 웹사이트에 닿기 전에 차단함으로써 사이트를 자동으로 보호하고 소프트웨어에 가상 패치를 적용해 줍니다. 덕분에 맬웨어나 해킹 걱정 없이 사이트를 운영할 수 있습니다.
Astra 보안 스위트 소개
Astra는 해커, 인터넷 위협, 봇으로부터 여러분의 사이트를 지켜주는 필수 웹 보안 솔루션입니다. WordPress, OpenCart, Magento 등 주요 CMS로 운영되는 웹사이트에 선제적인 보안을 제공하며, 보안 전문 팀이 연중무휴 24시간 대기하여 궁금한 점에 답변해 드립니다.