내 웹사이트 트래픽 중 무려 29%가 악의적인 목적을 가지고 있다는 사실을 알고 계셨나요?
시장이 대거 온라인으로 이동한 것은 부정할 수 없는 사실입니다. 현재 인터넷에는 1,200만 개 이상의 이커머스 스토어가 있으며, 그중 약 100만 개가 월 1,000달러 이상의 매출을 올리고 있습니다. 하지만 이커머스 규모가 커질수록 WooCommerce 보안 문제 역시 함께 증가하고 있습니다.
여전히 많은 고객들은 데이터 유출과 신용카드 사기에 대한 두려움 때문에 고액 결제를 망설입니다. 따라서 온라인 비즈니스를 운영하는 누구에게나 웹사이트 보안은 최우선 과제가 되어야 합니다. 보안 문제가 발생하면 데이터 손실, 고객 불만, 매출 감소로 이어져 비즈니스에 심각한 타격을 입힐 수 있습니다.
300만 개 이상의 이커머스 웹사이트가 WooCommerce 기반으로 운영되고 있는 만큼, WooCommerce 보안 가이드라인을 준수하는 것이 무엇보다 중요합니다. 그렇다면 어떻게 해야 할까요?
WooCommerce는 안전한가요?
WooCommerce는 이커머스 웹사이트를 위한 편리하고 안전한 플랫폼을 제공하도록 설계되었습니다. 즉, WooCommerce 자체는 기본적으로 안전합니다.
하지만 외부 해킹 시도나 브루트 포스(brute force) 공격 같은 보안 위협으로부터 자동으로 보호해 주지는 않습니다. 이러한 위협으로부터 사이트를 지키려면 추가적인 보안 조치를 통해 철저히 대비해야 합니다.
아래에서 온라인 스토어를 안전하게 지켜줄 15가지 WooCommerce 보안 팁을 소개합니다. 카테고리별로 정리했으니 체크리스트처럼 활용하시기 바랍니다.
WooCommerce 보안 플러그인
보안은 어렵고 시간이 많이 드는 일처럼 느껴질 수 있습니다. 물론 IP 주소를 일일이 차단하거나 방화벽에서 정상 방문자를 화이트리스트에 등록하는 데 많은 시간을 투자하는 분들도 있습니다.
하지만 대부분의 보안 위협을 한 번에 차단해 주는 보안 레이어를 먼저 구축한 후, 세부 사항을 조정하는 것이 효율적입니다.
1. 보안 플러그인 설치
WooCommerce 스토어를 보호하기 위해 취할 수 있는 가장 핵심적인 조치입니다. 보안 플러그인을 설치하면 정기적으로 웹사이트를 스캔하여 보안 문제 발생 시 즉시 알려줍니다.
MalCare처럼 WooCommerce와 호환되는 보안 플러그인을 사용하면 스토어를 수시로 스캔하고, 몇 분 안에 악성 코드를 제거하며, 브루트 포스 공격을 사전에 차단할 수 있습니다.
WooCommerce는 매우 민감한 데이터를 다루므로 신뢰할 수 없는 플러그인은 절대 사용해서는 안 됩니다. 해커들의 공격 기법은 날로 진화하고 있으므로, 위장되거나 숨겨진 멀웨어까지 탐지할 수 있는 스캐너와 방화벽이 반드시 필요합니다.
2. SSL 인증서 발급
SSL 인증서는 특정 웹사이트의 신원과 안전성을 검증하는 인증서입니다. SSL로 웹사이트를 보호하면 전송되는 모든 데이터가 암호화됩니다.
SSL 인증서는 모든 웹사이트에 필수적이며, 특히 은행 계좌 정보나 비밀번호 같은 민감한 정보를 입력받는 사이트에는 더욱 중요합니다.
SSL을 적용하면 URL 옆에 작은 자물쇠 아이콘이 표시됩니다. 이 자물쇠는 사이트가 실제임을 확인해 주며, 자물쇠가 없는 가짜 사이트는 바로 식별할 수 있습니다. 또한 URL이 HTTP에서 HTTPS로 변경됩니다.
SSL 설정은 매우 간단합니다. 평판 좋은 호스팅 업체를 이용 중이라면 대부분 기본으로 제공되며, Really Simple SSL 플러그인을 사용하면 몇 분 만에 설정할 수 있습니다.
WooCommerce 사이트라면 SSL 인증서를 받은 후 WooCommerce > 설정 > 고급 메뉴에서 '결제 페이지 강제 보안 접속(Force Secure Checkout)'을 활성화하세요. 이렇게 하면 거래 보안이 한층 강화됩니다.
보안 측면뿐 아니라 SEO 측면에서도 SSL은 중요합니다. 구글은 HTTPS 전환을 꾸준히 권장해 왔으며, SSL이 적용되지 않은 웹사이트에는 검색 결과에서 '안전하지 않은 사이트' 경고를 표시하고 페널티를 부과하기도 합니다.
WooCommerce 로그인 페이지 보안
로그인 페이지는 마치 과녁처럼 브루트 포스 공격 봇의 집중적인 표적이 됩니다. 이런 봇은 무단 접근을 시도할 뿐만 아니라, 그 과정에서 사이트 리소스까지 소모시키기 때문에 더욱 성가신 존재입니다.
무분별한 리소스 소모의 결과로 정상 사용자조차 사이트 접속이 어려워질 수 있습니다. 로그인 페이지 보안은 선택이 아닌 필수입니다.
1. 2단계 인증(2FA) 활성화
WooCommerce 로그인 페이지를 보호하는 또 다른 방법은 2단계 인증을 도입하는 것입니다.
활성화하면 WordPress 관리자 페이지에 로그인하려는 사람은 아이디·비밀번호 외에 실시간 생성되는 추가 인증 코드를 입력해야 합니다. 휴대폰으로 전송되는 일회용 비밀번호(OTP)나 Google Authenticator 같은 앱에서 생성된 코드가 여기에 해당합니다.
이를 통해 해커가 비밀번호 조합을 추측하거나 취약한 비밀번호를 악용할 가능성을 원천적으로 차단할 수 있습니다.
2. 기본 사용자명 'admin' 변경
WooCommerce 보안을 강화하는 가장 빠르고 쉬운 방법 중 하나는 기본 사용자명과 비밀번호를 변경하는 것입니다. 새 사용자를 추가한 뒤 해당 계정으로 로그인하고 기존 계정을 삭제하면 됩니다.
WordPress 관리자 이름을 변경하려면 사용자 > 새로 추가로 이동하세요. 모든 정보를 입력하고 반드시 고유한 사용자명을 사용하세요.
새 계정을 생성할 때 사용자 역할 목록에서 '관리자(Administrator)'를 선택합니다.
완료되면 wp-admin에서 로그아웃한 뒤 새 계정으로 다시 로그인하세요. 그다음 기존 'admin' 계정을 삭제하면 됩니다. 이 과정에서 기존에 작성한 글은 모두 새 계정으로 이전됩니다.
또는 Admin Renamer나 Username Changer 같은 플러그인을 사용해 사용자명을 변경할 수도 있습니다.
3. 로그인 시도 횟수 제한
브루트 포스 공격은 사이트 침입에 가장 널리 쓰이는 방식입니다. 단어와 숫자의 모든 가능한 조합을 시도해 비밀번호를 찾아내는 방식입니다.
AI와 머신러닝 기술의 발달로 해커들은 약한 비밀번호를 몇 분 만에 뚫을 수 있습니다. 사용자명 변경과 강력한 비밀번호 설정만으로는 완벽한 방어가 어렵습니다.
따라서 가장 효과적인 해결책은 특정 IP 주소의 로그인 시도 횟수를 제한하는 것입니다. 예를 들어 하나의 IP 주소에서 여러 번 로그인을 시도하면 허용 횟수를 초과한 시점에 접근을 차단하는 방식입니다.
MalCare 같은 강력한 보안 솔루션은 이 과정을 자동으로 처리해 줍니다. MalCare의 방화벽은 브루트 포스 공격을 자동으로 차단하고 악성 봇과 공격자로부터 사이트를 보호합니다.
4. 지역 차단(Geoblocking) 적용
많은 악성 봇은 특정 국가에서 발생합니다. 사이트를 운영하는 입장에서 정상 트래픽이 어느 국가에서 올 것으로 예상되는지 파악하고 있을 것입니다.
로그에 평소 없던 국가의 접속이 급증한다면 봇일 가능성이 높습니다. 다만 광고 캠페인으로 인한 트래픽일 수도 있으므로 신중하게 적용해야 합니다.
특정 국가 전체의 접속을 차단하는 것도 가능합니다. MalCare에도 지역 차단 기능이 있지만, 과도한 사용은 권장하지 않습니다. 부주의하게 설정하면 Googlebot 같은 유익한 봇까지 차단될 수 있습니다.
WooCommerce 사용자 관리
관리자 대시보드 내부에서도 보안을 강화할 수 있는 몇 가지 조치가 있습니다. 이 섹션의 팁은 보안 관점에서 절대적으로 필수적인 사항들이니 모두 적용하시길 권장합니다.
1. 강력한 비밀번호 요구
스토어 계정 구조는 복잡할 수 있습니다. 여러 명의 작성자가 사이트에 참여하는 경우 관리자 권한을 부여받는 경우가 많습니다(권장되지는 않지만요).
그러나 모든 사람이 관리자 패널에 접근할 수 있다면 스토어의 취약점은 크게 늘어납니다. 비밀번호를 아는 사람이 많을수록 보안은 약해집니다.
해결책은 두 가지입니다. 첫째는 접근 권한을 본인만 유지하는 것이지만 현실적으로 어려운 경우가 많습니다. 둘째는 모든 사용자가 강력한 비밀번호를 사용하도록 강제하는 것입니다.
가장 쉬운 방법은 Force Strong Passwords 확장 플러그인을 사용하는 것입니다. 이 플러그인은 회원가입 시 대소문자, 숫자, 특수문자를 조합한 강력한 비밀번호만 설정할 수 있도록 강제합니다. 흔한 단어는 비밀번호로 사용할 수 없어 크랙이 극도로 어려워집니다. 협업으로 운영되는 스토어라면 반드시 설치할 만한 조치입니다.
2. 사용자 관리 정책 수립
앞선 내용과 연결되는 부분으로, WooCommerce 스토어 운영에 여러 관리자가 필요한 때가 있습니다. 그럼에도 정기적으로 사용자 목록을 검토해 제거가 필요한 계정이 있는지 확인하는 것이 좋은 습관입니다.
또한 항상 '최소 권한 원칙'을 따라야 합니다. 각 사용자가 업무를 수행하는 데 필요한 최소한의 권한만 부여하고, 그 이상은 절대 허용하지 마세요.
3. 활동 로그 활용
여러 사용자가 사이트를 수정하는 환경이라면 모든 변경 사항을 추적해야 합니다. 활동 로그는 이를 위한 강력한 도구입니다. 상세한 로그를 통해 누가 언제 어떤 작업을 했는지 정확히 파악할 수 있습니다.
해커들은 종종 관리자 계정을 탈취해 피해를 입힙니다. 따라서 로그에서 관리자 계정의 이상한 활동이 감지된다면 문제가 발생했다는 초기 신호일 수 있습니다.
호스팅 환경 설정
WordPress는 파일을 직접 편집하거나 접근할 수 없게 되어 있습니다. 파일을 관리하려면 File Manager 같은 FTP 클라이언트를 사용해야 합니다. WordPress 플러그인 저장소에서 다양한 FTP 클라이언트를 찾을 수 있습니다.
1. wp-config.php 파일 보호
wp-config.php 파일은 시스템 전체에서 가장 중요한 파일 중 하나로, 사이트에 대한 민감한 정보가 대량으로 담겨 있습니다.
WordPress 보안 키와 데이터베이스 연결 정보 등이 포함되어 있어, 이 파일이 유출되면 웹사이트에 감당하기 힘든 피해가 발생할 수 있습니다.
wp-config.php 파일을 보호하는 첫걸음은 본인 외 모든 접근을 차단하는 것입니다. 또는 새로운 config.php 파일을 만들어 민감한 데이터를 기본 wp-config.php 파일에서 분리할 수도 있습니다. 포인터(pointer)만 추가하면 민감한 데이터는 보호되면서도 웹사이트는 정상적으로 작동합니다.
2. 파일 편집 기능 비활성화
사이트의 파일 에디터는 주요 취약점입니다. PHP 코드를 실행할 수 있게 해주기 때문에 해킹이 매우 쉬워집니다. 파일 에디터는 테마와 플러그인 파일을 관리자 영역에서 직접 수정할 수 있는 유용한 기능이지만, 이렇게 큰 취약점을 그대로 두어서는 안 됩니다.
해커가 아니더라도 접근을 제한해야 합니다. 모든 관리자가 파일 에디터를 올바르게 사용할 줄 아는 것은 아니며, 잘못 수정하면 사이트가 손상될 수 있기 때문입니다.
파일 편집을 비활성화하는 방법은 매우 간단합니다. File Manager로 모든 파일에 접근한 뒤 wp-config.php 파일을 찾아 열고, 텍스트 에디터(메모장 등)에서 'That's all, stop editing! Happy publishing' 문장 바로 앞에 다음 코드를 추가하세요:
define( 'DISALLOW_FILE_EDIT', true );
define( 'DISALLOW_FILE_MODS', true );
변경 사항을 저장한 후 파일을 다시 서버에 업로드하면 됩니다. 이제 테마와 플러그인 에디터가 비활성화됩니다.
3. 콘텐츠 기록 접근 제한
악의적인 사용자들은 콘텐츠 스크래퍼를 이용해 블로그의 모든 게시글을 긁어갑니다. 또한 콘텐츠 기록에 자유로운 접근을 허용하면 민감한 페이지까지 포함해 사이트의 모든 페이지에 접근 가능해집니다.
이런 보안 위험을 막으려면 새 폴더를 생성할 때 index.html 파일을 반드시 추가하세요. 이렇게 하면 사용자는 허가된 콘텐츠만 찾을 수 있습니다. 그렇지 않으면 비밀번호 없이 URL 입력만으로 누구나 폴더 내용에 접근할 수 있게 됩니다.
Restrict Content 같은 플러그인을 활용하면 콘텐츠 기록을 보호하고 민감한 데이터를 안전하게 유지할 수 있습니다.
테마와 플러그인
테마와 플러그인은 웹사이트의 확장 기능이기 때문에 통제 범위가 제한적입니다. 신뢰할 수 있는 출처의 확장 기능을 사용하는 것도 도움이 되지만, 공격자가 악용할 수 있는 취약점이 존재할 수 있습니다. 아래 원칙을 지켜 테마와 플러그인, 나아가 웹사이트 전체를 안전하게 지키세요.
1. 웹사이트 백업
대부분의 보안 팁이 예방에 초점을 맞추고 있지만, 백업은 사후 대응의 핵심입니다. 생각해 보세요. 웹사이트가 다운되면 시간과 신규 주문뿐 아니라 고객 데이터, 기존 주문 기록, 그리고 상당한 매출까지 잃을 수 있습니다.
이것이 백업이 중요한 이유입니다. 해킹이나 장애가 발생해도 민감한 고객 정보의 저장소를 유지하며 손실을 최소화할 수 있습니다.
외부 보안 위협으로부터 안전하더라도, 테마나 플러그인 업데이트가 원인이 되어 사이트가 오작동하거나 다운타임이 발생할 수 있습니다. 사이트가 깨졌을 때 복구에는 몇 시간이 걸릴 수 있지만, 제대로 된 백업이 있다면 마지막 안전 백업본을 손쉽게 복원해 곧바로 운영을 재개할 수 있습니다.
WooCommerce 사이트는 주문과 요청이 끊이지 않으므로 실시간 백업 솔루션이 가장 적합합니다. 또한 백업 데이터는 반드시 암호화된 형태로 저장해야 해커에게 데이터가 유출되더라도 읽을 수 없게 됩니다.
MalCare는 BlogVault와 원활하게 연동되어 실시간으로 웹사이트 데이터를 안전하게 보호하는 자동 백업을 제공합니다.
2. 웹사이트 최신 상태 유지
업데이트는 기술이 발전하는 방식입니다. 개발자들은 업데이트를 통해 기능, 속도, 성능, 보안을 개선하며 버그와 취약점을 제거합니다.
WooCommerce 역시 이런 목적으로 자주 업데이트됩니다. 웹사이트를 주기적으로 업데이트하면 이미 알려진 취약점, 즉 해커에게 노출된 침입 경로를 미리 차단할 수 있습니다.
테마와 플러그인을 포함한 사이트의 모든 요소를 꾸준히 업데이트하면 장기적으로 많은 번거로움을 덜 수 있습니다. MalCare 고객이라면 대시보드에서 클릭 한 번으로 업데이트할 수 있습니다. 수동으로 하고 싶다면 간단한 방법이 있습니다.
플러그인 > 설치된 플러그인 > 업데이트 가능으로 이동해 원하는 플러그인을 업데이트하세요. 테마는 외모 > 테마 메뉴에서 동일하게 업데이트할 수 있습니다.
3. 불법 복제(nulled) 테마·플러그인 절대 금지
프리미엄 플러그인의 무료 버전을 사용하고 싶은 유혹은 충분히 이해합니다. 하지만 그 위험성을 고려하면 작은 이득을 위해 감수할 만한 가치가 없습니다.
첫째, nulled 테마와 플러그인은 라이선스가 깨진 프리미엄 제품입니다. 무방비한 사용자를 유인하는 미끼로 사용되는 경우가 많으며 백도어가 숨어 있는 경우가 허다합니다. 관리자가 nulled 플러그인을 설치하는 순간, 해커는 사이트로 들어오는 초대장을 손에 쥐는 셈입니다.
둘째, nulled 플러그인과 테마는 개발사로부터 업데이트를 받을 수 없습니다. 취약점이 발견되고 개발자가 보안 패치를 배포해도 nulled 버전에는 적용되지 않습니다. 게다가 패치가 공개되면 해당 취약점은 공개적으로 알려지기 때문에 해커들의 공격 대상이 되기 딱 좋습니다.
셋째, 근본적으로 옳지 않습니다. 개발자는 자신의 노력에 대한 보상을 받을 자격이 있습니다. 개발자를 지원하고 WordPress 생태계를 함께 키워 나가세요.
WooCommerce 보안에 도움 되지 않는 행동
인터넷에는 WooCommerce 보안과 관련해 잘못된 조언이 널려 있습니다. 다음 행동들은 효과가 미미할 뿐 아니라 오히려 역효과를 낼 수 있으니 피하세요:
- 데이터베이스 접두사(prefix) 변경
- 로그인 URL 숨기기
- 코어 파일에 비밀번호 보호 적용
- WordPress 버전 번호 제거
보안 강화 측면에서 이런 조치들은 거의 효과가 없습니다. 오히려 사용자 경험을 크게 해칠 수 있습니다.
WooCommerce 보안, 마무리 생각
이제 스토어는 24시간 연중무휴로 열려 있습니다. 그만큼 사이트도 24시간 관리가 필요하며, 다운타임 하나가 재앙이 될 수 있어 보안의 중요성은 더욱 커집니다.
게다가 이커머스 비즈니스는 민감하고 기밀인 회사 정보를 다룹니다. 이런 정보가 잘못된 손에 넘어가게 둘 수는 없습니다.
더 중요한 것은, 이커머스 웹사이트는 고객의 개인 식별 정보(PII)도 함께 다룬다는 점입니다. 이 정보가 유출되면 브랜드 평판 훼손은 물론 법적 처벌, 소송, 데이터 유출 복구에 드는 막대한 비용까지 감당해야 할 수 있습니다.
보안에 빈틈을 허용하기에는 너무나 큰 대가가 걸려 있습니다. 따라서 WooCommerce 웹사이트에는 선제적이고 예방적인 보안 조치가 반드시 필요합니다.
WooCommerce 사이트에 완전한 보안 생태계를 구축하려면 MalCare 보안 플러그인을 설치하고, 웹사이트 보안이 잘 지켜지고 있다는 안도감을 누리세요.
자주 묻는 질문(FAQ)
WooCommerce는 안전한가요?
WooCommerce는 이커머스 사이트를 위해 만들어진 플랫폼으로, 온라인 비즈니스에 안전한 인프라를 제공합니다. 다만 완전한 보안을 위해서는 다양한 외부 요소들을 고려해야 합니다. 종합적인 보안 솔루션에 투자한다면 WooCommerce는 안전하고 든든한 선택이 될 수 있습니다.
WooCommerce는 해킹당할 수 있나요?
네, WooCommerce 내부의 취약점은 해커와 공격자에게 악용될 수 있습니다. WooCommerce는 잦은 업데이트로 취약점에 대응하고 있으며, 견고한 방화벽을 갖추면 대부분의 성가신 공격자와 멀웨어를 차단할 수 있습니다.
WooCommerce에 SSL이 꼭 필요한가요?
SSL 인증서는 사이트를 암호화하고 데이터를 보호해 웹사이트와 스토어의 안전을 보장합니다. WooCommerce 웹사이트의 보안을 강화하기 위해 SSL 인증서 발급을 강력히 권장합니다.
WooCommerce 사이트는 어떻게 보호하나요?
강력한 비밀번호 설정, 웹사이트 업데이트, 백업, 보안 플러그인 사용, SSL 인증서 발급 등 다양한 방법으로 WooCommerce 사이트를 보호할 수 있습니다.
WooCommerce에 보안 플러그인이 꼭 필요한가요?
보안 플러그인 없이도 WooCommerce 보안을 유지할 수는 있지만, 플러그인을 사용하면 훨씬 수월합니다. 보안 플러그인은 전문가들이 개발한 것으로, 방대한 데이터를 몇 초 만에 훑어 시급한 멀웨어와 취약점을 찾아낼 수 있습니다. 또한 사이트를 안전하게 정화하고 방화벽을 통해 추가 보안 계층을 제공합니다.