오작동하는 로봇을 다루는 전술


9

규정상의 이유로 자동으로 색인을 생성하거나 검색 할 수없는 사이트가 있습니다. 즉, 모든 로봇을 멀리하고 사이트를 스파이더 링하지 않아야합니다.

분명히 우리는 처음부터 모든 것을 허용하지 않는 robots.txt 파일을 가지고 있습니다. 그러나 robots.txt 파일을 관찰하는 것은 로봇이 잘하는 행동입니다. 최근에 로봇의 동작이 좋지 않은 문제가있었습니다. 몇 가지 사용자 에이전트금지 하도록 Apache를 구성 했지만 그 문제를 해결하는 것은 매우 쉽습니다.

따라서 문제는 로봇과 같은 동작을 감지하고 응답하도록 Apache를 구성 할 수있는 방법이 있습니까? 다른 아이디어가 있습니까?

현재 내가 할 수있는 일은 로그를 수동으로 검사하여 IP 주소를 차단하는 것 뿐이며 이는 장기적으로 실행 가능한 전략이 아닙니다.


Apache 모듈 (mod_evasive 체크 아웃)에 대해 질문하고 솔루션에 일부 사용자 정의 로그 구문 분석 및 iptables 규칙이 포함될 수 있으므로 특정 봇 동작 차단에 대한 질문 이있는 경우이 주제가 ServerFault.com에 더 적합 할 수 있습니다 .
danlefree

답변:


7

방문시 봇의 사용자 에이전트 및 IP 주소를 캡처 한 후 이들 중 하나 또는 둘 다를 영구적으로 차단하는 .htaccess 파일에 추가하는 숨겨진 페이지에 링크 할 수 있습니다. 자동화되어 유지 관리를 위해 아무 것도 할 필요가 없습니다.


매우 일반적인 사용자 에이전트를 사용하는 경우 사용자 에이전트를 자동으로 잠그지 않으려는 경우 매우 흥미로운 아이디어입니다.
Kris

그런 다음 IP 주소를 사용합니다. 또한 I 주소를 사용하고 IP 블록에서 패턴을 볼 경우 개별 IP의 긴 목록을 유지 관리하는 대신 하나의 간단한 규칙으로 모든 주소를 쉽게 차단할 수 있습니다.
John Conde

3
당신은 할 수 있습니다 부담없이 귀하의 사이트를 크롤링 나쁜 로봇을 정지에서 설명 된 방법을 사용합니다. 그러나 1) 우회하는 것이 가능하다 (나쁜 봇들과 그들의 주인들은 허니팟을 식별하는 방법을 배우고 그것들을 피하는 방법을 알 수있다); 2)이 방법은 또한 잘못 행동하는 봇에 속하는 것으로 블랙리스트에 올린 IP가 재 할당 된 합법적 인 사용자 사용자를 차단할 수도 있습니다. 사이트에 색인을 생성하거나 자동으로 침착하지 않아야 하는 법적 또는 규제 적 의무가있는 경우 적절한 인증을 사용하고 인증 된 사용자에게만 액세스 권한을 부여 해야합니다 . 다른 모든 것은 안전하지 않습니다.
무료 Radical

좋은 생각. 그러나 그것을 구현하면 실수로 허니팟에 계속 타격을 가하고 내 사이트에서 계속 차단됩니다.
JW01

@ JW01 이것을 피하기 위해해야 ​​할 일은 이것을 다루는 페이지를 방문하지 않는 것입니다. 간단한 내용이 없기 때문에 간단합니다.
John Conde

2

Project Honeypot 의 IP 블랙리스트 와 인터페이스 하는 Apache 모듈 을 사용하여 다른 사람들이 잘못된 IP를 식별하는 작업을 피기 백 할 수 있습니다 . 이 작업을 대규모로 수행하는 경우 허니팟을 운영하는 것이 예의 바른 행동 일 것입니다.


내 사이트에 Project Honeypot의 IP 블랙리스트를 추가했을 때 놀랐습니다. 수년간의 고뇌는 단순히 악당을 막음으로써 끝났습니다. 검색 엔진 봇도 검색 할 수 있다고 생각합니다. 따라서 1을 더한 값입니다.
JW01

그러나 문제의 요점은 다음과 같습니다. 공개 페이지가있는 경우 색인이 생성 될 것으로 예상합니다. 따라서 어떤 종류의 인증이 필요합니다. Michael Hampton의 답변을 참조하십시오 .
JW01

2

Gisle Hannemyr 가 comment에서 언급 했듯이이 작업 을 수행하는 가장 좋은 방법은 모든 사용자의 로그인을 요구하고 로그인하지 않은 사람에게 제한된 컨텐츠를 제공하지 않는 것입니다.

어떤 이유로 로그인을 요구할 수없는 경우에도 여전히 사용할 수있는 몇 가지 폴 백이 있습니다 (면책 조항 : 둘 다 부분적으로 또는 완전히 내 잘못입니다).

  1. OWASP ModSecurity를 핵심 규칙 세트 봇 (예 : 꾀병의 사용자 에이전트 문자열) 브라우저로 자신을 위장하기위한 조치를 취한 경우에도, 자동화를 감지하도록 설계 규칙이수록되어 있습니다. VPS, 전용 서버 또는 그보다 큰 서버와 같은 서버를 완전히 제어 할 수있는 경우 이러한 규칙을 ModSecurity 와 함께 사용할 수 있습니다 .

    이 규칙 세트에는 다양한 부적절한 활동을 중지하기위한 다른 규칙도 포함되어 있습니다. 당신이 그것을 보지 않았다면, 당신은 분명히해야합니다.

  2. 서버를 완전히 제어하지 못하고 (즉, 공유 웹 호스팅을 사용하는 경우) 호스트가 자신의 ModSecurity 규칙을 사용할 수없는 경우 내 자신의 Bad 와 같은 응용 프로그램 수준에서 무언가를 시도 할 수 있습니다 행동 . 저는 2005 년에이 프로젝트를 시작하여 귀하와 관련된 블로그 스팸 및 콘텐츠 스크레이퍼와 싸웠습니다. PHP 기반 웹 사이트에 추가 할 수 있습니다.

    또한 많은 잘못된 동작 규칙이 ModSecurity 핵심 규칙 세트에 통합되어 있으므로 규칙을 사용하도록 설정 한 경우 두 규칙을 모두 실행하는 것이 다소 중복됩니다. 이러한 규칙은 핵심 규칙 세트에 잘못된 동작에서 비롯된 주석으로 표시됩니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.