2012-08-31 2 views
1

스팸 방지를 필요로하는 웹 양식을 구현하려고합니다. 나는 사용자 입력과 관련된 스팸 방지 기술을 피하고 싶다. Akismet과의 통합은이 상황에 대한 과잉이다 (스팸의 소량이 통과한다면 괜찮다). 또한 자바 스크립트를 사용하는 기술을 피하기를 원합니다. 다시 한 번 사용자 경험이 최우선 과제이며 자바 스크립트가없는 기기에서 사용자를 할인하고 싶지는 않습니다.스팸을 방지하기 위해 제안 된 허니팟 기술에 대한 피드백을 요청하십시오.

일반적으로 허니팟 양식 필드는 CSS로 숨겨져있어서 최종 사용자에게는 보이지 않지만 스팸봇으로 보입니다. 이상적으로 이것은 "name"이나 "email_address"와 같은 유혹적인 이름을 가져야합니다. 그러나 나는 이것들이 브라우저 (또는 다른 제 3 자) 양식 자동 완성 도구에 의해 채워질 수 있으므로 합법적 인 제출물을 스팸으로 식별 할 우려가있다.

자동 완성 도구가 무시할 양식 요소에 대해 생각해 봤지만 스팸봇이 사용하려고합니다. 체크 박스 입력이 가장 먼저 떠오른 사항이었습니다. "양식에 동의하십시오. & 조건"의 줄에 체크 박스가 포함 된 양식이 많습니다. 확실하게 spambots가 이것을 체크 표시하려고 할 것인가? 그래서, 아마도 숨겨진 확인란을 허용 해결책이 될 것입니다 : CSS없이

<div class="hidden"> 
    <label> 
    Are you not a human? 
    <input type="checkbox" name="accept_terms" value="1" /> 
    </label> 
</div> 

사용자가 높지 현장을 볼 수 있지만, 사용자의 아주 작은 비율 될 것, 그리고 레이블해야 상자에 체크 표시하면 안된다 고 설명하십시오.

비록 내가 대부분의 스팸봇이 체크 박스와 상호 작용하는지 잘 모르겠다. 이 기법이 효과가 있습니까?

참고 :이 기능은 다양한 스팸 방지 기술에 대한 토론을 유발하는 것이 아니라이 기술에 대한 피드백을 받기 위해서입니다.

감사합니다.

편집 : <div class="hidden"> 그냥 쉽게 .abc { display: none; }

+0

이와 관련된 질문은 다음과 같습니다 온라인 시험 양식을 넣고 스팸봇가 공격을 시도하기 위해 기다리는 것보다, 스팸 공격에 대해 다른 웹 양식을 테스트하기위한 강력한 방법이있다 ? – 6twenty

답변

0

는 솔직히 스팸 봇을 쓰는 사람이 숨겨진 필드와 상호 작용을 시도 할 생각하지 않는 한, <div class="abc"> 수 있습니다. 그들은 정상적인 브라우저를 사용하여 인간의 행동을 모방하려고 노력하고 있으며, "숨겨진"것을 보지 못합니다.

+0

스팸봇이 어떻게 숨겨 졌는지 알 수 있습니까? 숨겨 지거나 숨겨진 필드를 식별하기 위해 상당히 정교한 프로그램을 작성해야하는 것처럼 보입니다 (type = "hidden"제외). 또한이 기술은 모든 스팸봇을 차단할 필요가 없다는 것을 기억하십시오. – 6twenty

+0

나는 스팸 봇이 아니라 봇을 쓰고 있는데, 사용하는 소프트웨어를 사용하면로드 된 페이지를 분석 할 때 값이 "숨김"인 속성이있는 태그를 필터링하는 것이 매우 쉽습니다. – m4573r

+0

그건 쉽게 피할 수 있습니다. div의 클래스를 "abc"로 변경하고 스타일 시트에서'를 정의하십시오.abc {표시 : 없음; }' – 6twenty

0

나는이 방법을 직접 사용하지만 최근에 SpamBots가 현명하게 사용했습니다.

방금 ​​구현 한 다른 방법은 TIMER입니다. 그래서 최소한의 시간을 채우지 않으면 아마도 스팸봇 일 것입니다. 자동 필링을 위해 무언가를 사용하면 매우 빠르게 채울 수 있습니다. 그 방법은 어떻게 작동하는지 여기

는 다음과 같습니다 http://pageaffairs.com/notebook/contact-form-honeypots