홈 / 가이드 / 워드프레스 해킹 복구

워드프레스가 해킹됐을 때 복구하는 법

알 수 없는 광고·리디렉션·구글 경고가 떴다면 해킹 신호일 수 있습니다. 당황하지 않고 복구하는 순서를 정리했습니다.

앱몬스터 · 작성 2026-10-12

핵심 답변

워드프레스 해킹은 보통 오래된 플러그인·테마·약한 비밀번호로 들어옵니다. 복구 순서는 ①격리(점검 모드·백업) → ②악성코드·변조 파일 찾기 → ③깨끗한 버전으로 복구 → ④비밀번호·키 전면 교체 → ⑤업데이트·보안 강화로 재발 방지입니다. 서두르다 멀쩡한 백업까지 덮어쓰지 않는 게 중요합니다.

해킹 징후 — 이런 증상이면 의심

  • 사이트 접속 시 이상한 사이트로 리디렉션되거나 도박·의약품 광고가 뜸
  • 구글 검색 결과에 ‘이 사이트가 해킹되었을 수 있음’ 경고
  • 관리자 로그인이 안 되거나 모르는 관리자 계정이 생김
  • 서버 용량·트래픽이 갑자기 폭증, 모르는 PHP 파일이 다수 생성
  • 스팸 메일이 내 도메인에서 대량 발송됨
먼저 멈추세요: 겁이 나서 바로 ‘전체 삭제’나 ‘새로 설치’부터 하면, 원인 파악도 못 하고 멀쩡한 데이터까지 날릴 수 있습니다. 아래 순서대로 가세요.

가장 먼저 — 격리와 보존

초기 대응 4단계
1
현재 상태 백업지금 상태(파일+DB)를 ‘증거용’으로 따로 보관. 덮어쓰기 금지.
2
점검 모드 전환방문자·검색엔진에 피해가 번지지 않게 사이트를 임시 차단/점검 페이지로.
3
접근 차단FTP·관리자·DB 비밀번호 임시 변경, 모르는 관리자 계정 비활성화.
4
호스팅사 통보공유 호스팅이면 다른 사이트로 번질 수 있어 호스팅사에 알림.
‘증거 보존 → 피해 차단 → 접근 잠금’ 순서가 핵심입니다. 복구는 그다음입니다.

악성코드·변조 파일 찾기

워드프레스 코어·테마·플러그인에 심긴 악성코드를 찾습니다. 전형적인 흔적은 다음과 같습니다.

  • 최근 수정일이 이상한 .php 파일, wp-content/uploads 안의 PHP 파일(원래 없어야 함)
  • eval(, base64_decode(, gzinflate( 등으로 난독화된 코드
  • wp-config.php·.htaccess 변조, 숨은 리디렉션 규칙
  • 코어 파일이 공식 배포본과 달라진 경우(체크섬 비교)
# 최근 2일 내 수정된 PHP 파일 훑어보기
find . -name "*.php" -mtime -2 -print

# 난독화 흔적 검색
grep -Rn "base64_decode\|eval(\|gzinflate" wp-content/ | head

깨끗하게 복구

복구 우선순위
깨끗한 백업이 있으면 복원
가장 안전
코어·테마·플러그인 전체 재설치
권장
변조 파일만 수동 제거
누락 위험
경험 기반 상대 안전도이며 절대 수치가 아닙니다. 감염 전 깨끗한 백업이 있으면 그것을 복원하고, 없으면 코어·테마·플러그인을 공식 최신본으로 통째 교체하는 쪽이 백도어 누락을 줄입니다.

DB 안에 심긴 악성 스크립트(게시물·옵션 테이블)도 함께 확인합니다. 콘텐츠는 살리고 악성 코드만 걷어내야 하므로, 백업이 있으면 복원 후 비교하는 방식이 안전합니다.

비밀번호·키 전면 교체

복구했어도 인증 정보를 바꾸지 않으면 다시 들어옵니다. 아래를 모두 교체하세요.

  • 관리자·FTP·DB·호스팅 패널 비밀번호 전부
  • wp-config.php의 Secret Key(SALT) 재발급 → 기존 로그인 세션 무효화
  • 외부 연동 API 키(결제·메일·SMS) 재발급
  • 모르는 관리자 계정 삭제, 2단계 인증 적용

재발 방지

해킹의 대부분은 ‘오래 방치’에서 옵니다. 오래된 앱·웹 보안 점검처럼 정기 점검을 걸어 두세요.

  • 코어·테마·플러그인 자동 업데이트, 안 쓰는 플러그인 삭제
  • 관리자 2단계 인증 + 로그인 시도 제한
  • 정기 백업(3-2-1)으로 언제든 깨끗한 시점 복원 가능하게
  • 보안 플러그인·방화벽(WAF)로 알려진 공격 차단

자주 묻는 질문

그냥 워드프레스를 새로 설치하면 되지 않나요?

코어를 새로 깔아도 테마·플러그인·업로드 폴더·DB에 남은 백도어가 그대로면 다시 감염됩니다. 증거 백업 → 전체 교체 → 인증정보 교체 순서로 가야 합니다.

구글에 ‘해킹되었을 수 있음’ 경고가 떴어요.

악성코드를 완전히 제거한 뒤 구글 서치콘솔의 보안 문제 메뉴에서 검토를 요청하면 경고가 해제됩니다. 제거 전에 요청하면 반려되니 복구를 먼저 끝내세요.

어떻게 들어온 건지 꼭 찾아야 하나요?

가능하면 찾아야 재발을 막습니다. 대부분 오래된 플러그인·테마 취약점이나 약한 비밀번호가 입구입니다. 원인을 모르면 전체 업데이트·비밀번호 교체·보안 강화로 입구를 최대한 좁혀야 합니다.

혼자 복구하기 어려우면요?

감염 범위가 넓거나 공유 호스팅으로 번졌으면 전문 점검이 안전합니다. 현재 상태와 백업 보유 여부만 알려주시면 복구 가능 범위와 순서를 먼저 진단해 드립니다.

무료 점검부터 시작하세요

지금 증상(리디렉션·경고·계정 이상)과 백업 보유 여부만 알려주시면, 복구 가능 범위와 안전한 순서부터 먼저 알려드립니다.

무료 점검 문의 → appmonster.co.kr

문의: appmonster.kr@gmail.com

함께 보기: 오래된 앱 보안 점검 5가지 · Firebase 보안 규칙 점검 · 앱 서버·DB 백업 안 하면 생기는 일 · API키가 노출됐을 때 위험과 조치