2011-01-08 4 views
3

4chan에서 페이지를 너무 많이 새로 고침하면 (예 : 양식을 잘못 작성하는 등의 오류가 너무 많이 발생 함) - 사용자에게 recaptcha 페이지가 표시됩니다. 나는 이것이 어떻게 행해졌는지 궁금해하고있다. 의심스러운 행동을 결정하기 위해 알고리즘이나 무언가를 사용하고 있는가? PHP에서 사용 내역을 기록하는 방법은 무엇입니까 (즉, PHP에서이 작업을 수행하는 방법은 무엇입니까?).페이지 새로 고침이 너무 많습니다.

세션을 올바르게 사용하거나 IP 주소 (동적 IP로 인한 것 같지 않음)를 사용하여 데이터베이스에 저장합니다.

답변

2

세션을 사용하여 누군가가 마지막으로 방문한 페이지가 무엇이고 현재 페이지와 동일한 지 추적 할 수 있습니다. 그런 다음 카운터를 증가시켜 같은 페이지를 연속적으로 조회 한 횟수를 확인하고 너무 자주 방문한 경우 리디렉션 할 수 있습니다. 타임 스탬프를 추가하여 페이지를 마지막으로 방문한 지 얼마되지 않은지 확인할 수 있습니다. 그러면 새로 고침 버튼을 눌렀을 때 약간의 차이가 있습니다.

1

$ _SESSION []을 사용하면 데이터베이스를 저장하는 것보다 효과적 일 것입니다. 브라우저 창을 닫으면 세션이 지워집니다.

+2

누군가가 사이트를 공격 할 때마다 데이터베이스를 공격하고 싶지 않습니다. 피할 수 있으면 거부 할 수 있습니다. 이는 서비스 거부 벡터입니다. 여기에서 천천히 노력하고있는 것들 중 하나입니다. – Rob

관련 문제