2010-04-19 4 views
2

나는 스패머가 컬을 사용하여 내 사이트에 특정 등록 페이지를 다운로드하고있을 것이라고 읽었습니다. 특정 페이지가 htaccess 또는 다른 방법을 통해 CURL되는 것을 차단할 수있는 방법이 있습니까?특정 페이지의 말림을 어떻게 차단합니까?

+3

이전 질문을 읽고 올바른 대답을 수락하면 좋을 것입니다. –

+0

죄송합니다. 에티켓에 익숙하지 않았습니다. 그래서 나는 다음에 그렇게 할 것입니다. – 55skidoo

+0

6 개 중 4 개 질문에 대해 즉각적으로 회신하며 2 회는 만족스런 답변을 얻지 못했고 2 회는 나 자신에게 대답하는 것을 끝내 었습니다. (정답을 알 수있는 의견을 통해 힌트를 얻었으며 최선을 다해 "감사합니다. "코멘트 란에 – 55skidoo

답변

1

curl이 사용자 에이전트, 쿠키 등을 보낼 수있는 기능을 가지고 있기 때문에 컬을 차단하는 것이 불가능하다고 생각합니다. 이해한다면 정상적인 사용자를 완전히 에뮬레이션 할 수 있습니다.

양식 보호가 걱정되면 양식 제출시 자동으로 제출되는 임의의 토큰을 생성 할 수 있습니다. 그런 식으로 등록을 자동화하는 스크립트를 만들려고 시도하는 사람은 먼저 스크립트를 긁는 것에 대해 걱정해야합니다.

+0

이미 생성 된 임의의 토큰이 있습니다. 그래도 고마워. – 55skidoo

0

Oren에 따르면 스패머는 사용자 에이전트를 위조 할 수 있기 때문에 사용자 에이전트 문자열을 차단할 수 없습니다. 여기서 전형적인 해결책은 일종의 CATPCHA입니다. 이들은 흔히 뒤죽박죽 된 이미지 (비 시각적 인 형태가 존재 함)이지만 (StackOverflow 포함) 사이트는 당신이 인간임을 증명하기 위해 필사적으로 사용합니다.

+0

보안 문자를 인식하고 있지만 원칙적으로이를 피하려고합니다. 스패머는 사용자가 더 어려워서는 안됩니다. 이상주의, 알아! 관리자 사이트에서 지혜는 잘못 들었을 수도 있습니다. 처음에는 "말림"을 포함하는 htaccess 문을 작성하여 차단할 수 있습니다. 아마도 webmasterworld.com의이 비트처럼 : RewriteCond % {HTTP_USER_AGENT}^(curl|Dart? CommunicationsxEnfish | htdig | Java | larbin) [NC, OR] - 나는 htaccess를 말하지 않습니다. – 55skidoo

+0

55skidoo, 내가 말했듯이 알려진 사용자 에이전트 차단은 시간 낭비라고 생각합니다. 이것은 스패머가 변경할 수있는 간단한 구성 옵션입니다. –

+0

오케이, 오해해서 죄송합니다. 따라서 본질적으로 "HTTP 요청이 'curl ...'으로 시작되고 등록 URL이 포함 된 경우 액세스를 허용하지 않는 htaccess 문을 작성하는 방법은 없습니다." 이 질문은 아마 htaccess에 대한 나의 무지를 배신합니다. – 55skidoo

1

CURL에는 약점이 있습니다.이를 이용하면 브라우저처럼 자바 스크립트를 실행할 수 없습니다. 그래서 당신은이 사실을 활용할 수 있습니다. reg 페이지에 처음 착륙했습니다. 서버 사이드 코드에서 쿠키를 확인하십시오. 브라우저에 자바 스크립트 코드를 보내면이 코드는 쿠키를 설정하고 리디렉션을 수행합니다/reload ... 서버 측을 다시로드 한 후 쿠키를 확인하고 브라우저를 발견하면 찾을 것입니다. 쿠키 생성을 말아서 처음부터 다시로드/리디렉션하지 마십시오.

나는 컬과 브라우저를 구별하기 위해 자바 스크립트를 사용한다.

관련 문제