워드프레스 강좌 / 멀웨어 제거, 치료하는 방법

워드프레스와 멀웨어

워드프레스를 사용하는 사이트가 많다보니 공격도 많이 당합니다. 멀웨어에 감염되어서 사이트가 느려지거나, 서버 자원을 필요 이상으로 소비하거나, 다른 사이트로 리다이렉트시키는 등의 문제가 발생합니다.

멀웨어에 감염되면 index.php나 wp-config.php 등 주요 파일이 변형됩니다. 그리고 이상한 파일이 여기저기 잔뜩 생성됩니다. 따라서 치료 방법은 단순합니다. 변형된 파일은 문제 없는 파일로 교체하고, 이상한 파일은 삭제하면 됩니다.

문제는 그러한 파일을 찾는 게 쉽지 않다는 것입니다. 어떻게 처리하는 게 가장 수월할까요?

치료하기 전에

백업

감염된 상태이기는 하지만, 혹시 필요할 수 있으니 백업합니다.

.htaccess, wp-config.php

  • 아래 방법을 적용하기 전에 제일 먼저 할 것은 .htaccess와 wp-config.php의 감염 여부를 확인하는 것입니다. 워드프레스를 설치, 운영하면서 생성된 파일이기 때문입니다.
  • 실행 권한이 있다면 권한을 제거하고, 파일을 열어서 이상한 코드가 있다면 삭제합니다. wp-config.php는 wp-config-sample.php와 비교하면 찾기가 수월합니다.
  • 감염되기 전의 백업 파일이 있다면, 그 파일과 비교해도 됩니다.

비밀번호 변경

  • 워드프레스 로그인 비밀번호부터 호스팅 계정의 비밀번호, 데이터베이스 비밀번호 등 바꿀 수 있는 비밀번호는 다 바꿉니다.
  • 만약 데이터베이스의 비밀번호를 바꾸었다면 wp-config.php에 있는 비밀번호도 수정해주여야 합니다. 코드는 다음처럼 생겼습니다.
define('DB_PASSWORD', 'xxx');

플러그인을 사용할 수 있는 경우

감염된 파일을 찾는 방법은 여러 가지가 있지만, 플러그인의 도움을 받는 게 쉽습니다. 관련 플러그인이 여러 가지가 있는데, 사용자가 많은 Wordfence Security를 사용해보겠습니다.

플러그인을 설치하고 활성화합니다. 이메일을 등록하라고 나오는데, 등록해야 사용 가능합니다.

[Wordfence - Scan]에서 START NEW SCAN을 클릭하면 검사합니다.

검사 결과는 다음처럼 나옵니다.

  • 기존 파일에 악성 코드가 추가된 것은 REPAIR를 클릭해서 교체를 할 수 있습니다.
  • REPAIR가 없는 것은 새로 추가된 악성 파일입니다. FTP 등으로 접속해서 삭제합니다.

플러그인을 사용할 수 없는 경우

만약 플러그인을 사용할 수 없다면 지울 수 있는 것은 다 지우고 깨끗한 파일로 교체합니다.

워드프레스 코어

  • 사용중인 버전과 같은 버전의 워드프레스를 다운로드합니다.
  • wp-content 디렉토리와 .htaccess와 wp-config.php를 제외한 나머지를 다 지웁니다.
  • 다운로드 한 워드프레스를 wp-content를 제외하고 업로드합니다.

플러그인과 테마

  • 플러그인과 테마도 코어를 처리한 방식과 같은 방식으로 교체합니다. 즉, 플러그인과 테마를 새로 다운로드하고, 기존 파일들을 삭제한 후, 다운로드한 것을 업로드합니다.

사용자가 업로드한 파일들

  • 코어와 플러그인, 테마를 교체해도 문제가 계속 된다면 남아있는 건 wp-content/uploads 디렉토리입니다.
  • 사용자가 업로드한 파일들, 플러그인 등이 생성한 파일들은 wp-content/uploads 디렉토리에 모여있는데, 여기는 하나씩 살펴보는 수밖에 없습니다.
같은 카테고리의 다른 글
워드프레스 강좌 / 내보내기와 가져오기

워드프레스 강좌 / 내보내기와 가져오기

워드프레스로 만는 A라는 사이트의 콘텐츠를 워드프레스로 만든 B라는 사이트로 옮길 때 사용하는 것이 내보내기와 가져오기입니다. 내보내기 내보내기는 에서 합니다. 사용하는 테마나 플러그인에 따라, 내보내는 콘텐츠가 적을 수도 있고... 많을 수도 있습니다. 내보낼 콘텐츠를 선택한 다음 를 클릭합니다. 다운로드하는 파일은 텍스트만 포함한 XML 파일로, 파일 크기는 그리 크지 않습니다. 가져오기 가져오기는 에서 합니다. ...

워드프레스 강좌 / 플러그인 / WP Maintenance Mode / 공사중, 유지보수모드 플러그인

워드프레스 강좌 / 플러그인 / WP Maintenance Mode / 공사중, 유지보수모드 플러그인

공사중/유지보수 모드 사이트 업데이트나 유지보수를 위해서 사이트 접속을 막아놓아야 하는 경우가 있습니다. 그런 경우 방문자에게는 접속 불가 안내와 다시 접속 가능한 시간을 안내하는 페이지를 띄워놓고, 관리자는 작업을 합니다. 이를 Maintenance Mode라고 하는데, 워드프레스로 만든 사이트라면 이러한 기능을 플러그인으로 쉽게 구현할 수 있습니다. WP Maintenance Mode 에서 maintenance로 검색하면 많은 플러그인을 찾을 수 있습니다. 이 중에서 ...

워드프레스 강좌 / 플러그인 / List Category Posts / 다양하게 글 목록 출력시켜주는 플러그인

워드프레스 강좌 / 플러그인 / List Category Posts / 다양하게 글 목록 출력시켜주는 플러그인

워드프레스 기본 위젯에 최근 글 위젯이 있습니다. 최신 글 목록을 보여주는 위젯으로 제목 또는 제목과 날짜를 출력해줍니다. 워낙 단순한 기능의 위젯이라 불편한 점이 좀 있습니다. 요약글을 보여주지도 못하고, 썸네일을 출력할 수도 없습니다. 글쓴이를 보여주거나 특정 카테고리의 글만 출력하지도 못합니다. 이를 해결해주는 플러그인 중의 하나가 List category posts입니다. 원하는 카테고리의 글을 원하는 양식으로 ...

워드프레스 강좌 / 테마 설치하기, 활성화하기, 삭제하기

워드프레스 강좌 / 테마 설치하기, 활성화하기, 삭제하기

워드프레스는 테마 선택이 중요합니다. 목적에 맞는 테마를 잘 선택하면 적은 노력으로 원하는 결과를 얻을 수 있습니다. 이번 강좌에서는 테마를 어떻게 설치하고 활성화하는지, 그리고 필요 없는 테마를 어떻게 삭제하는지 알아보겠습니다. 테마 활성화하기 로 이동하면, 설치된 테마 목록을 볼 수 있습니다. 테마에 마우스를 올리면 테마 세부사항, 실시간 미리보기, 활성화 버튼이 나타납니다. 을 클릭하면 ...

워드프레스 강좌 / 특성 이미지 설정하는 방법

워드프레스 강좌 / 특성 이미지 설정하는 방법

특성 이미지 워드프레스의 글이나 페이지에는 특성 이미지를 설정하는 옵션이 있습니다. 특성 이미지는 해당 글을 대표하는 이미지로, 글의 내용을 잘 반영하는 이미지로 설정합니다. 특성 이미지는 본문에 삽입되는 것은 아니지만, 테마나 플러그인에서 여러 가지 방식으로 활용하니, 가능하다면 설정하는 것이 좋습니다. 특성 이미지 설정하기 글이나 페이지를 작성하는 화면에 특성 이미지를 설정하는 옵션이 있습니다. 을 클릭합니다. 기존 ...

워드프레스 강좌 / 플러그인 / Search Meter / 검색어 키워드 통계 플러그인

워드프레스 강좌 / 플러그인 / Search Meter / 검색어 키워드 통계 플러그인

Search Meter 워드프레스는 검색 기능을 갖고 있습니다. 키워드를 입력하면 해당 키워드를 가진 콘텐츠를 보여줍니다. 하지만, 그 키워드가 무엇인지, 얼마나 검색했는지 관리자에게 알려주는 기능은 없습니다. 방문자가 어떤 키워드로 검색했는지 알고 싶다면 플러그인의 도움을 받아야 합니다. 대표적인 플러그인은 Search Meter입니다. WordPress.ORG에서 공유되는 플러그인이므로 워드프레스 관리자에서 설치할 수 있습니다. 설치하고 활성화합니다. 키워드 보기 에서 키워드를 볼 ...

워드프레스 강좌 / 플러그인 / Advanced Custom Fields / 사용자 정의 필드 만드는 플러그인

워드프레스 강좌 / 플러그인 / Advanced Custom Fields / 사용자 정의 필드 만드는 플러그인

워드프레스의 사용자 정의 필드 기능으로 글이나 페이지에 추가적인 정보를 넣을 수 있습니다. 하지만, 단순한 형태로 되어 있어서 많은 정보를 추가할 때 불편함이 있습니다. 이를 보완해주는 사용자 정의 필드 관련 플러그인이 여럿 있는데, 그 중 널리 사용되는 것이 Advanced Custom Fields입니다. 텍스트, 범위, 체크박스, 라디오 버튼, 파일, 이미지, 달력 등 다양한 형식으로 값을 입력할 수 ...

워드프레스 강좌 / 멀티사이트 만드는 방법

워드프레스 강좌 / 멀티사이트 만드는 방법

서브 도메인과 서브 디렉토리 멀티사이트를 만드는 방법에는 서브 도메인 방식과 서브 디텍토리 방식이 있습니다. cmsfactory.net이라는 도메인이 있을 때, abc.cmsfactory.net 이 서브 도메인이고 cmsfactory.net/abc 가 서브 디렉토리입니다. 서브 도메인 방식으로 멀티사이트를 만드는 것은 언제든 가능하지만, 서브 디렉토리 방식으로 멀티사이트를 만드는 것은 처음 설치했을 때만 가능합니다. 기존 URL과 멀티사이트의 URL이 충돌할 수 있기 때문입니다. 운영 중인 사이트에 멀티사이트를 추가하려고 하면 다음처럼 ...

워드프레스 강좌 / 워드프레스, 테마, 플러그인 업데이트 하는 방법

워드프레스 강좌 / 워드프레스, 테마, 플러그인 업데이트 하는 방법

업데이트 워드프레스는 워드프레스 코어, 플러그인, 테마, 번역 네가지 범주로 업데이트 됩니다. 기능 추가/개선을 위한 업데이트라면 업데이트를 하지 않거나 미룰 수 있지만, 보안 관련 업데이트는 바로바로 해주는 것이 좋습니다. 업데이트는 워드프레스 관리자에서 할 수도 있고, FTP 등을 이용하여 파일 교체 방식으로 할 수도 있습니다. 워드프레스 관리자에서 하는 게 편하므로, 특별한 이유가 없다면 관리자 ...

워드프레스 강좌 / 관리자 이메일 주소 변경하는 방법

워드프레스 강좌 / 관리자 이메일 주소 변경하는 방법

워드프레스를 설치할 때 관리자 계정을 만들고 메일 주소를 입력합니다. 워드프레스가 자동 업데이트 되거나, 댓글이 달리는 등 주요 사건이 발생하면 그 메일로 알림을 보냅니다. 따라서 수신 가능한 메일 주소로 설정하고, 변경이 필요하면 바로바로 업데이트하는 것이 좋습니다. 워드프레스 이메일 주소 변경하기 으로 이동합니다. 이메일 주소를 입력합니다. 을 클릭합니다. 새로운 이메일 주소로 인증 메일이 ...