1년 뒤의 미래를 상상해 보세요. 수익은 두 배로 늘고, 사랑하는 사람들과 보내는 시간도 많아질 것입니다.
그런데 문제가 하나 있습니다. 사이트가 자꾸만 해킹당하는 것입니다. 청소하는 데 몇 시간씩 소모되고, 그 비용 또한 만만치 않습니다.
해킹에 대한 두려움 속에서 사는 사람은 없습니다. 같은 문제를 반복해서 해결하느라 매달 수십만 원을 지출하고 싶어 하는 사람도 더더욱 없겠죠.
바로 그래서 우리가 이 일을 하고 있습니다.
실제로 여러 번 악성코드를 제거했음에도 불구하고 계속해서 재해킹을 당하는 웹사이트를 운영하던 고객이 수백 명에 달했습니다.
저희는 웹사이트 백도어(Backdoor)에 대한 근본적인 해결책을 제공합니다.
이 글에서 다룰 내용은 다음과 같습니다.
- 백도어가 사이트에 심기는 이유
- 해커들이 백도어를 설치하는 방식
- 백도어 제거 방법
- 백도어 감염으로부터 사이트를 보호하는 방법
그럼 시작하겠습니다.
웹사이트 백도어란 무엇인가?
백도어는 숨겨진 출입구로, 그 존재를 아는 사람이라면 누구든 웹사이트에 제한 없이 접근할 수 있게 해주는 통로입니다.
그렇다면 내 사이트에 백도어가 있는지 어떻게 알 수 있을까요?
간단합니다. 사이트를 여러 번 정리해도 계속 해킹당한다면 백도어가 있다는 신호입니다.
왜 백도어는 탐지하기 어려울까요? 어차피 다른 악성코드와 비슷하지 않나요?
백도어는 특별합니다. 웹사이트 안에 아주 교묘하게 숨겨져 있는 은밀한 존재이기 때문입니다. 건초 더미에서 바늘 찾기에 비유할 수 있습니다.

백도어는 일반 코드와 혼동되기 쉽도록 정교하게 설계되어 있으며, 웹사이트 어디에든 숨겨질 수 있습니다.
대부분의 보안 플러그인은 구식 기술에 의존하기 때문에 백도어를 식별하지 못합니다. 그 결과 스캔과 클린업 과정에서 백도어는 그대로 살아남습니다.
탐지되지 않은 백도어는 원인 불명의 질병과 같습니다. 병을 진단하지 못하면 환자는 고통받고 쇠약해지며, 최악의 경우 목숨을 잃을 수도 있습니다. 마찬가지로 발견되지 않은 백도어는 웹사이트를 서서히 파괴합니다.
백도어 감염이 사이트에 미치는 영향
백도어 감염은 웹사이트에 심각한 피해를 일으킵니다. 다음과 같은 문제가 발생할 가능성이 매우 높습니다.
- 방문자가 악성 사이트로 리디렉션되어 트래픽을 잃습니다.
- 여러 페이지에 수상한 팝업이 나타나 방문자에게 프로그램 다운로드를 유도합니다.
- 사용자들에게 스팸 메일을 대량 발송합니다.

- 해커가 불법 영화나 TV 프로그램, 소프트웨어 등을 서버에 저장하여 사이트 속도가 크게 느려집니다.
- 해커가 신용카드 정보나 진료 기록 등을 탈취해 온라인에서 판매할 수 있습니다.
- 광고 영역을 납치해 자신들의 광고를 게시하고, 방문자의 클릭으로 수익을 얻습니다.

- 사이트가 느려지고 트래픽이 새어 나가며 스팸 키워드로 검색 결과가 조작되면서 SEO 순위가 하락합니다.
- 검색 엔진과 호스팅 업체가 해킹 사실을 알게 되면 사이트가 블랙리스트에 올라 서비스가 중단되고, 광고 계정 역시 정지됩니다.

이런 일들을 예방하려면 사이트에서 백도어를 반드시 제거해야 합니다.
백도어를 한 번에 확실하게 제거하는 방법
a) 웹사이트에 말케어(MalCare) 보안 스캐너를 설치합니다.
b) 워드프레스 관리자 페이지에서 메뉴의 'MalCare' 항목을 선택합니다.
c) 이메일 주소를 입력하고 'Secure Site Now' 버튼을 클릭합니다.

d) 말케어가 비밀번호 설정과 사이트 등록을 요청합니다.
이후 플러그인이 자동으로 사이트 스캔을 시작하며, 백도어 탐지에는 몇 분 정도 걸립니다.
스캔이 완료되면 말케어가 사이트에서 발견된 악성 파일을 알려줍니다.

e) 즉시 사이트를 정리해야 합니다. 말케어 대시보드의 보안(Security) 섹션에서 'Auto-Clean' 버튼을 찾아 클릭하면 자동 청소가 시작됩니다.
(참고: Auto-Clean은 단일 사이트 기준 연 99달러의 유료 프리미엄 기능이며, 라이선스는 1년마다 갱신할 수 있습니다.)

말케어는 1분 이내에 사이트에서 백도어의 모든 흔적을 제거합니다.

말케어 외에도 백도어를 탐지하고 제거할 수 있는 보안 플러그인은 다양합니다. 추천 목록은 '최고의 워드프레스 보안 플러그인' 글을 참고하세요.
웹사이트를 백도어로부터 보호하는 방법
백도어는 해커가 사이트에 접근할 수 있을 때만 심어질 수 있습니다.
따라서 백도어 감염을 막으려면 다음 두 가지가 필요합니다.
- 첫째, 워드프레스 사이트를 해커와 봇으로부터 보호합니다.
- 둘째, 만약 침입을 허용했다 하더라도 백도어 삽입 자체를 차단합니다.
이를 위해 아래 지침을 따르세요.
1. 해커와 봇으로부터 사이트 보호하기
① 방화벽 사용
방화벽은 웹사이트와 외부 트래픽 사이에 장벽을 만듭니다.
사이트에 접속을 시도하는 모든 사용자는 먼저 방화벽의 검증을 받습니다. 방화벽은 해당 IP 주소가 과거에 악성으로 분류된 적이 있는지 확인하고, 위험하다고 판단되면 접속을 차단합니다.
이렇게 하면 해커가 사이트에 접근하기 전에 공격 자체를 막을 수 있습니다.
② 웹사이트 항상 최신 상태 유지
워드프레스 코어, 플러그인, 테마는 어떤 소프트웨어든 시간이 지나면 취약점이 발견됩니다.
개발자들은 취약점을 발견하면 빠르게 업데이트를 통해 패치를 배포합니다.

업데이트를 미루거나 적용하지 않으면 사이트는 취약한 상태로 노출되고, 해커는 이를 악용해 침입합니다.
꾸준한 업데이트만이 웹사이트 보안의 기본입니다. 업데이트가 어렵다면 '워드프레스 업데이트 방법' 가이드를 참고하세요.
③ 불법 복제 플러그인·테마 사용 금지
불법 복제 플러그인과 테마는 유료 프로그램을 돈 없이 쓸 수 있게 해주지만, 그 대가가 따릅니다.
불법 소프트웨어에는 백도어가 심어져 있는 경우가 대부분입니다. 이를 설치하는 순간, 본인도 모르게 해커에게 사이트 접근 권한을 넘겨주는 셈입니다.
생각해 보세요. 숨은 의도 없이 누가 굳이 유료 소프트웨어를 무료로 배포하겠습니까?
불법 복제물은 절대 사용하지 말고, 이미 설치되어 있다면 즉시 삭제하세요. 그리고 현재 사용 중인 테마와 플러그인도 정기적으로 악성코드 검사를 받는 것이 좋습니다.
④ 로그인 페이지 보호
플러그인과 테마 다음으로 취약한 지점은 로그인 페이지입니다.
로그인 페이지는 사이트에서 가장 공격받기 쉬운 곳입니다. 해커는 아이디와 비밀번호를 무작위로 대입하는 봇을 활용하는데, 봇은 1분 안에 수백 가지 조합을 시도할 수 있으며 정답을 찾을 때까지 멈추지 않습니다. 이를 무차별 대입 공격(Brute Force Attack)이라고 합니다.
추측하기 어려운 강력한 아이디와 비밀번호를 사용하는 것, 그리고 CAPTCHA(캡차) 인증을 적용하는 것이 대표적인 대응책입니다.
백도어 탐지와 제거에 말케어를 사용 중이라면 안심해도 됩니다. 말케어는 이미 캡차로 로그인 페이지를 보호하고 있습니다.

로그인 페이지 보안을 더 강화하고 싶다면 '워드프레스 로그인 보안' 가이드를 참고하세요.
2. 백도어 삽입 자체를 차단하기
아무리 대비해도 결국 해킹당할 수 있습니다.
예를 들어 플러그인에 취약점이 발견되었는데 개발자가 패치를 배포하기까지 며칠이 걸린다면, 그 사이에 사이트가 해킹당할 수 있습니다.
이런 상황에도 대비하는 것이 현명합니다. 해커가 백도어를 심지 못하도록 다음 방법을 실천하세요.
① 웹사이트 하드닝(Hardening)
다음과 같은 사이트 강화 조치를 적용해야 합니다.
→ 플러그인·테마 설치 차단
해커는 백도어를 위장해 사이트 소유자가 알아채기 어렵게 만듭니다.
수상한 플러그인이나 테마를 통해 백도어가 들어올 수 있으며, 플러그인을 많이 쓰는 사이트일수록 감염된 새 플러그인이 설치돼도 아무도 눈치채지 못합니다.
하지만 사이트에서 플러그인과 테마 설치 자체를 차단할 수 있습니다.
중요: 직접 설정하려면 코드 조각을 수동으로 삽입해야 합니다. 워드프레스 내부 구조에 익숙하지 않다면 위험할 수 있으며, 작은 실수 하나로 사이트 전체가 깨질 수 있습니다.
말케어가 설치되어 있다면 버튼 클릭 한 번으로 플러그인과 테마 설치를 차단할 수 있습니다.

→ 파일 에디터 비활성화
해커는 불법 플러그인 설치 외에도 기존에 설치된 플러그인이나 테마에 백도어를 삽입할 수 있습니다.
관리자 권한이 있는 사람이라면 누구나 '테마(THEME)' → '테마 편집기'에 들어가 악성코드를 넣을 수 있습니다.
관련 가이드를 따라 워드프레스 대시보드에서 플러그인·테마 편집기를 비활성화하세요. 말케어를 사용하면 사이트가 깨질 걱정 없이 파일 에디터를 끌 수 있습니다.
버튼 하나만 클릭하면 끝입니다.

추가 하드닝 방법은 '워드프레스 하드닝 가이드'를 참고하세요.
② 최소 권한 원칙 적용
워드프레스에 백도어를 심는 방법 중 하나는 플러그인·테마 편집기를 이용하는 것이며, 편집 권한을 가지려면 관리자급 사용자여야 합니다.
이는 관리자 권한을 누구에게 줄지 신중하게 선택해야 함을 보여줍니다.
워드프레스는 6가지 사용자 역할을 제공합니다.
- 슈퍼 관리자(멀티사이트 전용)
- 관리자
- 편집자
- 기여자
- 작성자
- 구독자
누군가에게 사이트 접근 권한을 주기 전에 어떤 역할을 부여할지 반드시 고민하세요.
- 신뢰할 수 없는 사람에게는 낮은 권한의 역할을 부여합니다.
- 글 발행이나 댓글 관리 등이 필요한 사람은 편집자로 지정합니다.
- 관리자 역할은 2~3명으로 제한하는 것이 좋습니다.
자세한 내용은 '워드프레스 사용자 역할과 권한' 문서를 참고하세요.
③ 검증된 개발자 활용
개발자에게 작업을 맡기려면 사이트 전체 접근 권한을 줘야 합니다. 즉, 프로젝트가 끝난 뒤에도 몰래 접속할 수 있는 백도어를 심지 않을 믿음직한 개발자를 찾아야 합니다.
실력 있는 개발자를 찾는 일은 길고 지루한 과정이 될 수 있습니다. 개발자를 꼼꼼히 검증해 주는 플랫폼을 이용하는 것이 좋습니다. 신뢰할 만한 곳은 다음과 같습니다.
- WordPress Jobs
- Smashing Jobs
- Codeable.io
- WPMU Dev Pros
- Stack Overflow Careers
위에서 소개한 조치들을 실천하면 해커가 사이트에 백도어를 심는 것을 효과적으로 막을 수 있습니다.
백도어의 종류
우리는 거의 10년 가까이 백도어를 연구해 왔으며, 다양한 유형의 백도어를 접해 왔습니다. 공통점은 모두 탐지가 어렵다는 것입니다.
백도어는 단순형, 복잡형, CMS 특화형으로 분류할 수 있습니다.
단순형 백도어: 겉보기에는 무해해 보이는 한 줄짜리 짧은 코드로, 식별이 매우 어렵습니다.

복잡형 백도어: 여러 줄로 된 코드로, 훈련된 눈에는 비교적 잘 드러납니다. 다만 해커가 코드를 난독화하면 악성코드 스캐너조차 탐지하기 어려워집니다.

CMS 특화형 백도어: 해커가 CMS(콘텐츠 관리 시스템)에 맞춰 코드를 작성한 유형입니다. 워드프레스에만 존재하는 내장형 백도어로, 줄라(Joomla)나 드루팔(Drupal) 같은 다른 플랫폼에서는 발견되지 않습니다.
이제 무엇을 해야 할까?
워드프레스가 한 번 해킹당하는 것도 충분히 나쁘지만, 반복적으로 당한다면 악몽 그 자체입니다.
백도어는 짜증을 넘어 사이트에 극도로 해롭습니다. 백도어를 제거하면 일단은 안전해지지만, 앞으로도 계속 안전하다는 보장은 없습니다.
해커와 봇으로부터 웹사이트를 지키기 위한 조치를 반드시 취해야 합니다. 보안 플러그인은 해킹 시도와 백도어 감염으로부터 사이트를 보호하는 가장 효과적인 도구입니다.
말케어(MalCare) 보안 플러그인은 웹사이트 방화벽으로 악성 트래픽을 걸러내고, 매일 사이트를 스캔하며, 사이트 하드닝 기능까지 제공합니다. 만약 사이트가 해킹당하더라도 말케어가 신속하게 복구해 줍니다.
25만 웹사이트 운영자와 함께 말케어를 경험해 보세요!