워드프레스 보안을 위해 취할 수 있는 기본적인 방법을 이전 글에서 알아봤습니다. 워드프레스 설치 하기 전 단계에서 관리자의 비밀번호를 강화해야 하고 로그인 URL을 변경해야 웹사이트가 기본적으로 안전하다고 할 수 있습니다. 이번 글에서는 워드프레스 설치 후 최초의 방문자가 누구이며 이들이 어떤 작업을 하는지에 대해 알아보겠습니다.
워드프레스를 설치하고나면 바로 방문하는 것이 인터넷 로봇입니다. 인터넷 로봇(Internet Robot)은 간단하게 말해서 봇(Bot)이라고 합니다. 이들은 양호한 봇(Good Bot)과 불량 봇(Bad Bot)으로 크게 두 가지로 분류할 수 있는데 양호한 봇에는 검색엔진을 예로 들 수 있습니다. 검색엔진은 자신의 사이트에 노출하기 위해 각 사이트를 돌아다니며 콘텐츠를 수집합니다. 이를 크롤링(Crawling)이라고 합니다. 검색 봇을 크롤러(Crawler)라고 하기도 하고 스파이더(Spider)라고 하기도 합니다. Web의 원래 의미는 거미의 집이며 웹에 돌아다니는 것은 거미(Spider)죠. 불량 봇은 웹사이트의 취약점을 찾아 정보를 탈취하기 위해 해커들이 사용하는 것으로 이것도 일종의 검색엔진입니다.
인터넷 봇은 통계에 의하면 전세계 웹사이트 트래픽의 반 이상을 차지합니다. 워드프레스 뿐만 아니라 어떤 사이트든 개설을 하면 사람이 먼저 방문하는 것이 아니라 컴퓨터가 방문하게 됩니다. 사이트 작업을 위해 개발자가 설정과 디자인을 하는 중에도 끊임없이 봇들이 활동하고 있습니다. 이는 구글이나 네이버, 다음(Daum)에 검색등록을 하지 않아도 마찬가지입니다. 검색등록은 검색엔진이 보다 효율적으로 콘텐츠를 가져갈 수 있도록 하는 작업에 불과합니다.
위 그림은 필자의 테스트 사이트로 여러가지 테스트를 위해 마련해둔 워드프레스 사이트의 실시간 트래픽 현황입니다. 구글에 검색등록을 하지 않았고 오히려 검색차단을 했음에도 구글 검색엔진이 찾아오고 있습니다. 어떤 검색 봇은 워드프레스의 취약점인 xmlrpc.php 파일을 검색해 차단당했습니다. 인간이 방문하는 것은 필자 이외에는 하나도 없습니다.
[사진자료: Incapsula.com]
위 사진은 인터넷 보안업체인 Incapsula.com의 2016년 통계자료입니다. 전세계 웹사이트 트래픽의 51.8%가 이들 인터넷 봇이 차지하고 있으며 그중 양호한 봇은 22.9%, 불량 봇은 28.9%의 트래픽을 차지하고 있습니다.
[사진자료: Incapsula.com]
양호한 봇에는 구글을 비롯한 각종 검색엔진이 있습니다. 검색엔진이 살아남으려면 웹사이트의 자료를 수집하고 자신의 사이트에 방문해서 검색결과를 콘텐츠 소비자의 기호에 맞게 제대로 출력해야 합니다. 워드프레스도 검색엔진을 운용하는데 워드프레스로 만들어진 사이트의 통계를 수집합니다.
[사진자료: Incapsula.com]
불량 봇도 조직적이고 체계적으로 활동하기도 합니다. 해커집단도 있고 개별적으로 활동하는 해커도 있습니다. 이들은 수집한 자료를 이용해 웹사이트에 관리자로 로그인하고 백도어 코드를 심어놓고 이 사이트를 기반으로 스팸메일을 보내거나 디도스 공격에 이용하기도 합니다. 요즘에는 피싱에도 이용하고 있습니다. 이들이 사이트에 관리자로 로그인하면 특정 목적을 이루기 전에는 사이트를 망가트리지는 않습니다. 수준낮은 해커의 침투는 사이트에 에러를 발생하기도 하므로 바로 알아차릴 수 있습니다.
필자의 다른 테스트 사이트입니다. 이 해커는 무차별 대입공격(Brute Force Attack)을 하고 있습니다. 이전 글에서 언급한 로그인 URL 감추기 기능을 사용하지 않은 상태입니다. 초단위로 수십번 로그인 시도를 하고 있죠. 아이디는 많이들 사용하는 admin으로 해놨지만 비밀번호는 아주 강하게 해놨기 때문에 관리자로 로그인하려면 불가능할 것입니다. 다른 사이트에서도 이런 시도를 했기 때문에 차단됐으며 필자도 차단하면 이 해커의 IP 주소는 다른 사이트에 접근하기 더 어려울 것입니다. 해킹당한다 해도 별로 피해볼 것도 없는 테스트 사이트이므로 그냥 놔둡니다.
제가 관리하고 있는 고객 쇼핑몰의 실시간 트래픽입니다. 로봇의 트래픽이 아주 많습니다. 하루 방문객이 20명이라면 로봇의 방문은 수천에 달합니다. 위 MJ12bot은 영국 기반의 검색엔진이며 13개의 언어로 60여개의 국가에 콘텐츠를 보급합니다. 어떤 때는 중국의 해커가 무차별 대입공격을 시도해서 중국 전체 IP를 차단해보기도 했습니다. 이런 불량한 봇은 주로 중국, 러시아, 동구권 등에서 발생합니다. 양호한 봇들은 콘텐츠 수집을 위해 정상적인 URL을 검색하는데 비해 불량 봇은 존재하지 않는 파일이나 금지된 경로를 검색하는게 주된 일입니다.
이번 글에서는 아무도 요청하지 않았는데 방문하는 검색 로봇에 대해 알아봤습니다. 이들 검색 로봇은 양호한 로봇보다는 불량한 로봇이 더 많다는 것을 염두에 두고 사이트를 관리해야 합니다. 다음 글에서는 워드프레스 보안의 중급 단계로 보안 플러그인을 설치해 사용하는 방법에 대해 알아보겠습니다.