>  기사  >  백엔드 개발  >  투표와 투표 브러싱에 대한 공격과 방어 - 투표 브러싱을 방지하는 방법

투표와 투표 브러싱에 대한 공격과 방어 - 투표 브러싱을 방지하는 방법

*文
*文원래의
2017-12-25 11:38:114890검색

프로젝트에서 투표는 매우 널리 사용되는 기능이며, 이로 인해 투표를 스와이핑하는 행위도 많이 발생합니다. 티켓 사기를 예방하는 방법은 매우 중요한 문제가 되었습니다. 이 기사는 티켓 사기 예방에 대한 몇 가지 아이디어를 공유함으로써 모든 사람에게 도움이 되기를 바랍니다.

1. IP 제한
이것은 가장 일반적으로 사용되며 가장 광범위하고 필수적인 티켓 브러싱 제한입니다. 그리고 토픽에는 사용자 모듈이 없기 때문에 이 방법이 거의 유일한 실행 가능한 방법이 되었습니다. 이 방법은 방문자가 IP 주소를 획득하여 일정 기간 내에 사용할 수 있는 티켓 수를 제한합니다. 물론, 평소 투표를 위해 페이지를 방문하는 방문자들은 확실히 이 방법으로 인해 제한을 받게 될 것입니다. 그러나 다양한 투표 활동과 특별한 주제, 그리고 푸짐한 경품으로 인해 어떤 사람들은 투표를 하려고 온갖 수단을 동원하게 됩니다.

ADSL 사용자는 연결을 끊고 다시 전화를 걸어 IP 주소를 변경할 수 있습니다.
프록시 접속을 사용하는 사용자의 실제 IP 주소를 얻을 수 없습니다.
우리가 모르는 티켓 브러싱 툴도 있습니다.
위 사항은 모두 저희가 극복할 수 없는 문제이며, 피씨방/인트라넷 사용자들에게도 이러한 설정은 불공평해 보일 것입니다.

2. 쿠키 확인
이 역시 인터넷에서 일반적으로 사용되는 방법이지만 클라이언트에서 제공되는 모든 정보와 콘텐츠는 신뢰할 수 없습니다. 쿠키의 원리에 익숙한 사람들은 쉽게 제한을 우회할 수 있습니다.

쿠키는 비활성화될 수 있습니다.
프록시 접속을 사용하는 사용자의 실제 IP 주소를 얻을 수 없습니다.
쿠키는 마음대로 삭제하고 수정할 수 있습니다.
3. 세션 확인
세션은 모든 방문자에게 고유한 세션 ID를 할당합니다. 이는 티켓 사기 방지에 어느 정도 효과가 있는 것으로 보입니다. 불행하게도 세션에는 치명적인 단점이 있습니다.

브라우저를 닫으면 세션이 삭제됩니다.
클라이언트가 쿠키를 비활성화하면 세션도 무효화됩니다.
4. 인증코드
등록, 로그인, 답장, 게시... 인증코드는 다양한 용도로 사용됩니다. 안타깝게도 구체적인 효과는 시간이 지날수록 일반 관광객의 투표가 더욱 어려워지고, 스와이핑 투표를 위한 인증코드에 대한 잦은 접속으로 인해 서버의 부담도 크게 가중되는 것으로 나타났습니다.

실행 가능한 일종의 인증 코드가 있습니다. Google에서 출시한 그래픽 인증 코드는 사용자가 사진을 올바른 방향으로 뒤집어 인증을 완료할 수 있도록 설계되었습니다. 이러한 인증 코드를 잘 우회할 수 있는 소프트웨어나 컴퓨터 작업은 거의 없을 것입니다. 그러나 단점은 구현하기가 매우 어렵다는 것입니다.

5. MAC 주소 제한
웹 프로그램으로는 실제 Mac 주소를 얻기가 어렵습니다(php/js로 실험했는데 Mac 주소를 성공적으로 얻지 못했습니다). 클라이언트의 Mac 주소를 읽을 때 레지스트리에 저장된 정보도 읽으며 수정도 가능합니다.

6. 사용자 모듈
이것은 매우 유용한 방법으로 간주됩니다. 투표를 위해서는 방문자마다 계정을 등록해야 하며, 계정ID 제한을 통해 투표가 제한될 수 있으며, 최초 등록된 사용자는 일정 기간 동안 투표에 참여할 수 없도록 제한될 수 있습니다. 또한, 등록된 사용자가 많이 유입되면 웹사이트의 트래픽도 증가할 수 있습니다. 그러나 소규모 사이트의 경우 네티즌들이 매우 번거로워 투표를 포기할 수 있으며 이로 인해 해당 사이트의 사용자를 잃을 수도 있습니다.

7. 행위 기록
사실 저희는 많은 티켓 사기 행위를 제한할 수 없습니다. 하지만 때로는 아주 잘 녹음할 수도 있습니다. 그리고 비정상적인 투표가 감지되면 자동으로 투표수가 올라가거나, 투표에 성공했다는 착각이 되돌아오는 등 투표 조작을 효과적으로 제한할 수도 있다.

단점은 너무 많은 데이터를 기록하면 서버에 많은 부담을 준다는 것입니다. 더욱이, 행위를 기록할 기록 지점이 충분하지 않고, 복잡하지 않은 경우에는 티켓 사기를 이용하는 전문 이용자에 의해 침투될 수도 있습니다.

8. 질문에 답하기
티켓 사기를 제한하기 위해 이 방법을 처음 사용했을 때 좋은 결과를 보고 매우 기뻤습니다. 불행하게도 문제은행의 용량이 충분하지 않을 경우, 문제의 내용과 답변이 곧 수집될 것입니다. 반대로 평소에 투표를 하던 유저들은 투표가 역겹고, 귀찮고, 역겹다고 느낄 것입니다. 점차적으로 우리는 버려졌습니다.

9. 무작위 투표 주소
이 방법을 사용하면 페이지를 방문하는 각 사용자가 이 KEY를 통해 투표 주소가 한 번만 생성되며 사용 후에는 유효하지 않습니다. .

안타깝게도 지정된 KEY의 내용에 대해서는 현재 sessionid+ip+random number로 생성된 MD5 코드를 사용하고 있는데, 위 내용에는 sessionid와 IP가 언급되어 있어 파기 및 변조될 수 있습니다. 이 방법은 IP 제한과 세션 제한이 유효하지 않은 경우 처절한 투쟁에 지나지 않습니다.

10. 정보 입력
투표 시 고유성 확인을 위해 신분증, 이름, 휴대폰 번호 등 본인임을 나타낼 수 있는 정보를 방문자가 입력하도록 하세요. 다만, 신분증의 형식을 알면 이름과 휴대전화번호를 원하는 대로 입력할 수 있으며 제한할 방법이 없습니다. 오히려 평소에 투표하는 사람들이 불편함을 느끼게 됩니다.

11. 투표 코드/번호 부여 시스템
투표하기 전에 사용자는 다른 페이지/이메일에서 고유한 투표 코드/볼륨을 얻어야 하며, 이 코드는 사용되면 무효화됩니다. 그런데 '사람'의 고유성을 어떻게 검증할 수 있나요? 메일함 수가 충분한 사용자가 있으면 무제한으로 투표 코드를 얻을 수 있나요?

그렇습니다! 따라서 이는 영구적인 해결책이 아닌 일시적인 해결책일 뿐입니다. 그러나 적어도 이 방법은 티켓을 교환하는 사람들을 귀찮게 만들 것입니다. 하지만 동시에 평소 투표하는 사람들도 불편함을 느낄 것이다. 그러나 표를 휩쓰는 정당을 그다지 만족스럽지 않게 만들 수 있다면 유용하다고 간주할 수 있습니다.

12. RMB 투표
호랑이야 이게 최고야 문자든 전화든 알리페이든 한 표에 1위안, 마음만 먹으면 당연히 투표하고 맘대로 스와이프해도 돼 나도 행복해, 아니. 결제 인터페이스의 조합을 통해 부정행위는 매우 어렵습니다.

그러나 결국 모든 지지자들이 돈을 갖고 있고 돈을 쓸 의향이 있는 것은 아닙니다. 좋은 작품은 '가난하다'고 해서 표를 얻지 못할 수도 있습니다. 추천!

알겠습니다. 위의 방법과 거의 같습니다. 한 네티즌의 원문을 인용하자면: “티켓 사기를 완전히 종식시키려면 기본적으로 사람에게 의지해야 합니다.”

소개:

플래시 투표인데 원리는 잘 모르겠어서 시간나면 테스트해보겠습니다.
플러그인. 웹 플러그인을 사용하려면 사용자가 다운로드하고 설치해야 하는데, 이는 일반 사용자에게 번거로울 수 있으며 타당성은 아직 연구 중입니다.
단시간에 여러 표를 받는 등 흥미로운 설정으로 인해 작품에 대해서는 투표 수가 감소할 수 있지만, 다른 작품에는 무효표가 되거나 반영될 가능성이 있습니다. 농장에서 '야채를 훔치는' 것과 비슷하게 투표를 기다릴 수 있습니다. 플레이 가능성을 조금 더 높일 수는 있지만 공정성은 보장할 수 없습니다.
요약: 개인적으로 현재 가장 효과적인 방법은 투표 부정 행위를 효과적으로 제한할 수 있는 RMB 투표라고 생각합니다.

관련 추천 :

php vote (survey)

php high 동시 경매

기사 게시 시스템(사용자 투표 시스템)을 구현한 php redis의 예에 대한 자세한 소개

위 내용은 투표와 투표 브러싱에 대한 공격과 방어 - 투표 브러싱을 방지하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.