사이트 및 플랫폼에서 사용자 생성 스팸 방지하기
스팸 발송자는 종종 열린 댓글 양식과 기타 사용자 제작 콘텐츠 입력을 활용하여 무방비 상태의 피해 사이트에서 스팸 콘텐츠를 생성합니다. 호스팅 플랫폼에서도 부정 행위가 발생할 수 있습니다. 스팸 발송자는 Google의 스팸 정책을 위반하고 웹에 어떠한 가치도 기여하지 않는 다수의 사이트를 생성할 수 있습니다.
일반적인 경우 어렵지 않게 플랫폼이나 사이트에서 악용을 방지할 수 있습니다. 사용자가 속성과 상호작용하기 전에 특이한 과제를 완료하도록 하는 간단한 조치로도 스팸 발송자를 막을 수 있습니다.
사용자에게 해당 서비스에서 스팸을 허용하지 않는다는 사실을 알림
악용 사례에 대응하는 분명한 정책을 게시하고 사용자에게 알립니다(예: 가입 절차 중에 알림). 또한 신뢰할 수 있는 사용자가 속성에서 스팸으로 생각되는 콘텐츠를 신고할 수 있게 하세요.
스팸 계정 식별
플랫폼 가입 및 기타 사용자 상호작용을 기록하고 다음과 같은 일반적인 스팸 패턴을 파악합니다.
- 양식 작성 시간
- 동일한 IP 주소 범위에서 보낸 요청 건수
- 가입에 사용된 사용자 에이전트
- 가입 도중 선택된 사용자 이름 또는 기타 양식 제출 값
이러한 신호는 사용자 평가 시스템을 만드는 데 활용할 수 있고, 이를 통해 사용자 참여를 개선할 뿐만 아니라 스팸 발송자를 식별하는 데에도 도움이 됩니다. 많은 스팸 댓글 작성자가 검색엔진에 자신의 콘텐츠를 투입하고 싶어하므로 플랫폼에서 인지도가 없는 신규 사용자가 작성한 게시물에는 noindex
robots meta
태그를 추가하는 것을 고려해 보세요. 이후 시간이 경과하여 사용자에게 인지도가 생기면 해당 사용자의 콘텐츠 색인 생성을 허용하면 됩니다. 이렇게 하면 스팸 발송자가 플랫폼과 상호작용하는 것을 효과적으로 억제할 수 있습니다.
스팸 발송자는 사이트로 연결되는 링크를 남겨두는 경향이 있으므로 신뢰할 수 없는 콘텐츠의 모든 링크에 nofollow
또는 ugc
rel
속성을 추가하는 것이 좋습니다.
의심스러운 사용자 상호작용에 수동 승인 사용
특정 사용자 상호작용에 대한 수동 승인(또는 검토)을 통해 스팸 발송자가 스팸일 가능성이 있는 콘텐츠를 즉시 만들지 못하도록 차단할 수 있으므로 플랫폼에서 스팸을 상당히 줄일 수 있습니다. 사용자 상호작용을 검토하게 되면 일상적인 워크플로에 추가 업무가 발생하긴 하지만, 스팸을 없애는 매우 효과적인 방법입니다. 예를 들어 대부분의 CMS에서 댓글 검토 기능을 기본 제공한다는 점에서도 이러한 조치의 효과를 알 수 있습니다.
차단 목록을 사용하여 반복적인 스팸 전송 시도 방지
스팸 프로필을 하나 찾았다면 다른 스팸 프로필도 간단히 삭제하세요. 예를 들어 동일한 IP 주소에서 몇 개의 스팸 프로필이 전송된 것을 발견했다면 이 IP 주소를 영구 차단 목록에 추가합니다. CMS(예: WordPress)의 경우 Akismet와 같은 플러그인을 사용하는 것이 유용할 수 있지만, IP 주소를 방화벽의 거부 목록에 추가하는 방법도 매우 효과적일 수 있습니다.
자동 계정 생성 차단
가입 양식에서 reCAPTCHA 또는 유사한 인증 도구를 사용하여 사람이 직접 제출한 항목만 허용하고 자동 스크립트로 호스팅 서비스에 여러 사이트가 생성되지 않도록 하는 것이 좋습니다.
내 서비스에서 악용 사례 모니터링
-
호스팅 서비스에서 리디렉션, 대량 광고 섹션, 특정 스팸 키워드, 인코딩된 자바스크립트 코드의 대규모 섹션과 같은 스팸 신호를 모니터링합니다.
site:
검색 연산자 또는 Google 알리미를 사용하면 문제를 감지할 수 있습니다. - 웹 서버 로그 파일에서 트래픽이 급격하게 증가하지 않는지 확인합니다.
- 속성에 피싱이나 멀웨어에 감염된 페이지가 없는지 모니터링합니다. 예를 들어, Google Safe Browsing API를 사용하여 서비스의 URL을 정기적으로 테스트할 수 있습니다.
- 이상한 점이 없는지 몇 가지 사항을 확인해 봅니다. 예를 들어 주로 일본 사용자를 타겟팅하는 경우, 하룻밤 사이에 숙박 시설에서 이탈리아 IP를 통해 수천 건의 사용자 상호작용이 발생할 가능성이 얼마나 될까요? 다양한 도구(예: 언어 감지 라이브러리 또는 Google Translate API v2)를 사용하여 새로 만들어진 사이트의 언어를 감지할 수 있습니다.