Blog
XE 스팸공동대응 API 모듈가이드 [2/3]
2010.12.06 15:55
안녕하세요. XE개발팀입니다.
스팸공동대응 API를 이용하여 XE로 개발/운영된 사이트의 스팸성 게시글을 효과적으로 쉽게 설정하여 차단해주는 XE 스팸공동대응 API 모듈을 사용하시는데 조금이나마 도움이 되시길 바라며 포스팅합니다.
스팸 사전의 활용법을 알아봅시다.
스팸공동대응 API는 여러가지 필터를 이용하여 등록되는 게시글이 스팸인지 아닌지를 판단하는 오픈 API 서비스입니다.
현재 스팸공동대응 API에서 스팸을 처리하는 방법에는 크게 3가지가 있으며 그 3가지 모두 XE 스팸공동대응 API 모듈에서 설정하여 사용할 수 있습니다.
[2. 사전필터]
원리 : 사전에 등록된 단어를 참조하여 스팸성 게시글을 판별
사전필터는 사이트의 관리자분들이 운영하시는 사이트에 스팸성 게시글에 자주 출현하는 단어를 사전으로 등록하여 그 사전으로 게시글을 스팸으로 분류하는 기능을 가지고 있습니다.
스팸성 게시글에 자주 등장하는 단어의 경우 타 사이트에도 자주 등장하게 되는 성질을 이용하여 공동으로 스팸 사전을 구축하여 사용하고자 하는 취지를 가지고 있습니다.
1) 스팸 사전은 어떻게 동작하나요?
등록되는 게시글은 선택한 스팸사전을 참조하여 빠르고 정확하게 검색, 사전에 포함된 단어가 게시글에 존재하는지 체크합니다.
만약 게시글에 사전에 등록된 단어가 포함되어 있다면 사전필터는 스팸점수를 60점으로 책정하여 결과를 돌려줍니다.
사전필터의 경우 nScore 필터의 앞단에서 동작되며 nScore와 사전을 함께 사용할 경우 사전필터에서 먼저 검사 후 스팸으로 판단되면 다음 필터를 사용하지 않고 바로 스팸 지수를 사용자에게 돌려줍니다.
현재 필터 적용 우선 순위는 외국어스팸필터 -> 사전필터 -> nScore 필터 순으로 되어있습니다.
2) 어떤 단어가 사전에 등록되어 있는지 모르는데 어떻게 사용하죠?
사전의 내용을 자신이 등록한 사전만 볼 수 있게 한 이유는 abusing(악용)을 염두하였기 때문입니다. 사전이라는 것은 보안적인 측면이 강하기 때문에 공개가 될 경우 오히려 스팸성 게시글을 쉽게 게시할 수 있게 해주는 양날의 칼이 될 수 있습니다. 그리고 Closed Beta Service 기간에는 사전을 테스트용도로만 사용하였으며 실제 운영용도로 사용하지 않아 사전필터의 활용도가 높지 않았습니다. 이러한 이유로 사이트관리자분들이 사용하기에 유용한 방향성을 잡기가 쉬운 문제가 아니였습니다.
하지만 현재 계속적으로 여러 유형의 스팸필터가 추가되고 있으며 nScore의 성능을 사이트관리자분들의 자발적인 신고를 통한 학습에 의해 정확도를 높이고 있기 때문에 사이트관리자분들이 사전의 내용을 보고 원하는 사전을 이용하고 또는 공동으로 구축한 사전을 이용하여 효과적으로 스팸성 게시글을 차단할 수 있는 방향이 abusing이 조금 생기더라도 더 유용하리라 판단되었습니다. 이런 abusing에 의한 것은 다른 필터로 차단할 수 있기 때문입니다.
다음 번 XE 스팸공동대응 API 모듈 배포시에는 사이트관리자분들만이 사전의 내용을 볼 수 있는 기능을 추가할 예정이며 차후에는 스팸공동대응 API를 사용하기 위해서 다른 보안 요소를 부가하여 쉽게 abusing(악용) 당하지 않는 시스템으로 개발할 예정입니다.
다음 XE 스팸공동대응 API모듈 배포에서는 원하는 사전의 내용을 볼 수 있는 기능이 추가되어 사전의 공동 사용이라는 의미에 더 부합되도록 할 예정입니다.
3) 사전필터를 효과적으로 사용하기 위해 어떤 단어를 입력해서 사용해야 하나요?
사전필터의 경우 정확성이 높고 효과적이기는 하나 동시에 위험성이 큰 필터이기도 합니다. 일반적인 단어를 실수로 잘못 등록할 경우 사이트 이용자가 게시물을 등록할 때 스팸성 게시글로 분류될 가능성도 높기 때문입니다.
그렇기 때문에 스팸성 게시글에 포함된 핵심적이고 스팸성 게시글에만 나올만한 단어를 스팸사전에 등록해야 하며 그 방법을 예를 들어 설명드리겠습니다.
(아래이 예제는 모든 사이트에 동일하게 적용되지 않습니다. 각자의 사이트 성향에 맞게 설정할 필요성이 반드시 있습니다.)
예 1)
제목 : 여기에오늘 흥미로운 뉴스댓글 기가막힌다....
내용 : 여기에오늘 흥미로운 뉴스댓글 기가막힌다.... 들어가 봐라 참 어이가 없다. 국민이 보는 포탈 사이트에서 이렇게 까지 하다니 보면눈알이 돌아간다 다 뻣은 네이크드 미녀딜러랑 즐기세요 ㅡㅡ c ⒝ 1 7 * ⒩ ⒠ ⒯ ㅡㅡ
사전 등록할만한 단어 : "c ⒝ 1 7 * ⒩ ⒠ ⒯"
예 2)
제목 : 아무리 합법화 하엿다 하여도~
내용 : 아무리 합법화 하엿다 하여도~ 이렇케 국민이보는 일간지에 버젓이 이런 한심한 광고 기사 올려도 돼는거야~ 어이없구먼~퍼옴~ ㅡㅡ to.be/2CwRjPh
사전 등록할만한 단어 : "to.be/2CwRjPh"
예 3)
제목 : 뭐 이런 기사가 다 있어
내용 : 뭐 이런 기사가 다 있어 참 나원 어이없이 가지고 말이야 국민이 보는 포탈 사이트에서 이렇게 까지 하다니 보면 뒤골이 삑 돌아간다 M Z 5 9 . ⓝⓔⓣ
사전 등록할만한 단어 : "M Z 5 9 . ⓝⓔⓣ"
예 4)
제목 : 들어가 봐라 참 어이가 없다. 국민이 보는 포탈 사이트뭐
내용 : 뭐 이런 기사가 다 있어 참 나원 어이없이 가지고 말이야 국민이 보는 포탈 사이트에서 이렇게 까지 하다니 보면 뒤골이 삑 돌아간다 http://chosun100닷컴 댓글쓰기 신고하기 필수많이 들가보세요 들어가 봐라 참 어이가 없다. 국민이 보는 포탈 사이트 조선일보에서 이렇게 까지 하다니 보면 눈알이 돌아간다. ㅡㅡ http://chosun100.com ㅡㅡ
사전 등록할만한 단어 : "chosun100.com", "chosun100닷컴"
예 5)
제목 : ㅋㅌㅊ
내용 : 얼마나 국민들한테 신뢰를 주지 못하는 것인지 보여주는 단적인 예라고 지적했다. 아니...어쩌자고 이런 기사를 쓴대?지 혼자 보는것도 아니고 온 국민이 보는 중앙일보에서들가봐라 눈알이 돌아간다 j o i n s 3 닷 컴 아니...어쩌자고 이런 기사를 쓴대?지 혼자 보는것도 아니고 온 국민이 보는 중앙일보에서들가봐라 눈알이 돌아간다 j o i n s 3 닷 컴
사전 등록할만한 단어 : "j o i n s 3 닷 컴", "j o i n s 3"
예 6)
제목 : 바카라게임 바카라사이트 온라인정식카지노 전태수 청룡상 시상 중 ‘훌쩍’ 초보티 팍팍 “귀여워” 온라인바카라 황금성 다운로드http://toja.oo.ag 무료황금성http://toja.oo.ag
내용 : 국내 유일의 5천만원 이상도 즉시 출금이 가능한 확실한 자금력http://toja.oo.ag 클릭 인터넷 황금성게임으로 진행되니 어찌 아니 믿을 수가..http://toja.oo.ag 클릭 최고의 게임과 만나보세요..http://toja.oo.ag 클릭 이것이 대박이야. 인터넷 황금성게임!http://toja.oo.ag 클릭 로또, 복권 다 필요 없는 인터넷 황금성게임http://toja.oo.ag 클릭 대박을 원하신다면 꼭 방문해보세요.http://toja.oo.ag 클릭 지금 수많은 회원님들이 대박의 꿈을 이루고 계십니다.http://toja.oo.ag 클릭 무료게임 지원되니 우선 연습게임해보세요.http://toja.oo.ag 클릭 화상으로 여성 딜러의 딜링모습도 구경하시면서 재미있는 시간 되세요.http://toja.oo.ag 클릭 [뉴스엔 권수빈 기자] 배우 전태수가 처음으로 시상자로 나서 긴장한 모습을 보였다. 황금성 pc버전http://moi.0u.to,황금성 pc버전http://moi.0u.to,황금성 온라인게임http://moi.0u.to, 전태수는 11월 26일 서울 장충동 국립극장 대극장에서 열린 제31회 청룡영화상에 신인남우상 시상자로 나섰다. 황금성 릴게임http://moi.0u.to,황금성 다운로드http://moi.0u.to,무료황금성http://moi.0u.to,연기자로 변신한 남규리와 함께 등장한 전태수는 여유있는 표정과 말투로 멘트를 시작했다. 전태수는 시상식이 처음이라 너무 떨온라인황금성http://moi.0u.to,황금성 온라인게임http://moi.0u.to,황금성 소스http://moi.0u.to,리고 긴장이 많이 되는데 다행히 경험이 많은 누나가 3가지 정도 노하우를 알려줬다고 말했다. 남규리가 누나라면인터넷 황금성게임http://moi.0u.to,무료황금성http://moi.0u.to,황금성 다운로드http://moi.0u.to, 하지원씨를 말하는거냐. 뭐라고 말했냐고 묻자 전태수는 첫 번째는 화면에 잘 나올 수 있도록 엣지있는 의상, 두 번째는 항상 2번 온라인황금성http://moi.0u.to,무료황금성http://moi.0u.to,무료황금성http://moi.0u.to,카메라에 시선을 고정할 것이라고 약간 떨리는 목소리로 말했다. 신인다운 풋풋함에 배우 유선은 객석에서 지켜보며 웃음을 터뜨리기도 했다무료황금성http://moi.0u.to,황금성 소스http://moi.0u.to,릴게임 황금성http://moi.0u.to,. 이어 전태수는 세 번째는 수상자 이름을 틀리지 말고 정확히 발표한 것이라며 감기에 걸렸는지 중간 중간 콧물황금성 다운로드http://moi.0u.to,황금성게임http://moi.0u.to,황금성 소스http://moi.0u.to,을 훌쩍이며 말했다. 멘트에 이어 신인남우상 후보 영상이 나왔고 주인공 발표의 시간이 다가왔다. 긴장되는 상황이었황금성 릴게임http://moi.0u.to,황금성 다운http://moi.0u.to,황금성 릴게임http://moi.0u.to,지만 전태수가 훌쩍이는 소리가 마이크를 통해 들려 보는 이들을 웃음짓게 했다. 방송 후 네티즌들은 시상이 처음이릴게임 황금성http://moi.0u.to,황금성 다운로드http://moi.0u.to,황금성 온라인게임http://moi.0u.to,라더니 너무 귀엽다, 감기 걸렸나 보다, 안쓰럽다, 훌쩍태수 등극, 은근히 긴장한 모습 귀엽다 등 반응을 나타내며 폭소했다황금성 게임 다운로드http://moi.0u.to,황금성게임http://moi.0u.to,황금성 게임 다운로드http://moi.0u.to,. 권수빈 ppbn@newsen.com 기사제보 및 보도자료 newsen@newsen.com인터넷 황금성게임http://moi.0u.to,황금성 다운로드http://moi.0u.to,황금성 다운http://moi.0u.to, copyrightⓒ 뉴스엔. 무단전재 재배포 금지 황금성 게임 다운로드http://moi.0u.to,무료황금성http://moi.0u.to,황금성 소스http://moi.0u.to,
사전 등록할만한 단어 : "toja.oo.ag", "moi.0u.to", "무료황금성", "릴게임 황금성", "황금성 릴게임"
위와 같은 스팸성 게시글은 정상적인 글처럼 보일 수도 있지만 스팸성 게시글입니다. 정상적인 글 중간에 스팸성 단어 및 url을 첨가한 피싱성 스팸이라 할 수 있습니다.
이런 피싱성 스팸글은 본문을 분석하여 차단하기에는 힘든 부분이며 사전필터를 이용하여 효율적으로 차단할 수 있습니다.
여기서 주의해야할 점은 사전에 등록할 단어를 잘 선택해야 한다는 것입니다. 만약 "황금성", "릴게임", "카지노", "온라인", "무료게임" 등과 같은 짧은 단어를 사전으로 등록한다면 아래 예와 같은 댓글들도 차단되기 떄문에 문제가 발생할 가능성이 있습니다.
단어를 잘못 선택했을 시 발생되는 문제
예 1)
"황금성" 단어를 사전으로 등록
"이야 저 건물은 정말 황금성이라 불릴만 하네요"
"사랑한다면 정말 무엇이든지 다해주고 싶은게 남자 마음아닌가요? 황금성이든 다이아몬드로 만든 빗자루던지 다 해주고 싶은게 남자의 마음인데 여자들은 그걸 잘 모르나봐요.. 그래도? 안생겨요!!"
"우리 동네 짜장면집 황금성이란 곳이 있는데 진짜 맛있어요 그런데 거기에 카운터 아가씨가 정말 이뻐요 자주자주 가고 싶어요 ㅋ"
예 2)
"릴게임" 단어를 사전으로 등록
"릴게임이란게 무엇인가요? 이런 게임 만들면 돈을 좀 벌 수 있나요?"
"릴리리야 릴리리야 니나노 니나노 릴리리 맘보 릴게임 하면 이런 노래 나오나요, 이런 노래도 저작권에 걸리겠죠? 역시 릴게임은 불법이 맞아요"
예 3)
"카지노" 단어를 사전으로 등록
"대학진로를 카지노과로 갈려고하는데여 전 남자구요 1.서라벌대학 카지노과 경쟁률이 어떻게되나요?? 2.제가 전문계고인데 인문계에서 많이올까요?? 3.카지노과 들어갈려면 외국어를 어느정도 되야 들어갈수있나요? 아니면 가서 배우면되는건가요? 4.혹시 카지노과 말고 다른좋은과있음 추천좀요~ 5.면접은 어떻게 보면될까요 팁좀 주세요~"
"우리 경기대학교 사회교육원에서 4년제 학사학위 과정 호텔카지노경영학과가 신설되었습니다. 경기대학교 총장명의 학사학위를 취득하시면 대학원 진학이 가능하오니 학자의 길로도 나가실 수 있습니다. 2011학년도 신입생을 현재 수시/ 정시(12/6일~24일) 모집을 합니다."
예 4)
"온라인" 단어를 사전으로 등록
"온라인 게임 테라 오픈베타로 동적 100만을 눈앞에 엄청난 인기 몰이 중"
"전 보드게임을 주로 했는데 어느 순간 사회 분위기가 온라인 게임이 대세로 변해가더라구요 그래서 저도 온라인 게임을 시작해볼려고 해서 추천에 의해 시작한게 리니지1이였어요. 저는 한번 하면 끝을 보는 성격이라 밥먹으면서, 볼일 보면서도 미친듯이 했죠. 그 동안 모아놨던 장가갈돈 몇 억, 부모님이 물려주신 몇 억 다 들이부어서 게임에 몰두하였어요. 결국 아덴성에 성주가되어 평생 행복하게 잘 살았답니다. 여러분도 저처럼하면 성공할 수 있어요,,,, 그래도 여자친구는 안생겨요...제길"
예 5)
"무료게임" 단어를 사전으로 등록
"요즘 재미있는 무료게임 어떤게 있나요? 아이폰에 설치해서 여자친구 기다리는 동안 추운데 밖에서 떨면서 하고 싶은데 추위를 잊게 해줄 재미있는 무료게임 추천 좀 해주세요.
""저도 게임에 돈이 너무 많이 들어가서 이제 접었습니다. 물론 가끔씩 하지만 예전처럼 많이 하지는 않아요. 대신 무료온라인게임 찾아서 하고 있죠~!!!! 전 요새 최신 나온 게임 위주고 무료 온라인 게임 찾고 있었는데, 그랜드 판타지아 라고 일본에서 1위 먹은 게임을 발견했죠!!! 클베 때 했는데, 괜찮더이다~ㅎㅎ 시스템도 다양해요 무료게임인데도 말 이예요. 오늘 오픈 베타 하니깐 쭈~욱 해봐야겠지만,"
사전필터는 빠른 검색 알고리즘(사전 데이터)과 String Pattern Matching 알고리즘(문장 매칭)을 사용하여 개발하였으며 빠르게 매칭되는 문자열을 찾기 때문에 제일 좋은 방법은 짧은 한 단어를 스팸 사전에 등록하기 보단 스팸에 자주 등장하는 단어를 동일한 패턴으로 이어서 등록하는 것이 좋습니다.
확율적으로 스팸에서 등장하는 한 단어가 비 스팸성 글에서도 등장할 확율보다 스팸성 게시글의 연속된 단어가 비스팸에서 등장할 확율이 낮기 때문입니다.
"황금성" 이라는 단어보다 "릴게임 황금성", "릴게임황금성", "황금성릴게임", "무료황금성" 이라는 단어의 합성으로 사전에 등록하게 되면 정상적인 글에 등장할 확율은 현저히 낮게 됩니다.
"카지노"라는 단어 역시 한단어 보다는 "릴게임 황금성 카지노", "온라인정식카지노", "바카라카지노무료" 등의 단어의 합성으로 사용하는 것이 효율적입니다.
다음번에는 스팸공동대응 API의 외국어스팸필터의 기능에 대해서 알아보고 어떤식으로 사용하면 유용하게 사용할 수 있을지에 대해 알아보겠습니다.
함께 이용하고 함께 만들어가는 스팸공동대응 API로 깨끗한 인터넷 환경을 만들 수 있기를 바랍니다.
감사합니다.