Spaceship 블로그

해커로부터 WordPress 웹사이트를 보호하는 방법

매일 해커들은 데이터를 훔치고, 멀웨어를 설치하며, 온라인 존재를 탈취하도록 설계된 기만적인 공격으로 WordPress 웹사이트를 노립니다. 좋은 소식이 있을까요? 올바른 보안 전략으로 스스로를 보호할 수 있습니다. 이 가이드에서는 효과가 입증된 간단한 방법을 사용해 해커로부터 WordPress 사이트를 보호하는 방법을 정확히 보여드립니다.

WordPress 보안 위협의 놀라운 현실

WordPress 보안 위협은 위기 수준에 도달했습니다. 2024년에만 연구원들은 WordPress 사이트에 영향을 미치는 4,448개의 새로운 취약점을 발견했으며, 이는 2023년에 발견된 1,745개의 취약점보다 무려 155% 증가한 수치입니다. 더욱 우려스러운 점은, 어느 날이든 약 337,500개의 WordPress 웹사이트가 멀웨어에 감염되어 있다는 것입니다.

거의 8,000개의 새로운 취약점이 2024년 WordPress 생태계 전반에서 보고되었으며, 그 대다수는 WordPress core보다 plugins와 themes를 표적으로 삼았습니다. 이는 사이트 보안이 설치하는 서드파티 구성 요소에 크게 좌우된다는 뜻입니다.

해커들이 왜 WordPress에 그토록 집중할까요? 간단합니다. 인터넷상의 모든 웹사이트 중 거의 절반이 WordPress로 운영되기 때문입니다. 이 막대한 시장 점유율은 최소한의 노력으로 최대한의 영향을 노리는 사이버 범죄자들에게 WordPress를 매력적인 표적으로 만듭니다.

WordPress 사이트가 가장 취약한 부분

공격이 어디에서 시작되는지 이해하면 보안 노력을 더 효과적으로 집중할 수 있습니다. 데이터는 WordPress 취약점에 관한 몇 가지 놀라운 패턴을 보여줍니다.

plugins는 단연 가장 큰 보안 위험 요소입니다. 2024년 모든 WordPress 취약점의 무려 96%가 plugins에서 발견되었고, themes는 4%, WordPress core 자체는 0.1%에 불과했습니다. 이는 설치하는 모든 plugin이 해커에게 새로운 공격 지점을 열어줄 수 있음을 의미합니다.

WordPress 사이트를 노리는 가장 위험한 공격 방식에는 크로스 사이트 스크립팅(XSS)과 SQL 삽입 공격이 포함됩니다. XSS 공격은 모든 새로 식별된 보안 취약점의 53.3%를 차지했으며, SQL 삽입은 공개된 취약점의 47%를 차지했습니다.

이러한 공격은 plugins와 themes의 부실한 입력 검증을 악용합니다. XSS 공격은 웹사이트에 악성 스크립트를 주입해 사용자 데이터와 세션 토큰을 훔칠 수 있습니다. SQL 삽입 공격은 MySQL 데이터베이스를 직접 겨냥하여 해커가 사이트의 모든 정보에 접근할 수 있게 만들 수 있습니다.

모든 사이트를 위한 기본 WordPress 보안 조치

첫 번째 방어선은 가장 일반적인 공격 경로를 다루는 기본적인 보안 관행을 구현하는 것입니다. 이러한 조치는 강력한 WordPress 보안 전략의 기반을 형성합니다.

모든 소프트웨어를 최신 상태로 유지하세요

대부분의 취약점은 웹사이트를 구성하는 파일과 프로그램에 존재하므로, 이를 최신 상태로 유지하는 것이 매우 중요합니다.

  • WordPress core 업데이트는 보안 취약점을 패치하므로, 제공되는 즉시 설치하세요.

  • plugins를 최신 상태로 유지하는 것은 필수적입니다. 오래된 plugins는 가장 흔한 취약점의 원인이며 공격자의 표적이 되기 쉽기 때문입니다.

  • 정기적으로 themes and child themes를 업데이트하면 최신 보안 패치를 적용할 수 있고 WordPress core 및 plugins와의 호환성도 유지하는 데 도움이 됩니다.

가능한 경우 WordPress core에 대한 자동 업데이트를 설정하고 plugins에 대해서도 자동 WordPress 업데이트를 활성화하세요.

강력한 인증 조치를 구현하세요

약한 비밀번호는 여전히 해커가 WordPress 사이트에 접근하는 주요 방법 중 하나입니다. 사용자 이름으로 "admin"을 절대 사용하지 말고, 대문자와 소문자, 숫자, 특수 문자를 조합한 복잡한 비밀번호를 만드세요.

로그인 자격 증명 보호에 대해 더 알아보려면 사이트를 보호하는 최고의 방법 모음집을 읽어보세요.

이중 인증 (2FA)은 강화된 보안 계층을 추가하여, 해커가 비밀번호를 알아내더라도 사이트에 접근하기 훨씬 더 어렵게 만듭니다. 특히 관리자 계정을 포함한 모든 사용자 계정에 2FA를 활성화하세요.

또한 더 새로운 기술인 passkeys를 시도해볼 수 있습니다. 이는 기기에 안전하게 저장된 암호화 키 쌍을 사용해 비밀번호 없는 인증을 제공합니다. Passkey는 피싱과 자격 증명 도난의 위험을 없애고 사용자가 생체 인증 또는 기기 기반 인증으로 로그인할 수 있게 해주므로, 기존 비밀번호와 2FA보다 훨씬 더 안전합니다.

포괄적인 보안 보호를 확보하세요

기본 모니터링과 보호를 더 여러 겹으로 제공하는 잘 알려진 WordPress 보안 도구들이 있습니다. Wordfence and Sucuri는 어떤 호스팅 환경에서도 작동하는 인기 있는 WordPress 보안 plugins로, 멀웨어 검사, 방화벽 보호, 로그인 보안 같은 기능을 제공합니다. Guardian Suite는 EasyWP 호스팅에 내장되어 있으며 자동 업데이트와 멀웨어 제거를 포함한 자동화된 보안에 중점을 둡니다. 또한 HackGuardian도 포함되어 있는데, 이는 WordPress 파일 시스템을 부분적인 읽기 전용 모드로 전환해 무단 변경을 차단합니다.

실시간 위협 차단을 위한 방화벽 추가

보안 plugins는 다양한 보호 기능을 제공하지만, 전용 방화벽은 들어오는 트래픽을 적극적으로 모니터링하고 필터링하여 악성 요청이 사이트에 도달하기 전에 차단합니다. 이는 무차별 대입 로그인, SQL 삽입, 크로스 사이트 스크립팅과 같은 일반적인 공격을 입구에서 막는 데 도움이 됩니다. 많은 WordPress 보안 plugins에는 내장 방화벽이 포함되어 있지만, 추가 방어 계층을 위해 공유 호스팅 제공업체의 웹 애플리케이션 방화벽(WAF)을 사용할 수도 있습니다.

WAF 기술에 대해 더 자세히 알아보려면 공유 호스팅으로 보호 상태를 유지하는 방법 가이드를 확인하세요.

사용하지 않는 plugins와 themes를 정기적으로 정리하세요

사용하지 않는 plugins와 themes는 단순한 잡동사니가 아니라 실제 보안 위험입니다. 비활성 상태이거나 오래된 plugin 또는 theme 하나하나가, 현재 활성화되어 있지 않더라도 해커에게는 또 다른 잠재적 진입점이 됩니다. 설치된 plugins와 themes를 정기적으로 검토하고 더 이상 사용하지 않는 것은 삭제하는 습관을 들이세요. 이렇게 하면 공격 표면이 줄어들고 WordPress 설치 환경을 가볍고 안전하게 유지할 수 있습니다.

최대 보안을 위한 고급 보호 전략

기본 보안 조치를 넘어, 고급 보호 전략을 구현하면 정교한 공격에 대한 포괄적인 방어를 제공할 수 있습니다.

안전한 호스팅과 인프라를 선택하세요

호스팅 제공업체는 사이트 보안에서 중요한 역할을 합니다. 호스팅 환경은 웹 서버와 서버 소프트웨어를 어떻게 보호하는지를 포함한 보안 기능을 기준으로 신중하게 비교하고 평가해야 합니다.

클라우드 WordPress 호스팅 제공업체는 강화된 서버 구성, DDoS 보호, 네트워크 수준 보안 조치 등 특화된 보안 기능을 제공합니다. 이러한 제공업체는 일반적으로 자동 업데이트, 일일 백업, 전문 보안 모니터링을 포함합니다. 동일한 서버에서 여러 웹사이트나 애플리케이션을 호스팅하는 경우, 한 사이트의 취약점이 다른 사이트에 영향을 줄 수 있으므로 사이트를 격리하거나 전용 리소스를 사용하는 것이 권장됩니다.

SSL 인증서 설치

호스팅 제공업체가 SSL 인증서를 제공하는지 확인하세요. 이는 웹사이트와 방문자를 보호하는 데 필수적입니다. SSL 인증서는 방문자의 브라우저와 서버 사이에서 전송되는 모든 데이터를 암호화하여, 이를 가로채려는 누구에게도 읽을 수 없게 만듭니다. 이는 비밀번호, 결제 정보, 개인 데이터와 같은 민감한 정보를 다룰 때 특히 중요합니다.

하지만 SSL 인증서는 단순히 데이터를 암호화하는 것 이상의 역할을 합니다. 또한 신뢰할 수 있는 인증 기관(CA)이 관리하는 과정을 통해 웹사이트의 신원을 검증합니다. CA가 SSL 인증서를 발급하면 해당 웹사이트가 합법적임을 확인하게 되며, 이는 피싱 공격과 도메인 스푸핑을 방지하는 데 도움이 됩니다. 이러한 검증 덕분에 브라우저는 주소 표시줄에 자물쇠 아이콘과 “https://” 같은 신뢰 표시를 보여줄 수 있으며, 방문자에게 사이트를 안전하게 사용할 수 있다는 확신을 줍니다.

강력한 백업 및 복구 시스템 활용

정기적인 백업은 보안 사고로부터 신속하게 복구하는 데 매우 중요합니다. 백업 전략에는 core WordPress 파일, 미디어, 관련된 모든 데이터베이스를 포함한 전체 WordPress 설치 환경의 백업이 포함되어야 합니다. 백업 파일을 생성하고 안전하게 저장하면 데이터 손실, 사이버 공격 또는 서버 장애 이후에도 사이트를 복원할 수 있습니다.

취약점을 줄이기 위해 사용자 역할을 관리하세요

WordPress에서는 서로 다른 사용자 역할을 할당할 수 있으며, 각 역할에는 고유한 권한 세트가 있습니다. 사용자에게 필요한 접근 권한만 부여하면, 예를 들어 Administrator 대신 Editor, Author 또는 Contributor 역할을 부여함으로써 계정이 침해되더라도 잠재적 피해를 제한할 수 있습니다. 사용자 목록을 정기적으로 검토하고 역할을 조정하여 누구도 필요 이상으로 많은 권한을 갖지 않도록 하세요. 이 간단한 단계는 실수로 인한 변경을 방지하고 공격자가 사이트를 완전히 장악하는 것을 막을 수 있습니다.

사용자 활동 로그 모니터링

사용자 활동 로그를 주시하면 의심스러운 행동을 조기에 발견하는 데 도움이 됩니다. 활동 로그는 로그인, plugin 설치, 콘텐츠 편집 등과 같은 변경 사항을 추적하므로 무단 작업을 빠르게 식별할 수 있습니다. 많은 보안 plugins에 이 기능이 포함되어 있어 최근 활동을 쉽게 검토하고 이상 징후를 조사할 수 있습니다. 이러한 로그를 정기적으로 모니터링하는 것은 위협이 커지기 전에 포착하는 선제적인 방법입니다.

일반적인 공격을 차단하기 위해 XML-RPC 비활성화

XML-RPC는 사이트에 대한 원격 연결을 허용하는 WordPress 기능이지만, 해커들의 빈번한 표적이기도 합니다. 공격자들은 종종 XML-RPC를 악용해 무차별 대입 공격을 수행하거나 무단 접근 권한을 얻습니다. XML-RPC가 필요한 원격 게시 도구나 앱을 사용하지 않는다면, 완전히 비활성화하는 것이 가장 좋습니다. plugin으로 이를 수행하거나 사이트의 .htaccess 파일에 간단한 규칙을 추가하여 자동화된 공격에 대한 사이트 노출을 더욱 줄일 수 있습니다.

해커가 공격하기 전에 WordPress 사이트를 보호하세요

WordPress 보안에는 지속적인 경계가 필요하지만, 이러한 조치를 구현하면 피해자가 될 위험을 크게 줄일 수 있습니다. 가장 우선순위가 높은 항목부터 시작해 전체 체크리스트를 체계적으로 진행하세요. 웹사이트의 보안과 마음의 평안은 오늘 행동에 나서는 것에 달려 있습니다.

자주 묻는 질문

절대적으로 “안전한” 개수는 없지만, 플러그인을 많이 설치할수록 보안 문제와 속도 저하의 위험이 커집니다. 양보다 질에 집중하세요. 정말로 필요한 플러그인만 유지하고, 사용하지 않거나 중복되는 항목은 제거할 수 있도록 목록을 정기적으로 점검하세요.

무료 플러그인도 안전할 수 있지만, 신중하게 선택해야 합니다. 항상 공식 WordPress repository 또는 신뢰할 수 있는 개발자로부터 플러그인을 다운로드하세요. 리뷰, 업데이트 이력, 활성 설치 수를 확인하세요. 오랫동안 업데이트되지 않았거나, 사용자 기반이 작거나, 지원이 부족한 플러그인은 피하세요.

플러그인을 설치하기 전에 성능 관련 불만이 있는지 리뷰를 확인하고, 마지막으로 언제 업데이트되었는지도 살펴보세요. 설치 후에는 GTmetrix 또는 PageSpeed Insights 같은 도구를 사용해 플러그인 활성화 전후의 사이트 속도를 테스트하세요. 눈에 띄는 속도 저하가 있다면 다른 대안을 고려하거나 플러그인 개발자에게 조언을 구하세요.


추천 기사

귀하의 의견을 공유하세요

10자 이상 필요합니다.
공개 표시를 위한 귀하의 신원.
이메일 주소 제공은 선택 사항입니다. 제3자와 공유되지 않습니다.

우리 블로그를 개선하는 데 도움을 주세요

빠른 2분 설문조사에 의견을 공유하세요.

유효한 이메일이 필요합니다