글 작성자: ikimonotaku

<이미지 출처: http://drillsoul.com/2016/05/10/spambot-comment-spotlight/>



스팸봇(Spam bot)이란?

방치되고 있는 웹사이트나 각종 블로그 등의 사이트를 크롤링하여 관리자 권한없이 사용할 수 있는 댓글이나 방명록 등에 자동으로 광고성 글을 게시한다거나 하는 악성 봇입니다.


크롤링이란?

전세계에 퍼져있는 웹사이트 등을 자동으로 검색하여 각종정보를 획득.

상업용으로 사용될수 있으나, 해커의 공격 전 사전분석(footprinting)등 악용될수 있는 사례가 많다. 실제 보안 모니터링 시 Abnormal한 호스트나 IP에서 주기적인 접근이 이루어지면 해당 트래픽은 차단하기도 한다.

또한 robot.txt 파일은 SEO용도로도 웹사이트 분석을 위해 사용되기도 한다. 


SEO(Search Engine Optimization)란?

일반적으로 웹사이트나 블로그를 만들고 이를 홍보하기 위한 온라인 마케팅 용도로 SEO(검색 엔진 최적화)를 사용한다. 이때 웹사이트의 sitemap을 등록하거나 RSS를 등록하여 SEO가 수시로 체크하여 검색 결과에 표현되게 해준다. 보통 구글 SEO, 네이버 SEO, 다음 SEO, Bing SEO 등을 사용하며, 국내 네이트나 기타 zum 같은 소규모 포털사이트는 네이버나 다음에서 긁어오는듯 보인다.



아래의 내용은 수기형식으로 작성한 글이라 제 경어체를 사용하겠습니다.^^




스팸봇 차단을 위하여...

필자는 블로그를 약 2주전 활성화를 시키고 SEO(Search Engine Optimization)을 활용하여 각종 웹서치 사이트에 제 글이 게재 될수 있도록 하였다.

그리고 각종 정보를 분석하기위해 구글 애널리틱스 플러그를 연동하였다.


구글이나 네이버, MS(Bing)에서 나롱이 블로그의 색인율이 좋아져 접속자수도 점차 증가하였다.

허나, 구글 애널리틱스를 분석하던 중 "express-seo.net" 사이트의 방문이 지속적으로 이루어 졌다. 해당 사이트에 접속해보니 "http://semalt.com/" 페이지로 리다이렉트 되는 현상을 발견할 수 있었다. 해당 페이지는 러시아 국가의 웹사이트 분석기능을 해주는 상업사이트라고 하는데 전세계 웹페이지를 일단 크롤링하여 분석하고 있는것으로 보인다.


이와같은 행위는 웹사이트 고객 분석에 더미값으로 존재할 수 있어 Filter 기능을 활용하여 접근에 대한 로그를 제거 한다던가, 본인이 사용하는 블로그 플랫폼의 스팸차단 기능을 활용하여 IP, 도메인(URL)등을 차단하면 예방 할 수 있다.


다음으로 대표적인 스팸봇 도메인을 리스트업하겠다.



"darodar.com (and various subdomains)

econom.co

ilovevitaly.co (and other TLD variations)

Other spammers plaguing the web include:

semalt.com (and various subdomains)

buttons-for-website.com

see-your-website-here.com"

<출처 : How to Stop Spam Bots from Ruining Your Analytics Referral Data by Jared Gardner>


추가로 나롱이가 이번에 발견한 "express-seo.net" 도메인도 추가해 주자.


웹서버(아파치, Aphache) 내에 .htaccess 파일에 다음 코드를 입력하여 저장한다.



# Block Russian Referrer Spam

RewriteEngine on

RewriteCond %{HTTP_REFERER} ^http://.*ilovevitaly\.com/ [NC,OR]

RewriteCond %{HTTP_REFERER} ^http://.*ilovevitaly.\.ru/ [NC,OR]

RewriteCond %{HTTP_REFERER} ^http://.*ilovevitaly\.org/ [NC,OR]

RewriteCond %{HTTP_REFERER} ^http://.*ilovevitaly\.info/ [NC,OR]

RewriteCond %{HTTP_REFERER} ^http://.*iloveitaly\.ru/ [NC,OR]

RewriteCond %{HTTP_REFERER} ^http://.*econom\.co/ [NC,OR]

RewriteCond %{HTTP_REFERER} ^http://.*savetubevideo\.com/ [NC,OR]

RewriteCond %{HTTP_REFERER} ^http://.*kambasoft\.com/ [NC,OR]

RewriteCond %{HTTP_REFERER} ^http://.*buttons\-for\-website\.com/ [NC,OR]

RewriteCond %{HTTP_REFERER} ^http://.*semalt\.com/ [NC,OR]

RewriteCond %{HTTP_REFERER} ^http://.*darodar\.com/ [NC]

RewriteRule ^(.*)$ – [F,L]

<출처 : How to Stop Spam Bots from Ruining Your Analytics Referral Data by Jared Gardner>


또는 WordPress plug-in option 을 활용하여 위의 코드를 사용한다.



구글 애널리틱스에서는 분석에서 제외하기 위해 러시아 국가나 위해 해당되는 도메인을 추가해주면된다. (참고로 네이버 웹 분석기는 해당 기능이 없다.)


그리고 티스토리를 사용한다면 티스토리 관리페이지에서 스팸필터->사이트 필터링을 통해 스팸봇의 접근을 차단한다.




만약 티스토리에 캡챠(captcha) 기능이 기본 플러그인에 존재한다면 좋을텐데 해당부분이 없어 아쉽긴하다.. (추가하려면 HTML 및 CSS 수정과 캡챠 오픈소스가 필요하다.)


※ Tistory 스팸봇 방지 기능(관리페이지 -> 플러그인 -> 스팸 불펌방지)

사용자 불편을 줄이기 위해 왠만하면 해외 IP방문자 쪽으로 해주시면 좋을듯합니다.





마지막으로 해당 포스팅이 많은 블로거의 도움이 되었으면 좋겠습니다.

안전한 블로깅 라이프를 위하여...^^