Computer >> 컴퓨터 >  >> 프로그래밍 >> HTML

워드프레스 사이트를 위험에 빠뜨리는 대표적인 보안 실수 8가지와 해결 방법

워드프레스 보안 실수: 매분 약 90,978건의 해킹 시도가 워드프레스 웹사이트에 이루어진다는 사실을 알고 계셨나요? 한 번 사이트가 해킹당하면 해커들은 여러분의 사이트를 이용해 스팸 메일 발송(일명 피싱 해킹), 다른 웹사이트 공격, 스팸 링크 삽입, 방문자 강제 리디렉션 등 각종 악성 활동을 벌입니다.

그렇기 때문에 워드프레스 사이트 운영자라면 보안 문제를 결코 가볍게 여겨서는 안 됩니다. 모든 보안 문제를 한 번에 해결해 주는 만능 해결책은 존재하지 않으며, 여러 가지를 올바르게 실천하는 것만이 유일한 방법입니다. 인터넷에는 사이트를 안전하게 지키는 팁이 수없이 많지만, 서로 상충하는 조언도 있고 오래되어 더 이상 유효하지 않은 정보도 적지 않습니다. 운영자마다 의견이 분분하다 보니 혼란스럽기 십상이며, 그런 혼란 속에서 실수는 필연적으로 발생합니다.

특히 초보 사이트 운영자에게는 사이트 보안을 유지하는 일이 쉽지 않습니다. 잘못된 습관 하나가 흔한 해킹 공격에 그대로 노출되는 결과로 이어질 수 있기 때문입니다. 웹사이트 운영자들이 자주 저지르는 보안 실수를 미리 파악해 두면, 같은 실수를 반복하지 않는 데 큰 도움이 됩니다. 이 글에서는 다수의 워드프레스 운영자가 범하기 쉬운 대표적인 보안 실수와 그 해결 방법을 정리했습니다.

워드프레스 운영자가 저지르는 대표적인 보안 실수

아래의 조치를 실행하기 전에 먼저 워드프레스 보안 감사(Security Audit)를 수행해 보시길 권합니다.

1. 워드프레스 코어·플러그인·테마 업데이트를 미루는 것

워드프레스 코어와 확장 기능(테마 및 플러그인)을 최신 상태로 유지하는 것은 기본 중의 기본인 보안 수칙입니다. 업데이트는 단순히 새로운 기능을 추가하는 것을 넘어, 발견된 취약점을 패치하는 역할도 하기 때문입니다. 워드프레스 생태계에서는 취약점 소식이 순식간에 퍼지고, 해커들은 그틈을 노려 공격합니다. 취약점을 막아줄 업데이트를 적용하지 않으면 사이트는 사실상 무방비 상태가 됩니다.

업데이트를 미루는 이유는 크게 두 가지입니다. 하나는 업데이트와 보안의 연관성을 모르는 경우이고, 다른 하나는 업데이트 후 호환성 문제가 두려운 경우입니다. 실제로 워드프레스 코어나 확장 기능을 업데이트한 뒤 사이트가 깨지는 사례가 종종 있습니다.

다만 워드프레스 업데이트는 이전 버전과의 호환성을 고려해 설계됩니다. 예컨대 4.1 버전으로 운영 중인 사이트도 최신 버전으로 업그레이드할 수 있습니다. 그럼에도 불구하고 업데이트 때마다 사이트 오류 소식이 들려오는 것이 현실이며, 워드프레스 4.9.6 버전에서도 그런 사례가 있었습니다.

테마와 플러그인 같은 확장 기능 업데이트에서도 비슷한 문제가 발생할 수 있습니다. 호환성 문제는 대체로 개발자가 서두르느라 충분한 검증 없이 업데이트를 배포했거나, 개발 역량이 부족한 경우에 발생합니다. 플러그인과 테마 시장은 경쟁이 치열해서, 개발자들은 짧은 시간 안에 새 기능을 계속 추가해야 하는 압박을 받습니다. 그 과정에서 이전 버전의 워드프레스와의 호환성을 충분히 확인할 시간이 부족해지곤 합니다. 그 결과 구버전 워드프레스를 사용하는 사이트에서 최신 버전 전용 플러그인으로 업데이트하는 순간 사이트가 깨지는 일이 벌어집니다.

이런 호환성 우려 때문에 보안 업데이트조차 건너뛰는 운영자들이 적지 않습니다.

해결 방법: 스테이징(Staging) 환경을 활용하면 이 문제를 해결할 수 있습니다. 스테이징이란 실제 사이트의 복제본을 만들어 워드프레스 코어와 확장 기능 설치를 미리 테스트하는 과정을 말합니다. BlogVault 같은 백업 서비스나 Kinsta 같은 웹호스팅 업체는 스테이징 환경을 제공합니다. 사용 중인 호스팅 업체나 백업 서비스에 스테이징 옵션이 있는지 확인해 보고, 없다면 해당 기능을 제공하는 서비스에 가입하는 것이 좋습니다.

플러그인, 테마, 코어를 꾸준히 업데이트하는 것과 더불어, 워드프레스 솔트(salts)와 보안 키(security keys)도 주기적으로 갱신할 것을 강력히 권장합니다.

2. 품질 낮은 플러그인·테마를 사용하는 것

모든 워드프레스 플러그인과 테마가 잘 만들어진 것은 아닙니다. 어떤 것은 품질 검증을 소홀히 하고, 어떤 것은 비전문 개발자가 만든 것입니다. 사용자 입장에서는 무엇을 선택하고 구매할지 신중하게 따져야 하지만, 안타깝게도 많은 워드프레스 사용자는 기술적 지식이 부족해 플러그인이나 테마의 품질을 스스로 판단하기 어렵습니다.

해결 방법: 이런 사용자를 위해 좋은 테마와 플러그인을 가려내는 몇 가지 기준을 정리했습니다.

i. 워드프레스 공식 플러그인 저장소나 Elegant Themes, ThemeForest처럼 평판이 검증된 출처에서 확장 기능을 받으세요.

ii. 워드프레스 저장소에서 평점이 좋은지, 그리고 실제로 해당 테마·플러그인을 자신의 사이트에 적용해 본 사람들의 후기가 있는지 확인하세요. 간단한 구글 검색만으로도 리뷰를 찾을 수 있습니다.

iii. 해당 플러그인이 오랫동안 꾸준히 운영되어 왔는지 확인하세요. 워드프레스 저장소나 공식 웹사이트에 보안 업데이트와 버그 수정 이력이 있는지 살펴보면 됩니다.

iv. 업데이트가 자주 이루어지는지, 특히 최근 2개월 이내에 업데이트된 적이 있는지 확인하세요.

3. 불법 복제 플러그인·테마를 사용하는 것

유료 프리미엄 테마와 플러그인을 무료로 나눠주는 사이트들이 생각보다 많습니다. 이런 무료 제품을 사용하면 재앙이 될 수 있습니다. 상당수 불법 워드프레스 확장 기능에는 악성 코드가 고의로 심어져 있기 때문입니다. 불법 확장 기능을 설치하는 것은 해커에게 문을 열어 달라고 청하는 것과 마찬가지입니다. 공격자가 방금 설치한 테마·플러그인의 악성 코드를 통해 사이트에 침입하면, 스팸 메일 발송이나 타 사이트 공격 등 각종 악성 행위에 여러분의 사이트를 이용하게 됩니다. 게다가 사이트에 멀웨어가 있다는 사실이 드러나면, 호스팅 업체가 계정을 정지하고 구글 같은 검색 엔진이 사이트를 블랙리스트에 올리며, 애드워즈 계정마저 정지될 수 있습니다.

해결 방법: ThemeForest, Elegant Themes 같은 신뢰할 수 있는 마켓플레이스에서 정품 테마와 플러그인을 구매하세요. 할인 기간을 활용하면 훨씬 저렴한 가격에 구매할 수도 있고, 원하는 테마나 플러그인의 공식 웹사이트를 직접 방문해 구매하는 방법도 있습니다.

4. 사용하지 않는 플러그인·테마를 방치하는 것

사용하지 않는 테마와 플러그인을 사이트에 두고 있으면 해커에게 침입 통로를 열어주는 셈입니다. 많은 운영자가 비활성화된 확장 기능은 업데이트하지 않는데, 보안상 이유를 모르기 때문입니다. 그들에게 업데이트란 새 기능 추가를 의미하고, 사용하지 않는 플러그인에는 새 기능이 필요 없다고 생각하는 것이죠. 하지만 취약점을 패치하는 업데이트가 배포되었다면, 업데이트하기 전까지 사이트는 계속 위험에 노출됩니다.

해결 방법: 유일한 해결책은 사용하지 않는 워드프레스 테마와 플러그인을 삭제하는 것입니다. 방법은 다음과 같습니다.

워드프레스 대시보드에서 '설치된 플러그인(Installed Plugins)' 페이지로 이동합니다.

워드프레스 사이트를 위험에 빠뜨리는 대표적인 보안 실수 8가지와 해결 방법

페이지 상단에 '비활성(Inactive)' 옵션이 있습니다. 이를 선택합니다.

워드프레스 사이트를 위험에 빠뜨리는 대표적인 보안 실수 8가지와 해결 방법

그러면 비활성화된 플러그인을 삭제할 수 있는 화면으로 이동합니다. 다만 '비활성' 버튼을 누르기 전에, 해당 플러그인이 가까운 미래에 필요 없다는 점을 먼저 확인하시기 바랍니다.

워드프레스 사이트를 위험에 빠뜨리는 대표적인 보안 실수 8가지와 해결 방법

5. 허술한 로그인 습관을 유지하는 것

흔하면서도 매우 위험한 두 가지 로그인 습관이 있습니다. 바로 추측하기 쉬운 로그인 정보를 사용하는 것과, 사이트를 사용하지 않을 때도 로그아웃하지 않는 것입니다. 공격자는 'admin' 같은 흔한 아이디와 'password123' 같은 단순한 비밀번호 조합을 대입해 로그인을 시도하는 봇을 프로그래밍해 사이트를 해킹합니다. 이런 공격 방식을 무차별 대입 공격(Brute Force Attack)이라고 부릅니다.

해결 방법: 고유한 아이디와 비밀번호를 사용하는 것이 권장됩니다(로그인 페이지 보호 가이드 참고). 단점은 고유한 로그인 정보가 기억하기 어렵다는 점입니다. 따라서 이러한 정보를 담은 문서를 따로 관리해야 하며, 무단 접근을 막기 위해 해당 문서를 반드시 암호화해 보관해야 합니다.

6. 모든 사용자에게 관리자 권한을 부여하는 것

모든 사용자를 관리자로 만드는 것은 위험한 발상입니다. 특히 운영자가 직접 알지 못하는 사용자가 많은 사이트라면 더욱 그렇습니다. 워드프레스는 관리자(Administrator), 편집자(Editor), 작성자(Author), 기여자(Contributor), 구독자(Subscriber), SEO 관리자, SEO 편집자 등의 역할을 사용자에게 부여할 수 있게 해 줍니다. 관리자 권한은 사이트의 모든 영역에 접근할 수 있게 해 주므로, 모두에게 관리자 권한을 주는 것은 매우 위험합니다.

사용자에게 사이트 전체에 대한 무제한 접근권을 주면 악용될 가능성이 커집니다. 실제로 유명 테크 매체 TechCrunch가 해커 그룹 OurMine에게 해킹당한 사례가 있었습니다. OurMine은 한 사용자 계정에 접근한 뒤 사이트에 글을 게시할 수 있었습니다. TechCrunch가 해킹당한 다음 날 독자들이 마주한 홈페이지 모습은 아래와 같습니다.

워드프레스 사이트를 위험에 빠뜨리는 대표적인 보안 실수 8가지와 해결 방법

해결 방법: 워드프레스의 각 사용자 역할은 사이트의 특정 영역에만 접근할 수 있도록 설계되어 있습니다. 사용자가 사이트에서 수행해야 할 작업에 맞춰 적절한 역할을 부여하세요. 이 원칙을 지키면 사이트 전체에 접근할 수 있는 사람을 신뢰할 수 있는 인원으로 한정할 수 있고, 문제가 발생했을 때 책임 소재도 명확해집니다.

7. 백업을 하지 않는 것

백업은 여러분의 마지막 안전망입니다. 백업이 없다면 재난이 닥쳤을 때 곤경에 처할 수 있습니다. 사이트가 해킹당해 게시물이 삭제되더라도, 백업이 있으면 사이트를 손쉽게 복구할 수 있습니다. 하지만 아무 백업 서비스나 쓰는 것은 바람직하지 않습니다. 효율이 떨어지는 백업 서비스가 많기 때문입니다. 예를 들어 상당수 백업 플러그인은 백업 파일을 웹 서버 자체에 저장하며, 일부는 백업을 단 한 곳에만 보관합니다. 웹 서버는 평소의 정상적인 작업에 더해 백업 부담까지 떠안게 되어 사이트 속도를 느리게 만듭니다. 또 백업을 한 곳에만 보관하면 그 백업 하나를 잃어버리는 순간 대체할 수단이 전혀 없게 됩니다.

해결 방법: 백업 서비스를 선택하기 전에 기능 목록을 확인해 백업이 어디에 저장되는지 살펴보세요. 명확한 정보를 찾을 수 없다면, 백업 저장 위치와 다중 장소 보관 여부를 직접 물어보는 메일을 보내는 것도 좋은 방법입니다. 신뢰할 수 있는 백업 서비스를 고르는 방법에 대한 가이드도 참고해 보세요.

8. 보안 서비스를 이용하지 않는 것

특히 트래픽이 적은 소규모 사이트 운영자들은 "내 사이트는 규모가 작아 해커의 표적이 되지 않을 것"이라고 생각하곤 합니다. 하지만 오늘날 해커들에게 소규모 사이트를 공격할 이유는 널리고 널립니다. 파일 저장소로 쓰거나 스팸 메일 발송 거점으로 활용하는 것이 대표적입니다. 실제로 많은 해킹 그룹은 보안에 허술해 침입이 쉬운 소규모 사이트를 선호합니다. 봇을 동원해 아이디와 비밀번호를 무차별 대입하는 대규모 공격을 가하거나, 취약한 플러그인과 테마를 역이용하는 것이 가장 즐겨 쓰이는 해킹 기법입니다.

해결 방법: 표준적인 보안 서비스는 워드프레스 방화벽(Firewall)처럼 해커의 무차별 대입 공격을 차단하는 필수 보안 기능을 제공합니다.

위의 조치들 외에도 추가로 취할 수 있는 보안 조치들이 있습니다. wp-config.php로 워드프레스 사이트를 보호하는 가이드를 따라 해볼 것을 강력히 권합니다.

플러그인, 테마, 심지어 코어에서 취약점이 발견될 때마다 개발자들은 업데이트를 통해 패치를 배포합니다. 따라서 모든 테마, 플러그인, 워드프레스 코어를 최신 상태로 유지하는 것이 좋은 보안 습관입니다. 워드프레스 보안 플러그인 중 손꼽히는 MalCare는 사이트 관리(Site Management) 기능을 제공해 MalCare 대시보드에서 플러그인, 테마, 워드프레스 코어를 한꺼번에 업데이트할 수 있습니다. 여러 개의 사이트를 운영하는 분들에게 특히 유용합니다. 매번 각 사이트에 로그인해 테마, 플러그인, 코어를 일일이 업데이트하는 일은 시간이 많이 드는 작업이기 때문입니다. MalCare 같은 서비스는 운영자가 좋은 보안 습관을 지키도록 돕습니다.

방화벽과 사이트 관리 외에도, 보안 플러그인은 매일 자동으로 악성코드를 검사하는 기능을 제공합니다. 웹사이트가 멀웨어에 감염된 경우 플러그인이 해킹된 사이트 복구를 도와줍니다. 만약 전담 팀에게 워드프레스 유지보수를 맡겨 사이트 보안을 완전히 위임하고 싶다면 WP Buffs가 훌륭한 선택이 될 수 있습니다. 사이트가 1개든 1,000개든 업데이트, 보안, 사이트 속도, 지속적인 수정 작업을 모두 책임져 줍니다.

다음 단계는?

좋은 워드프레스 보안 플러그인을 사용하는 것은 안전한 웹사이트를 구축하고 워드프레스를 지키기 위한 첫걸음입니다. 그 외에도 IP 차단, 로그인 페이지 보호 등의 추가 보안 조치를 취할 수 있으며, 워드프레스 보안 종합 가이드를 참고하면 사이트를 더욱 안전하게 만드는 방법을 배울 수 있습니다.

혹시 지금까지 이런 실수를 저질러 왔다면, 이 글이 무엇이 잘못되었는지 그리고 어떻게 고쳐야 하는지 파악하는 데 도움이 되었기를 바랍니다. 워드프레스 보안 실수와 해결 방법에 대해 궁금한 점이 있다면 언제든지 문의 페이지를 통해 연락해 주세요.