오랜만에 스팸 댓글

한글이 들어있어 그런지 거의 모든 태터툴즈 기반 블로그가 의지하는... 아, 티스토리는 잘 모르겠습니다, 어쨌든 그런 EAS의 자동적인 대처가 좀 늦어진 것 같습니다. 한동안 설치던 영어 스팸 댓글 덕에 한동안 필수 플러그인이었던 "영어 환자"가 생각나네요. 텍스트큐브 홈페이지엔 이번엔 "후라이팬"이 나왔습니다 :)

그건 그렇고 스팸 댓글 덕에 댓글 수가 원래 있던 것의 네 배로 뛰더군요. 하하하...
사용자 삽입 이미지
사용자 삽입 이미지
좀비 컴퓨터를 썼을 것 같은데, 아무튼 어느 쪽이건 꼭 생각없는 것들이 문제 같습니다 :)

전혀 상관없지만, 왜인지 욕먹고 사과를 했어야 될 것 같은 티스토리 팀에 묵념.
이올린에 북마크하기(0) 이올린에 추천하기(0)

Posted by pequt

2008/03/13 19:29 2008/03/13 19:29
Response
A trackback , 2 Comments
RSS :
http://eyefocus.byus.net/tt/rss/response/321

스팸 코멘트 세기

"단어"를 세는 방법 : 코멘트나 URL에서 단어를 분류하고, 한 코멘트에서 두 번 넘게 나타나는 단어는 딱 한 번만 셉니다. "THANKS THANKS THANKS THANKS..." 이런 식으로 해놓은 걸 잘못 세면 곤란하니까요.

"BAD" 코멘트 : 237
"GOOD" 코멘트 : 66

코멘트 "단어" 조건 : 영어/숫자만. 비영어권 문자 및 많은 특수문자 미포함
URL "단어" 조건 : "http://" 제외

1. 코멘트
"BAD"에 나타난 코멘트 단어 : 72
"GOOD"에 나타난 코멘트 단어 : 59
양쪽에 나타난 단어 : 1 (FOR)

스팸 코멘트를 만든 사람도 별로 창의력은 없었는지 고작 단어가 72개로, 전부 일상적인 단어들 뿐입니다. 코멘트 내용이 천편일률이라고 해도 과언이 아니군요. 하긴 딱 보고 알아차리지 못하게 할 정도로 스팸 업자들이 바쁘진 않겠지만.

"GOOD"에 없는 "BAD" 상위 다섯 단어 : THE, THANKS, NOT, VERY, PROBLEM

2. URL
"BAD"에 나타난 URL 단어 : 581
"GOOD"에 나타난 URL 단어 : 31
양쪽에 나타난 URL 단어 : 3 (COM, NET, ORG)

코멘트와는 다르게 581개나 단어가 넘쳐나니 더 쓸모가 없어보이지만, 그러나 이용하기 괜찮은 사실이 하나 나타났습니다. "BAD"의 2위로 나타난 단어가 HTML인데, 제대로 된 코멘트에 "HTML"이 붙는 경우는 전혀 없었던 겁니다. 사람이 꽤 몰리는 인기 블로그에서도 코멘트에 붙은 홈페이지 URL에 HTML이 붙어있던 적은 없었던 걸로 기억합니다.

"GOOD"에 없는 "BAD" 상위 다섯 단어 : HTML, 5000MEGS, T35, SITESLED, ORGFREE

3. 결론
...그냥 코멘트 홈페이지 입력 부분에 HTML이 안 들어가게 하면 되지 않을까요(...)
이올린에 북마크하기

Posted by pequt

2006/07/10 23:48 2006/07/10 23:48
,
Response
No Trackback , 2 Comments
RSS :
http://eyefocus.byus.net/tt/rss/response/127

나이브 베이지안 필터링 테스트 (URL)

전제와 신뢰성


코멘트 URL 분석 후 토큰


토큰 분류 결과


임의의 정상 URL 테스트


스팸 URL 테스트


실험을 위해 php에다 코멘트를 몽땅 때려넣고, 파일 하나가 혼자서 북치고 장구치고 하는 식으로 만들어봤습니다.

인상적인 것은, 절대적으로 통계 자료가 부족한 상태임에도 불구하고 뻔한 단어(sitesled, 5000megs 등)가 들어있다 싶으면 여지없이 스팸일 확률이 뛰어버립니다. 대신 정상 URL을 스팸으로 판단한 것이 있어(jeremy zawodny com blog archives html 0.9966) 필터가 멋대로 지워버리기 전에 교육을 많이 시켜야할 필요가 있을 듯 합니다. 그에 따라 DB 처리 시간도 엄청나게 늘어날 것 같습니다-_-
이올린에 북마크하기

Posted by pequt

2006/06/04 14:12 2006/06/04 14:12
, , ,
Response
No Trackback , No Comment
RSS :
http://eyefocus.byus.net/tt/rss/response/96

그동안 찾아본 스팸과 필터 관련 내용

스팸 단어를 붙잡고 추가하는 것은 너무너무 귀찮고 힘든 일입니다. 이 글(http://crizin.net/tag/%EC%8A%A4%ED%8C%B8)을 보시면 스팸에 일치하는 단어들을 모아놓은 깨알같은 글자들이 있습니다. 어우.

1. 부분 문자열 검색의 한계
어디에나 기본적으로 있는, 부분 문자열 검색을 하는 필터링은 거의 소용이 없습니다. 잘 아시겠지만 똑같은 IP, 똑같은 이름이란 것은 거의 붙지 않고, 언젠가 뚫리기 마련입니다.

태터툴즈는 한국에서 주로 쓰고 달리는 것은 영어 스팸이 대부분입니다. 그러므로 영어만 있는 코멘트면 스팸이라는 전제로 만들어진 플러그인이 태터툴즈의 "영어환자"군요. 하지만 태터툴즈 내부에서 이걸 공개하면서 "세계화에 역행하는 황당한 플러그인"이라고 했으니... 그냥 꽉 막아두는 것이 능사는 아니죠.

2. 집단 지성 이용 - 1+1>2
워드프레스는 akismet이라 하여 아예 전용 서버로 코멘트나 트랙백 등을 보내서 스팸 평가를 하는 방안을 세운 것 같고(API 키를 받아야 하는게 귀찮은 문제) 태터툴즈에서도 이런 식의 스팸 대처법을 만들고 있는 듯 합니다. 다만 이것도 결국에는 조작이 가능해질 듯 합니다. 열심히 스팸 코멘트에다 대고 "이건 스팸 아님" 판정을 전송하는 광경을 상상해보세요.

이 방법은 당분간은 부담이 비교적 적은 방법이 될 것 같습니다.

3. 튜링 테스트 - 글을 보내는 너는 사람인가 컴퓨터인가?
회원 가입 같은 것에서 흔히 보이는 것인데 사람이라면 모니터의 그림을 보고 해당하는 글자를 입력할 수 있지만 컴퓨터는 그림을 해석할 방법이 전혀 없죠. 이런 식으로 코멘트 등에 추가 입력을 요구하는 방법입니다. 컴퓨터를 막아버리는 훌륭한 방안이지만, 아무래도 교류가 위축되는 느낌은 피할 수 없을 것 같네요.

4. Bayesian Filter - 스팸에 맞춰 진화하는 필터
스팸 해결 자체로는 궁극적인 방법이라고 봅니다. 스팸은 그 내용을 보여줘야만 하고, 내용도 뻔한 것이 많습니다. 대출, 담보, 영어회화, 비아그라... 같은 것이죠. 스팸을 자동으로 인식해낼 수만 있다면 문제는 끝나는 겁니다. 다만 부분 문자열 검색은 실패하고 말았죠.

스팸의 공통점은 그 뻔한 내용과 단어들입니다. 스팸에 자주 등장하는 단어들은 사람이 쓰는 일반적인 글에는 잘 등장하지 않습니다. 그리고 이건 감출 수 없는 스팸의 약점이죠. 이 통계학적인 약점(뻔한 단어들)과 간단한 공식을 활용한 알고리즘으로 폴 그레이엄씨는 이제 거의 스팸 격퇴 수준에 다다른 듯 합니다(http://paulgraham.com/spam.html).

다만 약점은 이 글을 보시면 알 수 있습니다(http://www.bsdforum.or.kr/viewtopic.php?t=33). 일단 처음엔 자료가 없기 때문에 교육을 집중적으로 시켜줘야 하고(이게 사용자에게 가장 큰 스트레스죠), 그나마 스팸을 판단하기 위해서 메시지 하나하나를 전체를 뒤져가면서 분석하고, 많은 수의 스팸 단어 DB를 뒤적거리고, 확률을 계산해야 작업이 끝납니다. 저 위의 세 가지 방법보다는 속도가 너무 느려지고 말 가능성이 높습니다.

메일이 아니라 더욱 짧은 코멘트의 경우엔 처리 속도는 별로 영향이 없지만 그 대신 잘못 판단할 확률이 크게 늘어나는 것 같아서 좀 그렇습니다. 하지만 한번 도전해볼만한 것 같습니다. 잘 정비된 이 방식의 필터를 뚫을 방법은 단 하나뿐입니다. 스팸의 주요 단어를 빼고 스팸 내용을 만들어야 하거든요(자세한 설명은 http://paulgraham.com/sofar.html).

초기의 통계 부족을 해소하려면 기본 통계치를 미리 제공하는 방법도 괜찮을 듯 합니다.
이올린에 북마크하기

Posted by pequt

2006/06/03 19:48 2006/06/03 19:48
,
Response
No Trackback , 4 Comments
RSS :
http://eyefocus.byus.net/tt/rss/response/95

태터툴즈 특정 리퍼러 무시 플러그인

마지막 업데이트 : 2006년 7월 18일
마지막 버전 : 0.220

다음 스팸으로 의심되는 리퍼러를 무시하도록 합니다.
- google.co.jp 검색인데 '+'가 지나치게 많이 들어있는 경우
- www.lands.co.kr, www.homes.co.kr (추가)

추가된 리퍼러는 악평이 늘어나는 듯 하여(네. 한동안 잠잠하다 곳곳에서 갑자기 이 글로 들어오시는 분이 늘어나고 코멘트까지 달렸거든요-_-;) 손을 봤습니다. 쓰지 않으실 분은 그냥 이전 버전을 쓰셔도 됩니다.

마구 쏟아지는 google.co.jp와는 달리 추가된 리퍼러는 제 사이트에 딱 한 번 모습을 드러냈기 때문에 테스트가 미흡할 수 있습니다. 수정할 사항을 적어주신다면 언제든지 환영합니다 :)

파일 : http://eyefocus.byus.net/RefererEater0220.zip

버전 0.211


사용 로그


버전 0.2

이올린에 북마크하기

Posted by pequt

2006/06/03 02:48 2006/06/03 02:48
, , ,
Response
2 Trackbacks , 4 Comments
RSS :
http://eyefocus.byus.net/tt/rss/response/94

한 마디
원래 예술이란 게 반이 사기입니다. 속이고 속는 거지요. 사기 중에서도 고등사기입니다. 대중을 얼떨떨하게 만드는 것이 예술이거든요.
백남준

블로그 이미지

새까만 까마귀, 하늘에서 눈을 빛낸다

- pequt

Notices

Archives

Site Stats

Total hits:
226703
Today:
135
Yesterday:
156