문제

이제 여러 가지 방법으로 받아들일 수 있는 주제가 있습니다.내 문제를 설명하고 제안을 받기 시작할 때 난독화를 해제할 수 있기를 바랍니다.

기존 사이트를 대체할 사이트를 개발 중입니다.역사적으로 우리가 겪었던 문제 중 하나는 스파이더 봇이 들어와 모든 콘텐츠를 빨아들이는 것입니다.이제 우리는 콘텐츠가 다운로드되는 것에 신경 쓰지 않습니다.사실 우리는 이를 기쁘게 생각합니다. 그러나 일부 대량 다운로더 및 다운로드 가속기는 현재 사이트에 문제가 있는 것으로 나타났습니다.

내가 찾고 있는 것은 거의 가장 먼저 실행되는 PHP의 시작 부분에 있는 것입니다.페이지 요청(IP, 리퍼러, 요청 URI, 쿠키, 세션 ID 등)의 지문을 가져와서 ...무언가에 전달합니다.그런 다음 그 무언가는 마지막 1~3초 동안의 지문과 지문을 비교합니다.그런 다음 요청에 대해 수행할 작업을 미리 구성된 일부 임계값에 따라 메시지를 반환합니다.

일부 임계값은 다음과 같습니다.

  • 사용자가 지난 0.n초 동안 > x 페이지를 요청했습니다.
  • 사용자가 < 0.n초 내에 동일한 페이지를 요청했습니다.
  • 사용자가 지난 n초 동안 동일한 데이터를 양식에 제출했습니다.

그래서 제가 꽤 좁은 창문을 보고 있는 것을 알 수 있습니다.그러한 것을 탐지하는 것이 가능합니까?일종의 파일이나 DB 데이터 소스로 이를 수행할 수 있습니까?페이지 로드 사이에 지문을 저장하는 데 사용하는 것은 대부분의 데이터가 1~2초 동안 유지되므로 많은 이탈을 경험할 것입니다.임계값을 확인하기 위해 아파치 로그를 구문 분석하는 것이 있어야 합니까?스크립트에서 호출할 수 있는 메모리에 1~2초 동안 데이터를 보관하는 일종의 외부 데몬을 찾아야 합니까?아파치에 이 문제를 처리할 수 있는 것이 있습니까? 이 문제를 처리하려면 서버 담당자에게 문의해야 합니까?

이것이 PHP 또는 외부 데몬에서 수행할 수 있는 작업이라고 가정하면 임계값을 벗어난 동작에 어떻게 응답합니까?내 직감은 408이나 503과 같은 HTTP 응답이라고 말하지만 내 직감은 종종 틀립니다.고객에게 잠시 물러서라고 말하려면 어떻게 해야 합니까?일종의 "와우!" 페이지인가요?

도움이 되었습니까?

해결책

노력하다 PEAR::HTTP_Floodcontrol 그리고 모드_보안 그리고 실패2금지.

다른 팁

그렇지 않으면 가지다 소프트웨어 솔루션을 갖고 싶다면 이를 처리하도록 라우터/방화벽을 프로그래밍해 보는 것은 어떨까요?DOS 공격(또는 이에 상응하는 공격)을 필터링하는 것이 그 목적의 일부입니다.

mod_evasive를 사용해 보세요

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top