영어 중환자 (English Trackback Patient) – Draco개조버전

오리지널 영어 중환자 플러그인은 영어로된 트랙백을 받아들이지 않는 텍스트큐브의 플러그인입니다. 이 플러그인은 Draco Anti-Spam 플러그인의 기초가 되기도 했습니다.

Draco에 의해 개조된 영어 중환자 플러그인은 한글이 없는 트랙백을 받아들이지 않습니다. 따라서 중국어/유럽어 스팸이나 내용이 공백인 스팸을 더 방어할수 있게 됩니다.

또한 영어 중환자 플러그인이 받아들이는 $target함수에 대한 올바른 처리를 하여, 중환자 플러그인보다 먼저 처리되는 스팸 플러그인이 거부를 한 트랙백의 경우 역시 받아들이지 않게 바꾸었습니다.

오픈소스의 프로그램에서 아이디어나 소스코드를 얻어 발전을 하게되면, 원래의 프로그램에 다시 기여를 하는게 도리라고 생각해서 개조버전을 공개합니다. 원작자나 주소는 바꾸지 않았으나, 주요기능이 바뀌었기 때문에 문제점은 제 블로그에 연락해주시기 바랍니다.

주의 : 이 플러그인은 외국인 블로거가 트랙백을 걸곤 하는 블로그에서는 그 외국인에게 불편함을 줄 수도 있습니다. 또한 유니코드가 아닌 완성형 코드로 트랙백을 보내는 일부 블로거의 트랙백도 한글로 판단하지 못하고 차단될 수 있습니다.

Draco Anti-Spam ver. 0.46

더 최신버전이 발표되었습니다.

스크린샷-Draco Anti Spam 설정 - Mozilla Firefox

1. 소개

텍스트큐브용 안티스팸 플러그인입니다. 댓글과 트랙백으로 오는 스팸을 걸러냅니다.

EAS는 학습기능이 있는 가장 훌륭한 스팸차단 플러그인이지만 이올린 서버가 과부하가 걸리거나 통신이 늦을경우 불편해지는 문제점이 있는데, Draco Anti-Spam은 그런 경우 사용하기 위한 대안 플러그인입니다. 

자세한 기능은 위의 플러그인 설정 메뉴들을 보시면 이해가 되실겁니다.

2. 특징

  • ‘한글’이 없는 댓글과 트랙백 삭제, 중복되는 댓글과 트랙백 삭제, 스팸 금지어 검사에 의한 삭제등 단순한 몇가지 기능을 모아놓은 안티스팸 플러그인입니다.
  • 간단한 구조로 되어 있고, 다른 서버와의 통신을 하지 않아 전반적으로 작동이 빠릅니다.

3. 다운로드

다운로드

사용시 문제점은 제게 리포팅 해주시기 바랍니다.
리포팅을 통해 더 많은 정보가 모이면 더 완벽한 차단이 가능합니다.

.htaccess 를 이용한 불필요한 리퍼러 차단 방법과 같이 사용하면 좋습니다.

4. 버전 기록

0.46
– 2009.01.30
– 필터 패턴 추가

0.45
– 2008.10.20
– 트랙백 체크 기능 일부 오류 수정
– 필터 패턴 추가

0.44
– 2008.10.10
– 필터 패턴 추가

0.43
– 2008.09.10
– 필터 패턴 추가

0.42
– 2008.08.24
– 필터 패턴 추가

0.41
– 2008.08.21
– 공백이나 특수문자로 띄어쓰기를 한 스팸패턴 처리

0.40
– 2008.07.23
– 플러그인 설정 기능 추가
– 연속된 트랙백 삭제 기능 추가
– 제목,본문, 홈페이지등에 반복된 내용을 썼을 경우 스팸으로 처리하는 기능 추가
– 홈페이지 입력이 없으면 휴지통으로 보내는 기능 추가

0.34 베타
– 최근 유행하는 광고 패턴 10여가지 추가

0.33 베타
– 2008.05.23
– 패턴 추가
– 15일내에 같은 댓글 내용이 있을 경우 스팸으로 처리

0.31 베타
– 2008.05.09
– 첫 공개 릴리즈

5. 라이센스 정책

완전한 자유입니다. 마음대로 지지고 볶고 개량해서 사용하십시오.

이 플러그인은 휴지통에 버려진 댓글도 참고하기 때문에, 스팸댓글을 휴지통에서 지워버리지 않으시는게 좋습니다.
주의 : EAS나 EAS Plus와 같이 쓰기 위해서는 다음 글을 참고해주십시오.
http://draco.pe.kr/entry/Draco-Anti-Spam-과-EAS-같이-쓰기

조금 달라진 스팸

원래 제 블로그에 달리는 스팸의 경우 댓글은 한글 광고가, 트랙백은 영문 광고가 달리곤 했습니다. 그런데 어제부터인가 영문 광고 스팸이 댓글로 달리기 시작하는 군요.

특이한 점은, 그냥 광고 댓글이 아니라 댓글 알리미 기능을 이용한 경우도 있다는 것입니다.

태터툴즈나 텍스트큐브의 경우는 댓글에 댓글을 달려면 팝업창을 띄우는 과정이 필요하기 때문에 약간 다른 양상이 되겠습니다.

그리고 스팸 내용이 [url= 같은 식의 BBCode 로 구성되어 있군요.

발행일
카테고리 일상 태그

역시 스팸 프로그램 파는 사람이 있군요.

오늘 제 블로그에 위의 스크린샷과 같은 댓글이 달렸습니다.

네이버 지식인이나 블로그도 자동으로 스팸화 하여 사용하는거 같고, 블로그도 자동으로 방문하고 댓글과 방명록을 다는가 보군요. 버디버디나 메일을 통해서도 스팸을 보내는거 같고..

어휴 짜증나…

ps.
최근 제 블로그에 한글 스팸 댓글이 급격히 늘어나고 있습니다.
Draco Anti-Spam 에서 한글 댓글은 순전히 키워드 매칭으로 처리하기 때문에 한계가 있군요.
학습형 알고리즘이나 몇가지 생각을 하고 있기는 한데…고민입니다.

발행일
카테고리 일상 태그

독자적인 안티스팸 플러그인을 작동중입니다.

태터툴즈, 티스토리, 텍스트큐브 패밀리(?)의 EAS는 학습기능까지 갖춘 궁극의 안티 스팸시스템입니다만, 다른 서버에 접속해서 매번 확인을 해야 하기 때문에, 서버가 바쁘거나 네트워크가 느리면 댓글이나 트랙백 한번 다는데 오래 걸리는 문제가 있습니다.

그동안 이 문제에 짜증이 나 있다가, 그냥 혼자 안티 스팸 플러그인을 만들어 봤습니다. 아직 완성도가 30%정도밖에 안되는 알파테스트 버전이기 때문에, 스팸 댓글이 날라오면 숭숭 뚫릴거 같긴 합니다만, EAS에 비해 작동이 무척 빠른것은 확인되었습니다.

혹시라도 제 블로그에 정상적인 댓글이나 트랙백을 달려고 했는데 안되거나 차단되어 버린다면,
“draco 골뱅이 draco.pe.kr” 로 E메일이나 MSN이나 GoogleTalk로 피드백을 주시면 감사하겠습니다.

리퍼러기록을 보면 페이지를 이동시켜버리는 리퍼러 스팸

최근 블로그툴의 “리퍼러 기록”을 보면 자동으로 광고페이지로 이동시켜 버리는 리퍼러 스팸이 활동하고 있습니다.


리퍼러 로그 페이지를 보면, 저렇게 깨지는 화면이 나옵니다.


그 다음 순간 약장사 페이지로 이동됩니다.

원리를 보자면, 리퍼러주소에 iframe 태그를 삽입하는 방법을 씁니다.


해당 스팸의 리퍼러 기록

예를 들어 저 광고의 경우

http://스팸광고사이트/search/results.html?query=Buy%20viagra%20for%20lowest%20prices
%20Buy%20viagra%20Online%20Now%20%3CIFRAME%20src%3D%2F%2Fmy-dom.info%2Fm.php
%3E&search.x=34&search.y=10&search=search

그림과 같이 리퍼러 주소가 마치 ‘검색엔진을 통해 검색해서 들어온것’처럼 구조가 꾸며져 있고, 검색어 부분에 iframe태그를 삽입해 놓았습니다. 그래서 리퍼러로그정리(RefererURLBeautifier) 플러그인 같은것으로 검색어를 표시하는 플러그인을 쓸경우 iframe에 삽입된 자바스크립트에 의해 리다이렉션을 당하게 됩니다.

해결법

RefererURLBeautifier 플러그인을 1.04이상으로 업데이트 합니다. 링크 1.04에서는 htmlspecialchars()함수로 키워드를 변환시켜서 iframe태그가 사실상 무력화 됩니다.

만약 버전업을 하지 못할 이유가 있거나 더 확실히 하고 싶다면 RefererURLBeautifier 플러그인의 index.php 파일을 열어

return ($keyword) ? ‘<span style=”font-weight: bold; color: #594″>[‘.$keyword.’]</span> ‘ . UTF8::lessenAsEm($url, 70 – UTF8::lengthAsEm($keyword)) : UTF8::lessenAsEm($url, 70);

위와 같은 return 이 이루어지는 바로 위에 strip_tags()함수로 html을 제거해줍니다.

$keyword = strip_tags($keyword);
return ($keyword) ? ‘<span style=”font-weight: bold; color:
#594″>[‘.$keyword.’]</span> ‘ . UTF8::lessenAsEm($url, 70 –
UTF8::lengthAsEm($keyword)) : UTF8::lessenAsEm($url, 70);

ps.
“리퍼러 기록”뿐 아니라 “키워드 통계”에서도 리다이렉션이 작동합니다.
이것도 응급조치로 refererkeyword 플러그인의 index.php를 열어서 147줄에       

document.write(unescape(“<?php echo $keywordkey;?>”));

document.write(unescape(“<?php $keywordkey = strip_tags($keywordkey); echo $keywordkey;?>”));

로 고쳐주면 해결됩니다.

추가

텍스트큐브용 공식 패치가 발표되었습니다.

오랫만에 들어온 번역 스팸 댓글

작년에 번역기를 돌려서 한글을 사용한 스팸 댓글이 많이 달린적이 있습니다. 그런데 오랫만에 오늘 다시 유행한 듯 하네요. 제 메인 블로그는 안당했지만, 서브 블로그들과 아는 사람들의 블로그가 많이 당했습니다.

작년에 비해 발전(?)한 것은, IP 대역이 다양하다는 것입니다. 덕분에 예전처럼 연속으로 달리는 속도는 느리지만, 그래도 많이 당하신 분은 새벽내내 수천건에 달하는 경우도 있더군요.

공통된 패턴은 주소에 무어무어-2008.com/어쩌구저쩌구 이라든지, 하는 식으로 연결 도메인 명에 “2008.com”이나 “2008.net”이란 문자열이 대부분 있다는 것입니다. 이미 EAS가 이와 관련해서 작동해서 추가적인 피해는 막고 있는 듯하지만,  ‘홈페이지 필터링’ 문자열로 추가하면 좋을 듯 합니다.

ps.
“우수한” “위치”등의 키워드를 스팸필터로 등록하시는 분들도 있지만, 한글단어를 필터로 쓰는건 되도록 자제하는것이 좋습니다. 한글의 경우 매칭이 이상하게 적용되서 괜히 정상적인 댓글을 스팸으로 처리하는 경우가 많거든요.

올블로그 실시간 전체글을 RSS 위젯으로 띄웠다가…


무서워져서 바로 꺼버렸다. -_-

전체글 RSS는 올블로그에서 수집한 자료를 바탕으로 취합하여 다시 내보내는 RSS다.
즉 올블로그가 어느정도 배포에 책임이 있는 컨텐츠,혹은 서비스이다.

올블로그가 저런걸 필터링할 방법을 고민해줬으면 좋겠다.
물론 완벽하기는 힘들겠지만.

한글번역기와 연동된 외국 스팸 댓글 출연!

스팸댓글 재미있는 현상이 하나 일어났다. 많은 블로그들이 스팸 예방을 위해 영어로만 된 댓글이나 트랙백은 차단하고 있는 실정이다. 그런데 오늘 한글로 된 스팸 댓글이 블로그에 달렸다.

이 스팸댓글들은 작성자 이름은 영어지만, 댓글 내용은 “너는 차가운 위치를 만들었다!”는 식의 (차가운 = cool인듯) 어설프게 번역기를 돌린 내용들을 담고 있다.

 

6건 정도가 초기에 댓글이 달렸고, 나머지 수십건은 이올린 안티 스팸 서비스(EAS)에 의해 차단되어 휴지통으로 들어갔다. 지금 이 글을 쓰는 순간에도 분당 5~10건씩 댓글이 달리고 있다.

저번 블로그 간담회에서 “자동 번역 시스템이 언어의 장벽을 허물지 모른다”라는 의견이 나온적 있는데, 어설픈 번역이긴 하지만 스팸의 세계에서는 장벽은 허물어지고 있나 보다. 하하하;

ps. 외국 스패머들의 잔머리보다 월등한 알고리즘을 가진 이올린 안티 스팸 서비스에게 경의를 표현다.

몇 천개나 되는 스팸 댓글과 트랙백

최근 블로그에 소홀했다가 근 일주일만에 와보니….
입이 떠억….하고 벌어져야 했습니다.

수천개(약 5천개)정도의 스팸 광고 댓글과 트랙백이 걸려 있더군요.
(트랙백은 100여개밖에 안되서 그나마 다행? -_-;)
그것도 영어도 아니고 스패인어 비슷한 글자로…

….그걸 지우기 위해 PHPMyAdmin과 잠시 씨름 좀 해야 했습니다.
이런 경우에 SQL관리툴이나 명령을 사용하지 못하는 사람은 참 고생일거 같네요.

태터툴스 1.0은 좀 나으려나….

ps. 클래식에서 스팸 관련 패치가 어제 있었군요. 영어로만 글이 달리면 예방한다라….음 -_-a